Changes

Jump to navigation Jump to search
351 bytes added ,  12:53, 13 March 2019
no edit summary
==Introduction==
XML documents often rely on Document Type Definitions (DTDs). While parsing a document with BaseX, entities Entities can be resolved with respect to that particular DTD. By default, the DTD is only used for entity resolution.
XHTML, for example, defines its doctype via the following line:
Fetching <code>xhtml1-strict.dtd</code> obviously involves network traffic. When dealing with single files, this may seem tolerable, but importing large collections benefits from caching these resources. Depending on the remote server, you will experience significant speed improvements when caching DTDs locally.
 
To address these issues, the [https://www.oasis-open.org/committees/download.php/14809/xml-catalogs.html XML Catalogs Standard] defines an entity catalog that maps both external identifiers and arbitrary URI references to URI references.
==Usage==
===GUI Mode===
When running BaseX in GUI mode, simply enable DTD parsing and provide the path to your XML Catalog file in the ''Parsing'' Tab of the Database Creation Dialog.
===Console & Server Mode===
To enable Entity Resolving in Console Mode, enable the {{Option|DTD}} option and assign the path to your XML catalog file to the {{Option|CATFILE}} option. All subsequent commands for adding documents will use the specified catalog file to resolve entities.
The '''paths''' Paths to your catalog file and the actual DTDs are either absolute or relative to the ''current working directory''. When using BaseX in client-server mode, this is relative to they are resolved against the working directory of the ''server''.
===Additional Notes===
Entity resolving only works if the [[Parsers#XML Parsers|internal XML parser]] is switched off (which is the default case).
If you use the internal parser, you can manually specify whether you want to parse DTDs and entities or not.
The runtime properties of the catalog resolver can be changed by setting system properties, or adding a ''CatalogManager.properties'' file to the classpath (see . By default, and if the system property {{Code|xml.catalog.ignoreMissing}} is not assigned, no warnings will be output to standard error if the properties file or resources linked from that file are not found. See [https://xerces.apache.org/xml-commons/components/resolver/resolver-article.html#ctrlresolver Controlling the Catalog Resolver] for more information).
==Links==
* [https://www.oasis-open.org/committees/download.php/14809/xml-catalogs.html XML Catalogs. OASIS Standard, Version 1.1. 07-October-2005]
* [http://en.wikipedia.org/wiki/Document_Type_Definition Wikipedia on Document Type Definitions]
* [http://xml.apache.org/commons/components/resolver/resolver-article.html Apache XML Commons Article on Entity Resolving]
* [http://java.sun.com/webservices/docs/1.6/jaxb/catalog.html XML Entity and URI Resolvers], Sun
* [http://www.oasis-open.org/committees/download.php/14810/xml-catalogs.pdf XML Catalogs. OASIS Standard, Version 1.1. 07-October-2005.]
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu