为社会报错呢,顺便帮我看一下我注释解释的对不对
来源:2-5 XML Schema
qq_ibertine_0
2020-08-23 20:02:10
<?xml version="1.0" encoding="UTF-8"?>
<hr xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hr-schema.xsd">
<employee no="1">
<name>张三</name>
<age>1</age>
<salary>4000</salary>
<department>
<dname>会计部</dname>
<address>大厦A</address>
</department>
</employee>
<employee no="2">
<name>张三</name>
<age>31</age>
<salary>4000</salary>
<department>
<dname>会计部</dname>
<address>大厦A</address>
</department>
</employee>
</hr>
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/hr-schema" xmlns:tns="http://www.example.org/hr-schema" elementFormDefault="qualified">
<element name="hr">
<!-- complextype是只要有子元素就必须加sequence是里面的子元素必须按照下面的顺序写 -->
<complexType>
<sequence>
<element name="employee" minOccurs="1" maxOccurs="999" ><!-- 这里的min,max是employee最少最多有多少 -->
<complexType>
<sequence>
<element name="name" type="string"></element>
<element name="age">
<!-- 下面这个代码simpleType是代表简单类型的约束,res那个是对整形的进行约束,min那个是对最小限制,max最大限制 -->
<simpleType>
<restriction base="integer">
<minInclusive value="18"></minInclusive>
<maxExclusive value="60"></maxExclusive>
</restriction>
</simpleType>
</element>
<element name="salary" type="integer"></element>
<element name="department" >
<complexType>
<sequence>
<element name="dname" type="string"></element>
<element name="address" type="string"></element>
</sequence>
</complexType>
</element>
</sequence>
<!-- 这个意思no这个属性在任何empolyee 节点下都必须存在 -->
<attribute name="no" type="string" use="required"></attribute>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>
4回答
同学你好,hr-schema.xsd中hr-schema是文件名称,xsd是文件的后缀名,hr-schema.xsd和hr.xsd指向的是不同的xsd文件。比如:
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
好帮手慕小班
2020-08-25
同学你好,1、在xsd文件中sequence里的元素的顺序,在xml文件中也必须是这样的书写顺序。同学的理解是正确的。
2、 在hr.xml文件中,同学后来贴出的代码,引用的xsd文件不同
同学是重新创建了一个xsd文件吗?
继续加油 祝:学习愉快~
好帮手慕小班
2020-08-24
同学你好,1、报错是因为在xsd文件中,除了默认的xmlns外,其他的内容会自动生成,这里将其删除即可。
2、complextype是只要有子元素就必须加sequence是里面的子元素必须按照下面的顺序写-->这句话,老师并没有理解同学的意思,在sequence里的元素必须按照顺序书写吗?还麻烦同学具体描述一下。
其余的注释中解释是正确的。
继续加油 祝:学习愉快~
qq_ibertine_0
提问者
2020-08-23
加一个图
相似问题