addi: Erklärungsbedarf Schema referenzieren

Hallo,

wenn ich ein einer xml Datei ein Schema referenziere, sieht das u.a. wie folgt aus:
<konzert xmlns:xsi="http:/...../XMLSchema-instance"
xsi:noNameSpaceLocation="konzert.xsd">

ist es egal welchen namensraum ich hier wähle,
also xi, xsi, x oder sonst einen Buchstaben? zumindest sehe ich da keine Fehlermeldung.

gruß
addi

  1. Hallo,

    wenn ich ein einer xml Datei ein Schema referenziere, sieht das u.a. wie folgt aus:
    <konzert xmlns:xsi="http:/...../XMLSchema-instance"
    xsi:noNameSpaceLocation="konzert.xsd">

    ist es egal welchen namensraum ich hier wähle,
    also xi, xsi, x oder sonst einen Buchstaben? zumindest sehe ich da keine Fehlermeldung.

    eigentlich ist es egal, so lange das nicht zu einer Konflikt führt. Aussschlaggebend ist der Namensraum (und nicht der Prefix): "http://www.w3.org/2001/XMLSchema-instance"

    Die Spezifikation sagt selbst dazu:
    -------
    'XML Schema: Strukturen' definiert mehrere Attribute für die direkte Verwendung in XML-Dokumenten. Diese Attribute sind in einem zu den Elementen des Instanzdokuments unterschiedlichen Namensraum, der den Namensraum-Namen http://www.w3.org/2001/XMLSchema-instance hat. Der Übersichtlichkeit halber wird für Text und Beispiele in dieser Spezifikation das Präfix xsi: verwendet; in der Praxis kann für diesen Namensraum jedes beliebige Präfix benutzt werden.
    --------

    Allerdings solltest du dich bei xsi halten, denn xi wird normalerweise für XInclude verwendet.

    xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    Grüße
    Thomas

  2. Hello out there!

    ist es egal welchen namensraum ich hier wähle,

    Es ist nicht egal, welchen Namensraumnamen du wählst, der sollte 'http://www.w3.org/2001/XMLSchema-instance' sein.

    also xi, xsi, x oder sonst einen Buchstaben?

    Es ist aber egal, welchen Namensraum-Präfix du dafür verwendest. [XML-NAMES] Nur 'xml' sollte es nicht sein.

    See ya up the road,
    Gunnar

    --
    “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)