Einträge zum XML-Katalog hinzufügen

Ein XML-Katalogeintrag enthält zwei Teile - einen Schlüssel (der eine DTD oder ein XML-Schema darstellt) und eine URI (die Informationen zur Position einer DTD oder eines XML-Schemas enthält). Sie können den Schlüssel in einer XML-Datei speichern. Wenn der XML-Prozessor diesen erkennt, verwendet er den XML-Katalogeintrag, um die Position der DTD oder des XML-Schemas zu ermitteln, die bzw. das dem Schlüssel zugeordnet ist.

XML-Katalogeinträge können in vielen verschiedenen Situationen verwendet werden. Beispiel: Sie arbeiten mit einer XML-Datei auf Ihrem Desktop-Computer und verweisen mit der Angabe für schemaLocation auf das Schema c:\MySchema.xsd. Sie speichern die Datei auf Ihrem Laptop-Computer, um später damit arbeiten zu können. Wenn Sie jedoch die Datei auf Ihrem Laptop-Computer öffnen, tritt ein Problem auf: Der XML-Editor findet das Schema MySchema.xsd nicht, da es sich auf Ihrem Laufwerk D: befindet. Sie müssen die Angabe für schemaLocation bearbeiten, so dass sie auf d:\MySchema.xsd verweist. Wenn Sie die Bearbeitung der XML-Datei abgeschlossen haben und die Datei im Web veröffentlichen möchten, müssen Sie die URI erneut bearbeiten, so dass sie auf eine Ressource verweist, auf die im Web Zugriff besteht. Das Problem ist nun klar erkennbar. Eine URI, die in einer XML-Datei verwendet wird, ist nicht so einfach portierbar wie erforderlich. Um zu vermeiden, dass Sie häufig Änderungen an Ihrem XML-Dokument vornehmen müssen, können Sie den XML-Katalog verwenden.

Ein XML-Katalogeintrag wird von einem XML-Prozessor zur Auflösung von Entitätsverweisen verwendet. Sie können Regeln für den Katalog angeben, um festzulegen, wie Entitäten aufgelöst werden sollen. Im vorhergehenden Beispiel können Sie eine Regel angeben, mit der ein Internetressourcenverweis (z. B. "http://www.ibm.com/published-schemas/MySchema.xsd") so umgeleitet wird, dass er auf eine Ressource verweist, die sich auf der lokalen Maschine des Entwicklers befindet (z. B. "file:///C:/MySchema.xsd"). Anstatt häufig XML-Dokumente zu bearbeiten, um die URIs zu aktualisieren (vor allem bei Projekten mit vielen Dokumenten), müssen Sie nun lediglich eine einzige Regel im XML-Katalog aktualisieren.

Die folgenden Instruktionen wurden für die Ressourcenperspektive geschrieben, sind jedoch auch in zahlreichen anderen Perspektiven verwendbar.

Gehen Sie wie folgt vor, um einen Eintrag zum XML-Katalog hinzuzufügen:

  1. Öffnen Sie die XML-Datei, die Sie einer DTD oder einem XML-Schema zuordnen möchten.
  2. Klicken Sie auf Fenster > Benutzervorgaben > Web und XML > XML-Katalog.
  3. Das Feld XML-Katalogeinträge enthält eine Liste aller benutzerdefinierten und vom Plug-in definierten Katalogeinträge.
    1. Wählen Sie einen beliebigen Eintrag aus, um Einzelheiten dazu im Feld Details anzuzeigen.
    2. Klicken Sie auf Hinzufügen, um einen neuen Katalogeintrag zu erstellen.
  4. Geben Sie im Feld URI die Position der DTD oder des XML-Schemas ein, oder suchen Sie mit 'Durchsuchen' danach.
  5. Wenn Sie eine DTD im Feld URI angegeben haben, können Sie entweder Öffentliche ID oder System-ID im Feld Schlüsseltyp auswählen. Wenn Sie Öffentliche ID auswählen, muss der Wert, den Sie im Feld Schlüssel eingeben, identisch sein mit der öffentlichen ID in der DOCTYPE-Deklaration der XML-Datei. Wenn Sie System-ID auswählen, muss der eingegebene Wert mit der System-ID in der DOCTYPE-Deklaration der XML-Datei übereinstimmen.
  6. Wenn Sie ein XML-Schema im Feld URI angegeben haben, können Sie entweder Namensbereichsname oder Schemaposition im Feld Schlüsseltyp auswählen. Wenn das Schema einen Zielnamensbereich definiert, wird dieser automatisch im Feld Schlüssel angezeigt. Andernfalls können Sie die Schemaposition im Feld Schlüssel angeben.
  7. Wählen Sie das Markierungsfeld Alternative Webadresse angeben aus, um die Angabe einer alternativen Webadresse für die Ressource zu ermöglichen. Diese Webadresse wird verwendet, wenn eine XML-Instanz aus diesem Katalogeintrag generiert wird. Hinweis: Diese Option ist nur verfügbar, wenn Sie Öffentliche ID (für eine DTD) oder Namensbereichsname (für ein Schema) im Feld Schlüsseltyp auswählen.
  8. Wenn Sie auf einen anderen Katalog verweisen möchten, ohne ihn in die Workbench zu importieren, klicken Sie auf Nächster Katalog. Geben Sie den gewünschten XML-Katalog ein oder suchen Sie mit 'Durchsuchen' danach.
  9. Wenn Sie die Erstellung von Katalogeinträgen abgeschlossen haben, klicken Sie auf OK, um den Dialog 'XML-Katalogeintrag hinzufügen' zu schließen.
  10. Klicken Sie auf Erweitert, wenn Sie XML-Katalogeinstellungen importieren oder exportieren möchten.
  11. Klicken Sie auf Exportieren, wenn Sie die XML-Kataloginformationen speichern möchten. Es werden nur die von Ihnen angegebenen benutzerdefinierten Einträge exportiert.
    1. Sie werden dazu aufgefordert, ein Projekt auszuwählen und einen Dateinamen anzugeben, um die Katalogeinträge in einer .xmlcatalog-Datei zu speichern, die über die Navigatorsicht geöffnet werden kann. Da Ihre Katalogeinträge in einer .xmlcatalog-Datei gespeichert sind, können Sie sie wie jede andere Projektressource ein- und auschecken und gemeinsam verwenden.
    2. Klicken Sie auf OK.
  12. Klicken Sie auf Importieren, wenn Sie eine .xmlcatalog-Datei importieren möchten. Sie werden dazu aufgefordert, die zu importierende Datei auszuwählen.
    1. Wenn Sie eine .xmlcatalog-Datei importieren, werden die darin enthaltenen Einträge in den XML-Katalog geladen (vorhandene Einträge werden überschrieben).
    2. Klicken Sie auf OK.
  13. Klicken Sie auf OK, um den Dialog mit den erweiterten XML-Katalogbenutzervorgaben zu schließen.
  14. Stellen Sie sicher, dass die XML-Datei fokussiert ist, und klicken Sie auf die Schaltfläche Abhängigkeiten erneut laden in der Symbolleiste.
Die XML-Datei ist nun der neuesten Version des XML-Schemas bzw. der DTD zugeordnet.
Zugehörige Konzepte
XML-Dateizuordnungen zu DTDs und XML-Schemata
Zugehörige Tasks
Bearbeitung mit Integritätsbedingungen in DTDs oder XML-Schemata
DOCTYPE-Deklarationen bearbeiten
XML-Dateien mit den an DTDs und Schemata vorgenommenen Änderungen aktualisieren
Namensbereichsinformationen bearbeiten