2016-11-14 18 views
0

DTD:XML DTD。 XMLファイルで空の要素を指定する方法空の要素

<!ELEMENT WARNING EMPTY> 

XML:

<WARNING /> 

или

<WARNING></WARNING> 

どちらも正しいと解釈されます。

+3

どうしたのですか?実際、両方の要素は内容がなく、すなわち空である。これは、あなたのDTDを考慮して、 ''と ' 'が合法であることを意味します。 – potame

+0

@potame問題ありません。それは質問です。両方の要素がどちらが正当なものであれば好きですか? –

+1

私の好みは ''です。少し冗長であるからです。しかし、私は主張する:両方が同じです。 – potame

答えて

1

XML仕様では、指定した2つの形式は同等であると明示しています。これは、対になったタグの形式<e></e>コンテンツと要素のための単一タグ形態<e/>を有することが可能であると宣言された要素に使用空宣言すること(SHOULDで)お勧めしないhttps://www.w3.org/TR/xml/#sec-starttags

参照。 DTDもスキーマも持たないアプリケーションでは、この区別は利用できません。誰もがこの仕様の仕様に注意を払う印象はありません。 (当時は良いアイデアのようでした)

[補足、後で]私は最近、仕様の関連部分をもう一度見てみる機会がありました。友人は、 <e/>は、EMPTY宣言された要素に使用され、 "相互運用性のために"ラベル付けされています。これは、 "XMLに先行するSGMLソフトウェアとの相互運用を成功させる可能性を高める"という意味です。これは説明されたパターンに従う人がほとんどいない理由を説明しているようです。1998年以前に開発されたSGMLソフトウェアとの相互運用が必要な人はほとんどいません。

関連する問題