以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DTD/XML Schema 』  (http://bbs.xml.org.cn/list.asp?boardid=23)
----  请教extension 和restriction的用法  (http://bbs.xml.org.cn/dispbbs.asp?boardid=23&rootid=&id=37962)


--  作者:xiaonamylove
--  发布时间:9/16/2006 10:39:00 AM

--  请教extension 和restriction的用法
最近在学习XMLSchema 的时候看到了一些例子
比如一个元素只有属性和简单类型的内容,可以写成
<element name="xxx">
<complexType>
<simpleContent>
<extension base="基本类型">
<attribute name.......>
</extension>
</simpleContext>
</element>

如果一个元素有属性和复杂类型的内容,可以把<simpleContent>换成<complexContent>,

最后对于有属性而无内容的时候可以写成:
<element name="xxx">
<complexType>
<complexContent>
<restriction base="anyType">
<attribute name.......>
</restriction>
</complexContext>
</element>
我想问的是为什么这里不用extension了,而是用restriction,还有清大虾们给解释一下extension和restriction的用法吧,非常感谢!!!!


--  作者:gemingke
--  发布时间:9/16/2006 10:54:00 AM

--  
extension和restriction的用法,在“常见基本问题2”那个帖子里有,你自己找找。

这里说一下为什么后者用restriction。

anyType从定义上说,是一个很宽泛的Type,可以说,任何Type都被包括在这里面。(当然,实际中你不能把anyType用来替代其他具体的Type)这样的Type就只能用约束的办法来做元素的扩展。至于其他的Type,包括自定义的,就可以用extension和restriction


--  作者:xiaonamylove
--  发布时间:9/16/2006 11:00:00 AM

--  
感谢解答!!!
--  作者:注定孤单
--  发布时间:4/15/2009 12:11:00 AM

--  
没找到这个答案~
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms