1. ホーム
  2. Web制作
  3. XML/XSLT

XMLチュートリアル。文書型宣言 - XML/XSLT

2021-12-30 13:53:46

DTDを有効性チェックに使用するには、XML宣言の後、ルート要素の前に位置する文書型定義宣言を使用してDTDを指定します。dtd文書がローカルにある場合は、パス名を用いて直接dtd文書の場所を示すことができる。
XMLはタグでカスタマイズできるため、個々人で定義するタグのセットが異なり、タグの定義原則を規定した規格がなければ、アプリケーションでXML文書を処理することができない。この問題を解決するために、XML文書の記述ルールを定義するためのDTD、Document Type Definition(文書型定義、文書型定義)を使用する。例えば、どの要素を文書に登場させることができるか、また、要素の内容や属性の要件など。アプリケーションはこのDTDを使って文書を調べ、DTDの制約規則に合致するXML文書を有効な文書と呼び、次に処理することができます。そうでない場合はエラーが報告され、アプリケーションはそのエラーを捕捉して適切な例外処理に対応することができます。検証処理は、特定のアプリケーションに依存し、オプションである。
この記事はスクリプトハウス(https://www.jb51.net)が編集・公開したものです! 出典を引用してください、ありがとうございます

文書型宣言
DTDを有効性チェックに使用する場合は、文書型定義宣言でDTDを指定します。
<?xml version="1.0" standalone="no"? > <!DOCTYPE portal SYSTEM "http://www.w3c.com/dtd/portal.dtd"> <portal> <name>Jims</name> <email>[email protected]</email> <email>[email protected]</email> </portal>
文書型宣言は、XML宣言の後、ルート要素の前に配置される。dtd文書がローカルにある場合は、パス名を用いて直接その場所を示すことができる。portal.dtdの内容は以下のとおりである。
<!ELEMENT portal (name,email*)> <!ELEMENT name (#PCDATA)> <!ELEMENT email (#PCDATA)> <!ELEMENT email (#PCDATA)>
上記は、内部dtdサブセットと呼ばれるdtd宣言の中で、XML文書に直接書き込むこともできます。
<?xml version="1.0" standalone="no"? > <!DOCTYPE portal [ ]です。 <!ELEMENT portal (name,email*)> <!ELEMENT name (#PCDATA)> <!ELEMENT email (#PCDATA)> ]> <ポータル> <name>ジムズ</name> <email>[email protected]</email> <email>[email protected]</email> </portal>
dtdがXMLドキュメントの外部にある場合、それは外部dtdサブセットと呼ばれます。内部と外部のdtdを組み合わせて、一緒にXML文書用のdtdを形成して、検証を行うことができます。たとえば、以下のようになります。
<!DOCTYPE portal SYSTEM "external.dtd" [ ]。 <!ELEMENT portal (name,email*)> <!ELEMENT name (#PCDATA)> <!ELEMENT email (#PCDATA)> ]>
innerとouterのdtdを使用する場合、2つのdtdは互いに互換性があり、衝突しないようにする必要があることに注意してください。