我有一个xml文件,我试图针对xsd文件进行验证。工作良好。我想修改xsd以使元素值成为必需的。我如何执行此操作,以便在我验证xml文件时,如果元素FirstName
为空(<FirstName></FirstName>
)
xml文件
<?xml version="1.0" encoding="utf-8" ?>
<Patient>
<FirstName>Patient First</FirstName>
<LastName>Patient Last</LastName>
</Patient>
xsd文件
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Patient">
<xs:complexType>
<xs:sequence>
<xs:element name="FirstName" type="xs:string" />
<xs:element name="LastName" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
答案 0 :(得分:15)
属性 minOccurs 可选。指定任何元素在父元素中出现的最小次数。该值可以是任何数字&gt; = 0.默认值为1。 (默认为必填项)
<!-- mandatory true-->
<xs:element name="lastName" type="xs:string" />
<!-- mandatory false-->
<xs:element name="lastName" type="xs:string" minOccurs="0" />
<xs:element name="lastName" type="xs:string" >
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>