【问题标题】:How can i limit the number of characters i can put in an element through DTD?如何限制通过 DTD 放入元素中的字符数?
【发布时间】:2020-12-12 22:07:01
【问题描述】:

例如我有这个代码

<order id_order="l9992223"></order>

并且通过 DTD,我想将最大字符数限制为 8,并且它只能以字母开头,但我不知道 dtd 代码应该如何,没有我想要的限制

<!ELEMENT order>
<!ATTLIST order
id_order CDATA #REQUIRED>

我不知道从哪里开始,我整个下午都在拉头发,因为我不知道如何使用 DTD,所以如果你知道如何解决它,请提前感谢

【问题讨论】:

  • 您需要为此使用更好的架构语言,例如 XSD 或 RelaxNG。

标签: xml dtd


【解决方案1】:

您可以在 DTD 中使用 &lt;!ATTLIST&gt; 条目指定的限制非常有限且简单。您可以将CDATA 用于“任何可能的字符串”、特殊的tokenized types 或带有enumerations 的可能值的显式列表。除非你想用

定义所有可能的值
<!ATTLIST order
id_order (1|2|3|4|5|6|.....) #REQUIRED>

无法将属性值限制为 8 个字符。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-28
    • 1970-01-01
    • 2023-01-04
    相关资源
    最近更新 更多