【问题标题】:DTD: How to declare a DTD to must have a element value?DTD:如何声明一个 DTD 必须有一个元素值?
【发布时间】:2010-10-27 11:25:40
【问题描述】:

我想声明我的 DTD 来强制 XML 节点应该有一个值。 例如,我有以下 XML 结构。

<Employees>
   <EmployeeID></EmployeeID>
   <EmployeeName></EmployeeName>
   <EmployeeAddress></EmployeeAddress>
</Employees>

我希望所有 XML 都必须存在 EmployeeID 节点值。所以我想创建一个 DTD 来为 XML 节点设置一个值。

【问题讨论】:

  • 您编写 DTD 而不是 XSD 有什么非常好的理由吗?在 XSD 中,指定 MinOccurs=1... 很简单
  • 抱歉,我只想在 DTD 中这样做。这就是要求。

标签: xml schema dtd


【解决方案1】:

您可以将 EmployeeID 设为属性吗?然后您可以将其声明为 ID 类型...

否则,不,我认为 DTD 没有任何方法要求其值为非空字符串。

你考虑过RelaxNG吗?它功能强大、灵活且不难学习。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-17
    相关资源
    最近更新 更多