【发布时间】:2017-02-02 02:03:46
【问题描述】:
我知道这个问题可能是微不足道的,但我真的需要知道这些东西。
这是我的确切意思的一个例子:
XML 代码:
<product id="01" quantity="4 peaces"> Chocolate Cake </product>
另外,在这种情况下,DTD 文件中的属性类型声明是什么? 也许是“CDATA”?
【问题讨论】:
我知道这个问题可能是微不足道的,但我真的需要知道这些东西。
这是我的确切意思的一个例子:
XML 代码:
<product id="01" quantity="4 peaces"> Chocolate Cake </product>
另外,在这种情况下,DTD 文件中的属性类型声明是什么? 也许是“CDATA”?
【问题讨论】:
您的示例显示了一个具有两个属性的元素:id 和 quantity。 XML 不限制元素可以拥有的属性数量,因此,是的,一个元素可以同时拥有id(属性)和其他属性。 >
<!ELEMENT product (#PCDATA)>
<!ATTLIST product
id ID #REQUIRED
quantity CDATA #REQUIRED>
或者,如果您必须容纳以数字开头的 id 值,正如 Daniel Haley 所说,points out 是 ID 不允许的,您可以将 CDATA 用于 id。
【讨论】:
ID,则 OP 示例中的 id 属性的值将无效(ID 可以t 以数字开头)。
在我看来是的,它可以两者兼得。 id 只是一个类似数量的属性,每个 xml 元素都可以有n 属性。所以它应该可以工作。
但是我无法帮助您解决第二个问题。我从未使用过 DTD 文件。 也许这个转换器可以帮助你:http://bsp.mits.ch/xsd2dtd/
【讨论】: