【发布时间】:2013-06-18 00:36:29
【问题描述】:
我正在尝试为 XML 文档创建 DTD。该文档有两个孩子 - 一个包含结构化数据,另一个包含非结构化数据,例如;
<doc>
<structured>
<foo x="9"/>
<foo x="4"/>
</structured>
<unstructured>
<hello/>
<world x="2">
<hi msg="something"/>
<anything/>
</world>
</unstructured>
</doc>
我想为上述 XML 创建一个 DTD,它允许 <unstructured> 元素包含任何有效的 XML。我试过这个DTD;
<!ELEMENT doc (structured,unstructured)
<!ELEMENT structured (foo*)
<!ELEMENT foo EMPTY>
<!ATTLIST foo x CDATA #REQUIRED>
<!ELEMENT unstructured ANY>
但是错误是这样产生的;
No declaration for element hello
No declaration for element world
..等
我想允许<unstructured> 包含任何有效的 XML。 DTD 中有没有办法允许指定的元素包含任何可解析的 XML?
我正在使用 PHP 5.3 DOMDocument::validate。
【问题讨论】:
标签: xml validation dtd