XML Schema DocumentとXML Schema Instanceの違いは何ですか?
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
詳しく説明してください。
xsd
およびxsi
類似性xsd
の従来の代替手段はxs
です。)xsd
とxsi
の違いxsd
(またはxs
) Schema Namespace (http://www.w3.org/2001/XMLSchema
)は、XMLスキーマ(XSD)で W3C XML Schema Recommendation 自体の要素、属性、およびタイプに使用されます。 (これはXMLスキーマ自体がXMLであるため可能です。)xsi
接頭辞 スキーマインスタンス名前空間http://www.w3.org/2001/XMLSchema-instance
は、XML Schema Recommendationで定義されているいくつかの特別な属性のXMLドキュメントインスタンスで使用されます。
xsi:type
は、XMLインスタンスが要素タイプ情報をXSD経由ではなく直接関連付けることを許可します。 を参照してください。XSDでxsi:typeを使用してXML要素の値を制限する方法?
xsi:nil
は、XSDで許可されていない場合に空の要素が有効であると見なされるようにします。
xsi:schemaLocation
およびxsi:noNamespaceSchemaLocation
は、XSDをXMLドキュメントに関連付ける方法に関するヒントをXMLプロセッサに提供します。つかいます xsi:schemaLocation
名前空間がある場合;つかいます xsi:noNamespaceSchemaLocation
名前空間がない場合。
http://www.w3.org/2001/XMLSchema
シンプルバージョン:これは、XMLスキーマ(XSD)内で使用される名前空間です。 XMLスキーマは、XMLインスタンスドキュメント内で有効なものを記述するために使用されます。
簡易版:これは、XMLスキーマの構造を記述するXMLスキーマの名前空間です。言い換えれば、それ自体を記述するスキーマ。
XML Schema(XSD)は、このスキーマ内で定義されたタイプを使用して作成する必要があります。
例:
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="MyElement" type="xs:string" />
</xs:schema>
http://www.w3.org/2001/XMLSchema-instance
これは、XMLインスタンスドキュメント内で使用されるネームスペースであり、それを処理しているXMLパーサーに追加データを提供します。 XMLパーサーが検証を支援するために使用できる属性xsi:schemalocation、xsi:noSchemalocation、xsi:type、およびxsi:nilについて説明します。
例:
<MyElement xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="MySchema.xsd">
string
</MyElement>