XMLの紹介と使用
XMLは拡張マークアップ言語であるExtensiveMarkup Languageです。XMLとhtmlは非常に似ています(最初にhtmlについて学ぶことをお勧めします)。どちらも書き込みタグを使用し、拡張子は.xmlです。同時に、XMLは非常に読みやすくなっています。htnlとは異なり、XMLには事前定義されたタグはありませんが、htmlには事前定義されたタグがたくさんあります。XMLはデータの保存と送信に重点を置いていますが、htmlは情報の表示に使用されます。xmlとhtmlのコード比較を以下に示します。
html:
<body>
<!---<a>为预定义标签,具有超链接的功能--->
<a href="index.html">首页</a>
<body>
xml:
<school>
<class no="G3C1">
<grade>三年级</grade>
<class>一班</class>
</class>
</school>
XMLの使用法は次のとおりです。
- Javaプログラムの構成記述子
-
プログラムによって生成されたデータを保存するために使用されます
- ネットワーク間のデータ送信
XMLドキュメント構造
- 最初の行はXML宣言である必要があります
XML宣言は、XMLの最初の行に記述された、バージョンや文字セットなど、XMLドキュメントの基本情報を記述します。
- 唯一無二のルートノード
- XMLタグの記述規則はHTMLと同じです
XML文法規則
- 正式なラベル名
タグ名は意味のあるものにする必要があります。英語の小文字を使用し、単語を「-」で区切ることをお勧めします。また、マルチレベルタグ(親タグや単語タグなど)間で重複する名前を使用しないことをお勧めします。
- 適切なコメントとインデント
読みやすく、メンテナンスも簡単です
- 属性のフェアユース
同じタイプの複数のタグは属性を使用できます
- 特殊文字とCDATAタグ
タグ本体に「<"、">」の特殊文字が表示され、次のようなドキュメント構造が破壊されます。
ソリューション1エンティティ参照:
上記のxmlは次のように記述できます。
解決策2はCDATAを使用します。
多数の特殊文字には、CDATAタグを使用できます。書き込み形式は「<![CDATA [text]]>」で、次のようにテキスト部分のxmlは解析されません。
<body>の部分と上記の段落は解析されず、直接出力されません
- 順序付けられたサブ要素
同じサブ要素に使用されるタグは、読みやすくするために一貫している必要があります
XMLセマンティック制約
XMLドキュメントの構造は正しいですが、必ずしも有効であるとは限りません。たとえば、「plantvariety」タグを従業員ファイルに表示できません。これは意味的に一貫していません。XMLセマンティクスを制限するには、DTDとXMLスキーマの2つの方法があります。
- DTDドキュメントタイプ定義
DTDはセマンティック制約の単純な方法であり、通常は別のファイルとして表示され、拡張子は.dtdです。
<!ELEMENT> タグは、XMLドキュメントで許可されるノードの数と数を定義します。次に例を示します。
複数の子ノードが必要な場合は、子ノードの後に対応する記述子を追加します。
XMLで<!DOCTYPE>タグを使用して、DTDファイルを参照します
XMLスキーマ
xmlスキーマはDTDよりも複雑で厳密であり、より多くの機能(たとえば、データ型、形式の制限、データ範囲など)を提供します。これはW3C標準です。XMLの文法規則はより複雑ですが、アイデアは非常にシンプルです。詳細はこちらをご覧ください。