以文本方式查看主题

-  中文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=54203)


--  作者:andyhoward
--  发布时间:10/23/2007 9:44:00 AM

--  请教一个约束条件...
我的代码如下:
<xs:element name="Role">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:pattern value=""/>
            <xs:pattern value="([,]([0-9])*)+[,]"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>

我的本意是允许Role中的字符串中的数字以逗号分割,并且字符串的前后都有逗号,即每个数字前后都有一个逗号,并且允许Role中的字符串为空

我用这个约束条件遇到2个问题:
1、当出现两个连续逗号的时候,这个应该是不允许的,但是约束条件并没有报错
2、在XMPSPY中,这个约束条件允许标签内容为空,但是在JDOM中,就不起作用了

请高人帮忙...~


--  作者:luver
--  发布时间:10/25/2007 12:01:00 PM

--  
我用MSXML试了一下也是允许标签内容为空的,
可能是JDOM的XML Schema的设计在这里不符合这个标准
--  作者:andyhoward
--  发布时间:10/29/2007 10:04:00 AM

--  
这个约束条件我想到了,大家看看有没有更简洁的
<xs:element name="havingRole">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:pattern value=""/>
            <xs:pattern value="([,][0-9]([0-9])*)+[,]"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms