Download XML Schemas in the Context of XBRL

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Efficient Querying and Manageability of XML Schemas for XBRL
Short Abstract
XBRL poses many challenges to any XML processing system that aims to support XBRL
processing. One of the main challenges posed by XBRL is the management and querying
of XML schemas. XML schemas are used by XBRL to define concepts, which can be
viewed as entities in the relational database sense, and to specify the taxonomy.
Taxonomy consists of a set of linkbase documents, which identify the relationships
among various concepts. Since concepts are specified through XML schemas, any XML
system that ingests XML schemas should support efficient querying over them. Also, any
XML system that ingests XML schemas should also provide easy ways to ingest
taxonomy information specified in linkbase documents referred to by a DTS
(Discoverable Taxonomy Set) schema. Oracle XML DB has supported the XML Schema
standard for a number of years, and offers unique features that support efficient querying
and management of XML schemas. XML Schemas are fully integrated into the XML DB
repository, which allows a URL based access, fine-grained access control, and easy
enforcement of file system referential integrity. This presentation highlights some of
these advantages of using Oracle XML DB for XBRL processing, and presents some of
the challenges that need to be addressed in Oracle XML DB to fully support XBRL in an
enterprise-scale database.
Long Abstract
One of the main challenges posed by XBRL is the management and querying of XML
schemas. XML schemas are used by XBRL to define concepts, which can be viewed as
entities in the relational database sense, and to specify the taxonomy. Taxonomy consists
of a set of linkbase documents, which identify the relationships among various concepts.
Since concepts are specified through XML schemas, any XML system that ingests XML
schemas should support efficient querying over them. Also, any XML system that ingests
XML schemas should also provide easy ways to manage a DTS (Discoverable Taxonomy
Set) schema and the taxonomy information specified in linkbase documents referred to by
the schema.
Oracle XML DB supports the XML Schema standard, and offers unique features that
support efficient querying and management of XML schemas. XML Schemas can be
registered with XML DB through a process called schema compilation. Schema
compilation validates the input XML schema document, navigates references between
various schema entities (complex types, elements, groups, etc.) and saves the compiled
XML schema to catalog tables in Oracle XML DB. References may be implicit in the
XML structure (an element that has a complex type as its child) or may be explicitly
specified (an element refers to a global element in an included schema through a QName
reference). XML Schemas may be brought in scope within another XML schema through
include or import references. References navigated during schema compilation are
persisted within the compiled XML Schema document in XML DB catalog tables as
XML. For example, a common XBRL query to find all members of a substitution group
can be done very efficiently by querying these persistent references in catalog tables. In
our view, an XML Schema specifies a graph-like relationship structure among schema
components, such as elements, complex types, substitution groups, etc. The process of
compilation generates the “edge” information in this graph by navigating both implicit
and explicit references that link various schema components.
XML Schemas registered with Oracle XML DB are fully integrated with the XML DB
repository, which offers a file system interface within the database. They can be accessed
through the familiar file system URL (or path) paradigm, either through SQL, or through
protocols such as FTP, WebDAV. The SQL interface to the repository allows full
document retrieval, and the retrieval of specific document fragments of interest to the
user. SQL queries on the repository can use familiar languages such as SQL/XML and
XQuery, and they can span the entire folder hierarchy or be directed to a small sub-tree
within the hierarchy. Familiar file system attributes such as Creation Time, can be
queried efficiently through query rewrite and index technologies. Access Control Lists
specified on a file or folder, provide fine-grained control of access to XML schemas and
linkbase documents. The repository also supports events, which are trigger-like
mechanisms that execute custom PL/SQL or Java code based on operations on the
repository. Since XML Schemas are integrated with the repository, events can be used to
enforce referential integrity constraints between a DTS schema and its associated
linkbase documents. The integrity constraint check can, for example, ensure that neither a
DTS schema nor one of its linkbase documents is deleted without the other being deleted.
This greatly simplifies management of XBRL taxonomies.
Folders within the Oracle XML DB repository can be constrained to only contain
documents of a particular XML Schema. Queries on a constrained folder can seamlessly
be query rewritten to the underlying tables in which the documents of the XML Schema
are stored, thereby providing optimal index access path to these documents. Linkbase
documents can be created under such constrained folders, thereby improving queries over
them. Linkbase documents can be stored in a compact XML Schema aware format. The
use of XML Schema information reduces the disk footprint of linkbase documents, and
improves performance of queries and index maintenance operations on them. Oracle
XML DB can also automatically perform automatic XML Schema validation (not XBRL
validation) of linkbase documents at load time. In the rare case of a linkbase document
being updated, XML Schema validation can be done at a fine granularity in a piece-wise
manner.
In order to address the functional requirements of XBRL and the overall user experience
of an XBRL partner or customer in the context of XML Schemas, several challenges
need to be addressed by Oracle XML DB. The registration of a DTS (Discoverable
Taxonomy Set) schema should load its associated linkbase documents into the database.
This improves manageability of a DTS schema and the overall user experience. The
association between a DTS schema and its linkbase documents should automatically
enforce referential integrity constraints on the linkbase documents. Common XBRL
queries on XML Schemas are expressible in SQL/XML and XQuery, but this requires
knowledge of the XML Schema standard. In addition, such queries are unwieldy to write
and not easy to query rewrite to take advantage of low-level table and/or index structures.
Common XBRL queries on XML Schemas should be provided as Xquery functions,
which seamlessly should be query rewritten to take advantage of persistent references
generated by the XML DB XML Schema compilation process. Operators and their
rewrite will greatly improve the user experience and query performance. In the context of
XBRL taxonomy versioning, the question of whether to support XML Schema versioning
in Oracle XML DB should be re-visited.
This presentation aims to highlight the key features of Oracle XML DB with respect to
XML schemas that allow for their efficient querying and management in the context of
XBRL. It also aims to present some of the XML schema specific challenges that need to
be addressed for XBRL. We believe that with the current XML Schema infrastructure
already in place within Oracle XML DB and validated by our partners and customers, we
are in a unique position to overcome any challenges that we foresee and are poised to
provide an enterprise-scale solution for XBRL.