以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DTD/XML Schema 』  (http://bbs.xml.org.cn/list.asp?boardid=23)
----  如何约束每个元素的子元素数量相等  (http://bbs.xml.org.cn/dispbbs.asp?boardid=23&rootid=&id=34929)


--  作者:djwc
--  发布时间:6/27/2006 3:59:00 PM

--  如何约束每个元素的子元素数量相等
<authors>
  <author>
    <name></name>
    <name></name>
  </author>
  <author>
    <name></name>
    <name></name>
  </author>
<author>
    <name></name>
    <name></name>
  </author>
</authors>

请问如何使得每个<author>元素下的<name>元素的数量相等?


--  作者:gemingke
--  发布时间:6/27/2006 5:59:00 PM

--  
套用同样的type就行
--  作者:djwc
--  发布时间:6/28/2006 11:42:00 AM

--  
什么是type啊?能给个schema片断吗?另外不知我是否说清楚,以上例子中,<name>元素的数量是不确定的,由不同的用户各自产生,可能是1个、10个等,但不管是多少都必须相同数量。比如以下的就无法通过验证:
<authors>
  <author>
    <name></name>
    <!--因为少了一个<name>所以不能通过验证-->
  </author>
  <author>
    <name></name>
    <name></name>
  </author>
<author>
    <name></name>
    <name></name>
  </author>
</authors>

--  作者:gemingke
--  发布时间:6/28/2006 12:23:00 PM

--  
这样子阿。我认为 schema无法做到。“<name>元素的数量是不确定的”就表明得用maxoccured=unbounded来限制。但是这样的限制,无法满足每个author下的name元素数目相同。

可能还得借助程序才能实现。


--  作者:GigiKie
--  发布时间:7/4/2006 7:13:00 PM

--  
用DTD吧,简单方便.
先用个空间名称区别author/name,然后一个个列出来限制就ook
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms