XML-Standard-namespaces für nicht qualifizierte Attribut-Namen?

Ich versuche zu verstehen, die richtige interpretation der "Namespaces in XML 1.0 (Third Edition)" definition für unqualifizierte attribute namespaces.

"Der namespace-name für eine unprefixed Attribut name hat keinen Wert."

Und später im selben Abschnitt:

"Der Wert des Attributs in einem default-namespace-Deklaration KANN auch leer sein. Dies hat die gleiche Wirkung, die in den Geltungsbereich der Erklärung, dass es keine Standard-namespace."

Also, wenn ich will, zu erklären, ein Standard-namespace für ein element (und seine Kinder), kann ich auch erklären müssen, ein Präfix-Namensraum-mapping-alle Attribute, die sich in diesem namespace?

Zum Beispiel, in diesem Beispiel

<parent xmlns="http://example.com/foo">
    <child attrib="value">text</child>
<parent>

Ich würde das interpretieren der obigen definition zu sagen, dass der namespace attrib leer ist.

So, wenn ich gebraucht attrib haben den gleichen namespace wie parent, dann wäre ich gezwungen, dies zu tun?

<foo:parent xmlns:foo="http://example.com/foo">
    <foo:child foo:attrib="value">text</foo:child>
<foo:parent>

oder?

<parent xmlns="http://example.com/foo" xmlns:foo="http://example.com/foo">
    <child foo:attrib="value">text</child>
<parent>

Dies scheint dumm zu mir, wie es scheint die Niederlage der Zweck der default-namespaces. Ich hoffe, dass ich mich einfach Missverständnis der spec.

InformationsquelleAutor mckamey | 2010-07-22
Schreibe einen Kommentar