Thomas J.S.: xml-namespaces

Beitrag lesen

Hallo!

Sind diese Namespaces (schon) XML-Standart?

Ja. Sogar Reccomendation ist es http://www.w3.org/TR/1999/REC-xml-names-19990114/ und schon ist gut! ;-)

Sind sie nur in der MS-Variante von XMl von Nutzen?

Nein.
Bernhard hat schon schön erkläert warum man Namensräume braucht.
Nur eine kleine Ergänzung dazu:

Du hast folgendes in einer XML:
<BOOK>
  <TITLE>Tagebuch eines XML-Lerlings</TITLE>
  <PRICE currency="DM">22.95</PRICE>
</BOOK>
Dann geht es weiter:

<AUTHOR>
  <TITLE>Hr.</TITLE>
  <NAME>Peter Mustermann</NAME>
</AUTHOR>

Nun ja, du kannst unterscheiden zwischen den 2 <TITLE> Elements, aber ein Programm nicht. Deshalb ist es notwendig genau zu sein was gemeint ist, also schreibst du:
BookInfo:TITLETagebuch eines XML-Lerlings</BookInfo:TITLE>
AuthorInfo:TITLEHr.</AuthorInfo:TITLE>

  1. Muß ich das XML Attribut xml:space in einer DTD extra definieren, um es verwenden zu können?

xml:space ist kein Attribut:

<BOOK xmlns="urn:BookReader.org:BookInfo">
  <TITLE>Tagebuch eines XML-Lerlings</TITLE>
  <PRICE currency="US Dollar">22.95</PRICE>
</BOOK>

Hier erklärst du das BOOK Element und alle seine Attribute. Der namespace ist 'urn:BookReader.org:BookInfo', xmlns ist ein Schlüsselwort wodurch Parser die namespace Deklaration erkennen.
Anders geht esauch:

<x xmlns:edi='http://ecommerce.org/schema'></x>
"edi" ist der Prefix, das an 'http://ecommerce.org/schema' verknüpft ist und bestimmt wurde das ganze hier für das "x" Element

Grüße
Thomas