假如要表示一个“学生档案”的词汇规则
“学生档案.xml”如下:
<学生档案>
<学生>
<姓名>张三</张三>
<性别>男</性别>
<年龄>20</年龄>
<来源>
<省份>湖南</省份>
<城市>长沙</城市>
</来源>
<班级>A06001</班级>
</学生>
</学生档案>
这个规则文档怎么写
一:用DTD写
<!ELEMENT 学生档案(学生*)>
<!ELEMENT 学生(姓名,性别.年龄,来源,班级)>
<!ELEMENT 姓名(#PCDATA)>
<!ELEMENT 性别(#PCDATA)>
<!ELEMENT 年龄(#PCDATA)>
<!ELEMENT 来源(省份,城市)>
<!ELEMENT 省份(#PCDATA)>
<!ELEMENT 城市(#PCDATA)>
<!ELEMENT 班级(#PCDATA)>
应该没写错吧 错了请指教
用DTD有很多问题出来了
#PCDATA:元素内容只包含字符数据 (姓名可以是数字不,性别可以第三类不,年龄写上一万也是合理的)
这就是DTD文档的局限性
这个用Schema怎么写我就不写了 用Schema是不会出现上面的问题的
我也是刚学 肯定用不对的地方请指教
楼主把Schema写错了
的楼上是用DTD定义的 呵呵
<学生档案>
<学生>
<姓名>张三</张三>
<性别>男</性别>
<年龄>20</年龄>
<来源>
<省份>湖南</省份>
<城市>长沙</城市>
</来源>
<班级>A06001</班级>
</学生>
</学生档案>
Schema
<Schema targetNamespace^不写了后面的 呵呵 >
<element name='学生档案' type='dType'/>
<complexType name='dype'>
<element name='学生'type='stutype'/>
<complexType/>
<complexType name='stuype'>
<element name='姓名' type='string'/>
<element name='性别'type='string'/>
<element name='年龄'type='string'/>
<element name='来源'type='whType'/>
<element name='班级'type='clTpye'/>
<complexType/>
<complexType name='whType'>
<element name='省份' type='string'/>
<element name='城市'type='string'/>
<complexType/>
<simpleType name='clTpye'>
<restriction base='string'>
<pattern value='[A-Z]{0}d{9}'/>
<restriction/>
<simpleType/>
<Schema/>