検索
連載

XML Schemaで単純型要素を定義するXMLテクニック集(7)(3/3 ページ)

Share
Tweet
LINE
Hatena
前のページへ |       

XML Schemaで属性ノードを定義する

アイコン

XML Schemaで属性ノードを定義するには<xsd:attribute>要素を使用します。ここで重要なのはuse属性で、属性の必須/任意や固定値指定など、属性の特性を表すための情報を記述します。

カテゴリ XML Schema
関連要素 <xsd:attribute>
関連記事 XML Schemaで単純型要素を定義するXML Schemaで複雑型要素を定義する

 XML Schemaにおいて、属性ノードを定義するには<xsd:attribute>要素を用います。

 要素ノードの定義方法については、別稿「XML Schemaで複雑型要素を定義する」を参照いただくとして、ここでは下記book.xmlの<books>要素のname属性、<book>要素のisbn属性に注目してみることにします。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

<books>要素の名前空間プレフィックス(<atit:〜>)は、XML SchemaとXML文書とをひも付けるためのキーとなります。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***


 以下の部分に注目してみてください。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***


 構文的には<xsd:element>要素について理解していれば、直感的に分かるはずです。name属性に属性名、type属性に属性値のデータ型を指定します。type属性で指定可能なデータ型については、別稿「XML Schemaで単純型要素を定義する」を参照してください。

 ここで重要なのは、その後の部分――use属性の個所です。use属性は属性の必須/任意や固定値指定など、属性の特性を表すための情報になります。use属性で指定可能な値は、以下のとおりです。

設定値 概要/記述例
required 必須(無指定の場合はエラー)
<xsd:attribute name="isbn" type="xsd:string" use="required" />
optional 任意(無指定可能)
<xsd:attribute name="name" type="xsd:string" use="optional" />
default デフォルト値指定(属性値無指定の場合、value属性の値を採用)
<xsd:attribute name="category" type="xsd:string" use="default" value="other" />
fixed 固定値指定(かならずvalue属性の値でなければなりません)
<xsd:attribute name="selected" type="xsd:string" use="fixed" value="selected" />
use属性で指定可能な値

 use属性がdefault、またはfixedの場合には、value属性は必須となります。

Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る