Dreamweaver TechniqueJAVA Script サンプル | CSS sample | JAVA Applet sample | Flash Sample
HTML4.0 riference | DynamicHTMLXHTML | XML sample | XSLT sample | RIKO's ASP Trial

属性の内容を事前定義する

スキーマを使って属性の内容を事前に定義する方法は2通りあります。1つはXML文書でその属性を指定した場合に使うべき内容を具体的に指定する方法、もう1つはXML文書で属性を指定するかどうかに関係なく使用する初期値を指定する方法です。前者を「固定値」、後者を「規定値」と呼びます。固定値を指定するには use="fixed" を、規定値を指定するには use="default" を使います。

■ 属性の具体的な内容を指定するには

1. 属性タグ内に use="fixed" と入力します。

2. value="content" と入力します。

contentの部分には、XML文書でその属性を使用した場合に指定すべき値を入力します。

XSDコード
<xsd:attribute name="sectionid" type="xsd:string" use="fixed" value="/ >
<xsd:attribute name="topicid" type="xsd:string" / >

sectionid属性をXML文書内で指定する場合は、値として「010000」を設定しなければなりません。ただし、この属性をまるごと省略することはできます。

XMLコード
<source sectionid="010000" topicsid="1061"></source>

このsource要素は上のスキーマに対して有効です。topicsid属性を全く指定しなくても有効です。

XMLコード
<source sectionid="010100" topicid="1061"></source>

このsource要素は上のスキーマに対して無効です。

■ 属性の初期値を指定するには

1. 属性タグ内に use="default" と入力します。

2. value="content" と入力します。

contentの部分には、XML文書でその属性を省略した場合に使用する属性値を入力します。

XSDコード
<xsd:attribute name="sectionid" type="xsd:string" use="default" value="010000"/ >
<xsd:attribute name="doctorid" type="xsd:string" / >

sectionid属性に規定値を定義する場合は、XML文書内でdoctorid属性を指定するかどうかにかかわらず、初期値としてその値が使われます。

XMLコード
<source sectionid="010000" doctorid="21"></source>

XMLコード
<source sectionid="010100" doctorid="25"></source>

これらのsource要素はどちらもスキーマに対して有効です。default属性は初期値を設定するだけです。他の値を設定しても有効です。

■ 補足

・属性定義に use="optical" を追加することもできますが、これは規定値なのでわざわざ入力する必要もありません。

<<<戻る

R HOUSE | RIKO's Trial Page | Shirley's Pettit Case | Shirley's i-box | Shirley's little box