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関数

XML構文規則


XMLの構文規則は、非常に単純で論理的です。ルールは習得しやすく、使いやすいです。


XMLドキュメントにはルート要素が必要です

XMLドキュメントには、 他のすべての要素の 親である1つのルート要素が含まれている必要があります。

<root>
  <child>
    <subchild>.....</subchild>
  </child>
</root>

この例では、 <note>がルート要素です。

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

XMLプロローグ

この行はXMLプロローグと呼ばれます:

<?xml version="1.0" encoding="UTF-8"?>

XMLプロローグはオプションです。存在する場合は、ドキュメントの最初に来る必要があります。

XMLドキュメントには、ノルウェー語のøæåやフランス語のêèéなどの国際文字を含めることができます。

エラーを回避するには、使用するエンコーディングを指定するか、XMLファイルをUTF-8として保存する必要があります。

UTF-8は、XMLドキュメントのデフォルトの文字エンコードです。

文字エンコードについては、文字セットチュートリアルで学習できます

UTF-8は、HTML5、CSS、JavaScript、PHP、およびSQLのデフォルトのエンコーディングでもあります。



すべてのXML要素には終了タグが必要です

XMLでは、終了タグを省略することは違法です。すべての要素には終了タグが必要です。

<p>This is a paragraph.</p>
<br />

注: XMLプロローグには終了タグがありません!これはエラーではありません。プロローグはXMLドキュメントの一部ではありません。


XMLタグは大文字と小文字を区別します

XMLタグでは大文字と小文字が区別されます。タグ<Letter>はタグ<letter>とは異なります。

開始タグと終了タグは、同じ大文字と小文字を区別して記述する必要があります。

<message>This is correct</message>

「開始タグと終了タグ」は、「開始タグと終了タグ」と呼ばれることがよくあります。好きなものを使ってください。まったく同じです。


XML要素は適切にネストする必要があります

HTMLでは、不適切にネストされた要素が表示される場合があります。

<b><i>This text is bold and italic</b></i>

XMLでは、すべての要素が相互に適切にネストされている必要があります。

<b><i>This text is bold and italic</i></b>

上記の例で、「適切にネストされている」とは、<i>要素が<b>要素内で開かれているため、<b>要素内で閉じられている必要があることを意味します。


XML属性値は常に引用符で囲む必要があります

XML要素は、HTMLの場合と同様に、名前と値のペアで属性を持つことができます。

XMLでは、属性値は常に引用符で囲む必要があります。

<note date="12/11/2007">
  <to>Tove</to>
  <from>Jani</from>
</note>

エンティティ参照

一部の文字は、XMLで特別な意味を持っています。

XML要素内に「<」のような文字を配置すると、パーサーがそれを新しい要素の開始として解釈するため、エラーが生成されます。

これにより、XMLエラーが生成されます。

<message>salary < 1000</message>

このエラーを回避するには、「<」文字をエンティティ参照に置き換えます。

<message>salary &lt; 1000</message>

XMLには5つの事前定義されたエンティティ参照があります。

&lt; < less than
&gt; > greater than
&amp; & ampersand 
&apos; ' apostrophe
&quot; " quotation mark

XMLでは<と&のみが厳密に違法ですが、>を&gt;に置き換えるのは良い習慣です。同様に。


XMLでのコメント

XMLでコメントを書き込むための構文は、HTMLの構文と似ています。

<!-- This is a comment -->

コメントの途中にダッシュを2つ入れることはできません。

<!-- This is an invalid -- comment -->

空白はXMLで保持されます

XMLは複数の空白を切り捨てません(HTMLは複数の空白を1つの単一の空白に切り捨てます):

XML: Hello           Tove
HTML: Hello Tove

XMLは改行をLFとして格納します

Windowsアプリケーションは、キャリッジリターンとラインフィード(CR + LF)として新しい行を格納します。

UnixおよびMacOSXはLFを使用します。

古いMacシステムはCRを使用します。

XMLは新しい行をLFとして格納します。


整形式のXML

上記の構文規則に準拠するXMLドキュメントは、「整形式」XMLドキュメントと呼ばれます。