Last Comment Bug 98413 - (xmlcatalog) Implement XML Catalogs
: Implement XML Catalogs
Status: NEW
: perf
Product: Core
Classification: Components
Component: XML (show other bugs)
: Trunk
: All All
-- enhancement with 22 votes (vote)
: Future
Assigned To: Heikki Toivonen (remove -bugzilla when emailing directly)
: Andrew Overholt [:overholt]
Depends on:
Blocks: entityrc entities
  Show dependency treegraph
Reported: 2001-09-05 14:57 PDT by Heikki Toivonen (remove -bugzilla when emailing directly)
Modified: 2011-08-26 21:47 PDT (History)
20 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Description User image Heikki Toivonen (remove -bugzilla when emailing directly) 2001-09-05 14:57:03 PDT
The XML Catalogs is an OASIS committee specification, basically an "SGML Catalog
for XML". Simplified, a catalog's function is to map public identifiers to
system identifiers.

The specification was developed under the Entity Resolution committee:

The actual specification is at (Aug 6 2001):

Currently there are at least five tools that support this specification ranging
from gnome-xml to Sun's Java Resolver classes and some Perl modules.
Implementing this specification would allow us to easily add support for some
well-known DTDs (based on their public identifiers) by placing the DTDs locally
into dtd or chrome directory (we read external DTDs if they are there). This is
also a performance issue: if a match is found in the XML Catalog and we can load
the DTD from a local file, we do not need to load it from the web.
Comment 1 User image Axel Hecht 2003-04-09 08:23:06 PDT
xpinstall packages should be able to register new catalogs.
Any idea how this could happen?
The spec notes that catalogs are linked with some next-catalog entry, which would
require a new catalog to modify the currently last one. That doesn't sound right.
We have global and user installed packages, too.
Comment 2 User image Frans Englich 2005-04-04 04:54:59 PDT
I have some additional information  
* KDE have an OASIS XML Catalog implementation which perhaps could be used in  
Mozilla et al. It's written in C++ with stl-like data/container classes(the  
Qt/KDE libraries), synchronous file loading(due to API designs), written  
against a referenced counted DOM implementation(small usages of DOM 3 core), is  
documented, debugged, and licensed under GNU LGPL. sloccount says it's about  
2500 lines of code. I can't tell whether integration work would be more than  
writing a stack from scratch, but it's far from impossible. The implementation  
can be found in:  
* In relation to KDE's implementation, was a test suite brought into the light.  
It is quite good, and has currently 42 tests. Licensed under MIT license. It  
can be found at:  
I'm author and maintainer of the implementation, and co-author and maintainer  
of the test suite, so feel free to contact me.  

Note You need to log in before you can comment on or make changes to this bug.