我的dtd文件出现问题。我正在写这个订单。订单有案例颜色,电池数量,充电器,手臂,相机和语音。我想要做的是结合武器的长度。我的手臂代表客户选择的手臂数量,手臂长度是每只手臂的长度。但我不知道如何在dtd文件中写它。到目前为止,这是我的dtd文件。
<?xml version="1.0"?>
<!DOCTYPE orders [
<! ELEMENT orders (order)>
<! ELEMENT order (case, batteries, recharger, arm, camera, speech)>
<! ELEMENT case (#PCDATA)>
<! ELEMENT batteries (#PCDATA)>
<! ELEMENT recharger (#PCDATA)>
<! ELEMENT arm (#PCDATA)>
<! ELEMENT camera (#PCDATA)>
<! ELEMENT speech (#PCDATA)>
]>
这就是我想显示xml文件时的手臂和长度
<arm> 2
<length> 50 </length>
<length> 75 </length>
</arm>
答案 0 :(得分:1)
您是否尝试将手臂长度作为属性添加到手臂元素?如果是这样,这应该有效:
<!DOCTYPE orders [
<!ELEMENT orders (order)>
<!ELEMENT order (case, batteries, recharger, arm, camera, speech)>
<!ELEMENT case (#PCDATA)>
<!ELEMENT batteries (#PCDATA)>
<!ELEMENT recharger (#PCDATA)>
<!ELEMENT arm (#PCDATA)>
<!ATTLIST arm
length CDATA #REQUIRED>
<!ELEMENT camera (#PCDATA)>
<!ELEMENT speech (#PCDATA)>
]>
如果您不想要length
属性,请将#REQUIRED
更改为#IMPLIED
。
此外,由于您的orders
元素只允许一个order
元素orders
,因此不需要。也许你想允许不止一个order
? (<!ELEMENT orders (order+)>
)