XML-Schema: Aufgabe zu Namespace Quailfier

Hallo,

in nachfolgender XML-Schema-Datei (.xsd) sollen die fehlenden Namespaces eingetragen werden:

<?xml version="1.0" ?> sequence\>

complexType>
element>

sequence>
complexType>
element>

schema>

Meine Lösung lautet wie folgt, aber sie ist vermutlich nicht korrekt,
da ich eine xml-Instanz gegen dieses Schema nicht validiert bekomme.

<?xml version="1.0" ?>

Was muss man also hier als Namespaces angeben?

Gruß, Ralf

Hallo,

Meine Lösung lautet wie folgt, aber sie ist vermutlich nicht
korrekt,
da ich eine xml-Instanz gegen dieses Schema nicht validiert
bekomme.

<?xml version="1.0" ?>

Der bk Prefix gehört zum Namespace http://www.books.org, die element Tags und XSD Typen gehören jedoch zum Schema Namespace. Bei diesem kann man den Prefix weglassen, da er als xmlns (ohne Prefix definiert wurde).

Hier wird auf ein Book Element aus dem http://www.book.org Namespace referenziert.

Hier wird auf ein Element aus dem Schema Namespace referenziert, das funktioniert nicht. Wenn man mit Java versucht ein XML dagegen zu validieren erscheint die folgende Fehlermeldung:

src-resolve.4.2: Error resolving component ‚Title‘. It was detected that ‚Title‘ is in namespace ‚http://www.w3.org/2001/XMLSchema‘, but components from this namespace are not referenceable …

Diese (und weitere) Referenz muss also um den korrekten Namespace-Prefix ergänzt werden

HTH
Heavy

ok, danke für die Hilfe. Aber so ganz klar ist es immer noch nicht.
Also müßte eine korrekte Lösung so aussehen?

<?xml version="1.0" ?>

Problem ist ja, dass für die Elemente für book (also Title, Author, etc.) ein anderer Namespace erforderlich ist. Ich habe den Namespace „xs“ gewählt, um dann auch auf die Datentypen (xs:string) Zugriff zu haben. Aber der Namespace „xs“ wird nirgends referenziert und kann somit auch nicht gefunden werden…

Gruß, Ralf

ok, danke für die Hilfe. Aber so ganz klar ist es immer noch
nicht.
Also müßte eine korrekte Lösung so aussehen?

Ich dachte der Hinweis sei deutlich genug gewesen ohne deine Hausaufgaben ganz zu machen :smile:

Bei dieser Referenz kommt keine Fehlermeldung…

Bei dieser dagegen schon, du willt auf den Title aus dem book-Namespace referenzieren, der zugehörige Prefix ist bk.

Gruß
Heavy

ok, nochmals danke für den weiteren Hinweis.

Dann scheint die einzig richtige Lösung wohl folgende zu sein:

<?xml version="1.0" ?>

Zumindest krieg ich so keine Fehlermeldung :smile:

Gruß, Ralf