如何声明空或非空 dtd 元素

发布于 2024-11-30 04:12:00 字数 366 浏览 1 评论 0原文

如何在 DTD 中声明自闭合或包含元素的元素?我找到了 * 运算符,但我无法验证这是否也可以验证空元素。

我已经尝试过这个,但它在 Visual Studio 中给出编译错误,指出未声明 EMPTY 元素:

<!ELEMENT File (Annotations|EMPTY)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>

或者我可以尝试以下操作,但我无法验证它是否正常:

<!ELEMENT File (Annotations?)>
...

How can I declare an element in DTD that is self-closing or contains elements? I have found the *-operator, but I can't verify if this can also validate empty elements.

I have tried this, but it gives a compilation error in Visual Studio saying that the EMPTY element is not declared:

<!ELEMENT File (Annotations|EMPTY)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>

Or I could try the following, but I can't validate if it is ok:

<!ELEMENT File (Annotations?)>
...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

阳光下慵懒的猫 2024-12-07 04:12:00

是的,您的 File 元素声明是正确的:

<!ELEMENT File (Annotations?)>

您所说的是 File 可以包含零个或一个 Annotations 元素。

另外,如果您使用 * 而不是 ?,您会说 File 可以包含零个或更多< /em> 注释 元素。

有效示例:

<!DOCTYPE File [
<!ELEMENT File (Annotations?)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>
]>
<File/>

<!DOCTYPE File [
<!ELEMENT File (Annotations?)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>
]>
<File></File>

<!DOCTYPE File [
<!ELEMENT File (Annotations?)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>
]>
<File>
  <Annotations/>
</File>

Yes, your element declaration for File is correct:

<!ELEMENT File (Annotations?)>

What you're saying is that File can contain zero or one Annotations element.

Also, if you would've used * instead of ?, you would've been saying File can contain zero or more Annotations elements.

Valid examples:

<!DOCTYPE File [
<!ELEMENT File (Annotations?)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>
]>
<File/>

<!DOCTYPE File [
<!ELEMENT File (Annotations?)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>
]>
<File></File>

<!DOCTYPE File [
<!ELEMENT File (Annotations?)>
<!ELEMENT Annotations (State*)>
<!ELEMENT State EMPTY>
]>
<File>
  <Annotations/>
</File>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文