【问题标题】:Can an element have both id and attribute at the same time?一个元素可以同时拥有id和attribute吗?
【发布时间】:2017-02-02 02:03:46
【问题描述】:

我知道这个问题可能是微不足道的,但我真的需要知道这些东西。

这是我的确切意思的一个例子:

XML 代码:

<product id="01" quantity="4 peaces"> Chocolate Cake </product>

另外,在这种情况下,DTD 文件中的属性类型声明是什么? 也许是“CDATA”?

【问题讨论】:

    标签: xml database dtd


    【解决方案1】:

    您的示例显示了一个具有两个属性的元素:idquantity。 XML 不限制元素可以拥有的属性数量,因此,是的,一个元素可以同时拥有id(属性)和其他属性 >

    DTD 声明:

    <!ELEMENT product (#PCDATA)>
    <!ATTLIST product 
              id ID #REQUIRED
              quantity CDATA #REQUIRED>
    

    或者,如果您必须容纳以数字开头的 id 值,正如 Daniel Haley 所说,points outID 不允许的,您可以将 CDATA 用于 id

    【讨论】:

    • +1,但值得注意的是,如果在 DTD 中使用了 attribute type ID,则 OP 示例中的 id 属性的值将无效(ID 可以t 以数字开头)。
    【解决方案2】:

    在我看来是的,它可以两者兼得。 id 只是一个类似数量的属性,每个 xml 元素都可以有n 属性。所以它应该可以工作。

    但是我无法帮助您解决第二个问题。我从未使用过 DTD 文件。 也许这个转换器可以帮助你:http://bsp.mits.ch/xsd2dtd/

    【讨论】:

      猜你喜欢
      • 2011-02-18
      • 2018-05-21
      • 1970-01-01
      • 2012-07-18
      • 2012-08-13
      • 2011-03-07
      • 1970-01-01
      相关资源
      最近更新 更多