
Hello, If the collection query does not specify an XML catalog enabled XML parser as the "parser" parameter then Saxon 8 uses the default JAXP XMLReader implementation for parsing the collection files which is usually not catalog enabled. In order to use the XML catalog set in the oXygen preferences you have to specify the class name ro.sync.xml.parser.CatalogEnabledXMLReader in your query: let $docs := collection(iri-to-uri("mydocsdir?recurse=yes;select=*.xml;parser=ro.sync.xml.parser.CatalogEnabledXMLReader")) Regards, Sorin Eliot Kimber wrote:
I'm trying to use Saxon through Oxygen to query documents that require a catalog for DTD resolution (the DTD system ID is an absolute URI that isn't a real location).
I've configured Oxygen's catalog setup to use my catalogs and that works fine.
When I try to doc a query like this:
Let $docs := collection(iri-to-uri("mydocsdir&recurse=yes;select=*.xml"))
I get a "404 Not Found for: {URI of DTD}
I didn't see any obvious option for specifying the catalog. Since I'm using Saxon's built-in catalog resolver I'm not sure what to do to make it work with my catalogs.
Thanks,
Eliot