GNOME Bugzilla – Bug 125266
libxml should use nXML mechanism for locating RelaxNG schemas
Last modified: 2021-07-05 13:21:58 UTC
The Relax NG schema language doesn't define a standard way for associating an XML document with a Relax NG schema. A bit of the reasoning behind this, can be found here: http://www.thaiopensource.com/relaxng/design.html#section:17 For his Emacs XML mode, nXML, James Clark plans to implement association between document and schema, in the manner described in this email: http://groups.yahoo.com/group/emacs-nxml-mode/message/259 The email describes an XML format that can be used to locate schemas for documents, in a myriad ways. The XML format can be chained in the same way as OASIS catalogs, and OASIS XML Catalogs, so a similar structure to what the debian policy document describes for DTDs, can be adopted for locating Relax NG schemas. libxml should use this mechanism for applying RelaxNG schemas to documents.
I've added the Conglomerate bugtracking mailing list to the cc as this may be highly relevant for Conglomerate.
Hi Here's what I use, it's simple and works well: <language-list xmlns="http://www.pinkjuice.com/language/list/" version="0.1"> <language> <identity> local-name(/*)='svg' and /*/@version='1.1' and /*/@baseProfile='tiny' and namespace-uri(/*)='http://www.w3.org/2000/svg' </identity> <local-schema> /home/tobi/bulk/xml/schemas/svg/1_1/rng/svg11-tiny.rng </local-schema> </language> <!-- ... --> $ xval 1_1_tiny.svg 1_1_tiny.svg validates xval: schema was /home/tobi/bulk/xml/schemas/svg/1_1/rng/svg11-tiny.rng $ xval simple.xslt simple.xslt validates xval: schema was /home/tobi/bulk/xml/schemas/xslt/1_0/rng/xslt.rng $ xval language_list.xml language_list.xml validates xval: schema was /home/tobi/data/xml/schemas/language_list/0_1/rng/language_list_0_1.rng Tobi
If this mechanism is implemented, I think it would be useful if the mechanism could be used to associate more than RNG schemas with loaded documents. An example of another association, is the XDS display descriptions, used by the conglomerate XML editor. See www.conglomerate.org for more info.
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/libxml2/-/issues/ Thank you for your understanding and your help.