Benötigtes Feature: Kontextabhängiges Laden von XML-Schemas (identischer Namespace)

Seit der letzten Überarbeitung werden nun (fast) alle Namespaces geprüft und nicht mehr ungefragt nachgeladen. Das gilt auch für XML (http://www.w3.org/XML/1998/namespace) und XLink (http://www.w3.org/1999/xlink), die nun in den Katalog aufgenommen werden müssen, um keine Validierungsfehler auszulösen.

Problem
Die LoC definiert ihr eigenes METS XLink V.2 XML Schema und nutzt es in METS, MODS und Alto. Es unterscheidet sich inhaltlich (andere Attribute und Attributgruppen), hat aber den gleichen Namespace wie die W3C XLink 1.1 Variante. Der Katalog lässt aktuell nur 1 XML Schema pro Namespace zu. METS, MODS und Alto XML Dateien sind nur valide, wenn METS XLink geladen wird, andere Schemas (wie GML) benötigen dagegen das W3C XLink.

Ein Ansatz könnte sein, je nach

  1. Namespace des Wurzelknoten und/oder
  2. schemaLocation URL (falls angegeben) ähnlich systemIDs bei DTDs

die jeweils korrekte xlink.xsd auszuwählen.
Die Konfigurationsdatei des Katalogs müsste das entsprechend auch nachrüsten und die Angabe unterstützen.

Ein anderer Ansatz könnte ein Versuch sein, die verschiedenen xlink.xsd in eine Datei zu kombinieren, aber das verwässert nur die Validierung für alle Schemas und ist evtl. auch gar nicht ohne weiteres möglich.

Weitere Beispiele:

  • MathML2 XML Schema definiert eine xlink-href.xsd für XLink
  • MathML2 und MathML3 XML Schemas haben den gleichen Namespace
  • XHTML 1.0 und XHTML 1.1 XML Schema haben den gleichen Namespace
  • Gibt es SCH, RNG und/oder XSD, kann nur eins der drei im Katalog hinterlegt werden, da gleicher Namespace (TEI, MathML3, DocBook)
Edited by Jens Steidl