XMLチュートリアル

XMLホーム XMLの紹介 XML使用方法 XMLツリー XML構文 XML要素 XML属性 XML名前空間 XML表示 XML HttpRequest XMLパーサー XML DOM XML XPath XML XSLT XML XQuery XML XLink XMLバリデーター XML DTD XMLスキーマ XMLサーバー XMLの例 XMLクイズ XML証明書

XML AJAX

AJAXの紹介 AJAX XMLHttp AJAXリクエスト AJAX応答 AJAXXMLファイル AJAX PHP AJAX ASP AJAXデータベース AJAXアプリケーション AJAXの例

XML DOM

DOMの紹介 DOMノード DOMアクセス DOMノード情報 DOMノードリスト DOMトラバース DOMナビゲーション DOMは値を取得します DOM変更ノード DOM削除ノード DOM置換ノード DOM作成ノード DOM追加ノード DOMクローンノード DOMの例

XPathチュートリアル

XPathの概要 XPathノード XPath構文 XPath軸 XPath演算子 XPathの例

XSLTチュートリアル

XSLTの紹介 XSL言語 XSLT変換 XSLT <テンプレート> XSLT <値> XSLT <for-each> XSLT <ソート> XSLT <if> XSLT <選択> XSLT適用 クライアント上のXSLT サーバー上のXSLT XSLT Edit XML XSLTの例

XQueryチュートリアル

XQueryの紹介 XQueryの例 XQuery FLWOR XQuery HTML XQueryの用語 XQuery構文 XQuery追加 XQuery Select XQuery関数

XML DTD

DTDの紹介 DTDビルディングブロック DTD要素 DTD属性 DTD要素と属性 DTDエンティティ DTDの例

XSDスキーマ

XSDの概要 XSDハウツー XSD <スキーマ> XSD要素 XSD属性 XSDの制限

XSDコンプレックス

XSD要素 XSDが空です XSD要素のみ XSDテキストのみ XSD混合 XSDインジケーター XSD <任意> XSD <anyAttribute> XSD置換 XSDの例

XSDデータ

XSD文字列 XSD日付 XSD数値 XSDその他 XSDリファレンス

Webサービス

XMLサービス XML WSDL XML SOAP XML RDF XML RSS

参考文献

DOMノードタイプ DOMノード DOM NodeList DOM NamedNodeMap DOMドキュメント DOM要素 DOM属性 DOMテキスト DOM CDATA DOMコメント DOM XMLHttpRequest DOMパーサー XSLT要素 XSLT / XPath関数

DTD-要素


DTDでは、要素はELEMENT宣言で宣言されます。


要素の宣言

DTDでは、XML要素は次の構文で宣言されます。

<!ELEMENT element-name category>
or
<!ELEMENT element-name (element-content)>

空の要素

空の要素は、カテゴリキーワードEMPTYで宣言されます。

<!ELEMENT element-name EMPTY>

Example:

<!ELEMENT br EMPTY>

XML example:

<br />

解析された文字データを持つ要素

解析された文字データのみを持つ要素は、括弧内に#PCDATAを使用して宣言されます。

<!ELEMENT element-name (#PCDATA)>

Example:

<!ELEMENT from (#PCDATA)>


内容のある要素

カテゴリキーワードANYで宣言された要素には、解析可能なデータの任意の組み合わせを含めることができます。

<!ELEMENT element-name ANY>

Example:

<!ELEMENT note ANY>

子を持つ要素(シーケンス)

1つ以上の子を持つ要素は、括弧内の子要素の名前で宣言されます。

<!ELEMENT element-name (child1)>
or
<!ELEMENT element-name (child1,child2,...)>

Example:

<!ELEMENT note (to,from,heading,body)>

子がコンマで区切られた順序で宣言されている場合、子はドキュメント内で同じ順序で表示される必要があります。完全な宣言では、子も宣言する必要があり、子は子を持つこともできます。「note」要素の完全な宣言は次のとおりです。

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>

要素の1回の出現のみを宣言する

<!ELEMENT element-name (child-name)>

Example:

<!ELEMENT note (message)>

上記の例では、子要素「message」が1回だけ発生し、「note」要素内で1回だけ発生する必要があることを宣言しています。


要素の最小1回の出現を宣言する

<!ELEMENT element-name (child-name+)>

Example:

<!ELEMENT note (message+)>

上記の例の+記号は、子要素「message」が「note」要素内で1回以上出現する必要があることを宣言しています。


要素の0回以上の発生を宣言する

<!ELEMENT element-name (child-name*)>

Example:

<!ELEMENT note (message*)>

上記の例の*記号は、子要素「message」が「note」要素内で0回以上発生する可能性があることを宣言します。


要素の0回または1回の発生を宣言する 

<!ELEMENT element-name (child-name?)>

Example:

<!ELEMENT note (message?)>

上記の例のサインインは、子要素「message」が「note」要素内で0回または1回発生する可能性があることを宣言します。


いずれかまたは両方のコンテンツを宣言する

<!ELEMENT note (to,from,header,(message|body))>

上記の例では、「note」要素に「to」要素、「from」要素、「header」要素、および「message」要素または「body」要素のいずれかが含まれている必要があることを宣言しています。


混合コンテンツの宣言

<!ELEMENT note (#PCDATA|to|from|header|message)*>

上記の例では、「note」要素に、解析された文字データ、「to」、「from」、「header」、または「message」要素のオカレンスを0個以上含めることができることを宣言しています。