强制使用xsd元素

Cha*_*ani 12 xml xsd

我有一个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>
Run Code Online (Sandbox Code Playgroud)

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>
Run Code Online (Sandbox Code Playgroud)

Xst*_*ian 22

强制性

属性minOccurs可选.指定任何元素在父元素中出现的最小次数.该值可以是任何数字> = 0.默认值为1. (默认为必填)

<!-- mandatory true-->
<xs:element name="lastName" type="xs:string" />
<!-- mandatory false-->
<xs:element name="lastName" type="xs:string" minOccurs="0" />
Run Code Online (Sandbox Code Playgroud)

不是空的

<xs:element name="lastName" type="xs:string" >
  <xs:simpleType>
     <xs:restriction base="xs:string">
       <xs:minLength value="1"/>
     </xs:restriction>
  </xs:simpleType>
</xs:element>
Run Code Online (Sandbox Code Playgroud)