Welcher Namespace in XML ist für was verantwortl.?

Welcher Namespace in XML/XSD ist für was verantwortl.?

Hallo zusammen !
Ich arbeite einige Zeit schon mit XML - Dateien. Bisher war Namespace nie ein Thema für meine Anwendungen, da sie sehr einfach gestrickt waren.
Inzwischen arbeite ich vertieft mit DTD (Documenttypedefinition) bzw.
noch mehr mit dem XML-Schema. Mir ist nicht klar, wofür die einzelnen Namespaces, die in dem folgenden Beispiel auftauchen verantwortlich
sind:

z.B.

  1. XSD-Datei: (Hier werden insgesamt 3 Namespaces im xs:schema definiert. Wozu ? Welche Rolle spielen die einzelnen Namespaces ??)
<?xml version="1.0" encoding="ISO-8859-1"?>
  1. oder auch in einer dazugehörigen XML-Datei:
    ( Hier werden auch nochmal 3 Namespaces eingeführt (im Hauptelement) ?
    )
<?xml version="1.0" encoding="ISO-8859-1"?>Heinz SchnidtMuellerweg 13BonnBonn50000

Kann mir da jemand weiterhelfen ? Ich hab da ein ziemliches Brett vorm Kopf.
Oder gibt es da eine gute Internetseite, Beschreibung oder ein Buch zum Thema ? Oder hat sonst jemand Rat ?

Vielen Dank Euch und Herzliche Grüße,
Sebastian

hallo sebastian,

keine angst vor namespaces…sie verzeiren eine xml-datei nur :wink:

Welcher Namespace in XML/XSD ist für was verantwortl.?

mmh, das kann man so nicht en general beantworten. lies dir doch mal zb. auf http://www.zvon.org/ durch, was du über namespaces findest. meist lohnt der aufwand aber erst, wenn du mit sowas wirklich probleme hast…

Inzwischen arbeite ich vertieft mit DTD
(Documenttypedefinition) bzw.
noch mehr mit dem XML-Schema.

schema ist schwieriger zu verstehen, aber besser weil es im ggs. zur dtd wieder xml ist.

Mir ist nicht klar, wofür die
einzelnen Namespaces, die in dem folgenden Beispiel auftauchen
verantwortlich
sind:

nur kurz zu:

xmlns:xs=„http://www.w3.org/2001/XMLSchema“ ist die namespace betreffenden elements ‚schema‘, xs ist der zugehörige prefix. targetNamespace ist nur ein attribut, namespace wird etwas nur, wenn es mit xmlns beginnt. xmlns=„http://www.spiegel.de“ ist (so weit ich weiss) die default namespace des elements ‚schema‘, sprich, überall wo bei den kinder des elements kein namespace-prefix steht gehört das element zu dieser namespace.

Kann mir da jemand weiterhelfen ? Ich hab da ein ziemliches
Brett vorm Kopf.

vermutlich umsonst :wink:

namspaces sind erst mal nur eine möglichkeit in einem xml-doc versch. elemente mit gleichem namen verschieden zu halten…sprich:

die elemente:

und

sind nicht gleich. meint, du musst zb. unterschiedl. xpath-ausdrücke verwenden um auf diese zuzugreifen, auch wenn sie an gleicher ‚stelle‘ im xml-doc erscheinen.

allerdings sind die elemente dann wieder gleich wenn das zweite element in folgender umgebung sitzt:

namespaces vererben sich…und ohn prefix sinds die default-namespaces…aber ich beginne dich womöglich zu verwirren…

daher: hth,

stfan