3

要素が QName 型として宣言されているとします。

<element name="example" type="QName" />

インスタンス ドキュメントでは、の値にexample名前空間プレフィックスを付けなくてもかまいません。

<example>Hello</example>

はいの場合、の名前空間 URI はHello何ですか?

デフォルトの名前空間を宣言するとします。

<document xmlns="http://www.example.org">
    <example>Hello</example>
</document>

名前空間Helloにありますか?http://www.example.org

4

2 に答える 2

1

コンテンツは、(属性ではなく)要素名の場合と同じ規則に従います。xmlnsプレフィックスのないQNameは、属性を持つ最も近い包含要素によってインスタンスで宣言されたデフォルトの名前空間にあると解釈されます。名前空間が宣言されていない場合は、名前空間がないと解釈されます。したがって、はい、Helloはその名前空間内の名前を示すQNameとして解釈されます。

于 2012-03-18T10:37:22.417 に答える
0

Helloは値であり、要素または属性の名前ではないため、名前空間 URI を持たず、単なる文字列です。

宣言

<element name="example" type="QName" /> 

exampleの可能な値を、QName の構文に一致する文字列に制限します ( http://www.w3.org/TR/REC-xml-names/#ns-qualnamesaで定義されているように、有効な値はなどになりますa:b) 。 、しかし、値が QName であるとは言いません。

于 2012-03-12T23:29:25.020 に答える