Who We Are
The xqDoc Schema was designed to store information about XQuery library and main modules in a vendor neutral format.
For XQuery library and main modules, XML adhering to this schema can be generated from the provided xqDoc conversion package.
For proprietary XQuery library modules offered by vendors (often written in a different language other than XQuery) the xqDoc Schema
is once again a neutral format for storing information about these library modules. For example,
we have translated the W3C XPath F&O (represented as XHTML) into the neutral xqDoc XML format with some scripts.
By normalizing documentation to a single neutral format (and storing the resultant XML in a XML database or filesystem) it then
becomes possible to use the provided xqDoc XQuery presentation functions to generate the resultant XHTML.
The xqDoc schema is divided into the five following sections. The schema is well docmented and is available here.
This section contains information about the xqDoc conversion package version (and date) when
the xqDoc XML was generated. For xqDoc XML created from proprietary sources (i.e. not from user-defined
library or main modules) which did not use the xqDoc conversion program, then the version would likely contain 'N/A'.
This section defines the module xqDoc URI, the type of module ('library' or 'main') and xqDoc comments associated with the module.
In addition, the entire source code associated with the module is stored. The module xqDoc URI listed in this
section is used extensively by the scripts for cross-reference linking. The base-uri value for the document
when stored into the XML database can be different from this value ... although, as a general rule these values will normally be the same.
This section defines the imported modules and any xqDoc comments associated with the imports.
This section defines the global variables and any xqDoc comments associated with the imports.
This section defines each of the functions contained within the library or main module and any xqDoc comments
associated with the functions. Any 'invoked' functions associated with this function should also
be defined as well as referenced global variables. For main modules, it will also include the QueryBody XQuery
expression under the default function name of 'xqDoc-main'. In addition, the source code associated with each
function is stored.