Xml XSD-复合simpleType验证

Xml XSD-复合simpleType验证,xml,validation,xsd,Xml,Validation,Xsd,我有一个验证IP地址的XSD类型(简化): 注释掉的模式大致可以工作,但没有其子部分那么严格,因为它不执行范围检查。另外,这是验证工作的重复,因为地址、端口和通道验证必须存在,以便进行其他不相关的验证 可以用XSD中的其他simpleType来表示一个XSD simpleType吗? 如果是这样,正确的语法是什么?可能的重复我认为这可以归结为(模化:)创建一个连接两个简单类型的词汇空间的简单类型的问题,这是一个非常好的问题:可能的重复我认为这可以归结为(模化:)对于创建一个连接两个简单类型的词法

我有一个验证IP地址的XSD类型(简化):

注释掉的模式大致可以工作,但没有其子部分那么严格,因为它不执行范围检查。另外,这是验证工作的重复,因为地址、端口和通道验证必须存在,以便进行其他不相关的验证

可以用XSD中的其他simpleType来表示一个XSD simpleType吗? 如果是这样,正确的语法是什么?

可能的重复我认为这可以归结为(模化
)创建一个连接两个简单类型的词汇空间的简单类型的问题,这是一个非常好的问题:可能的重复我认为这可以归结为(模化
)对于创建一个连接两个简单类型的词法空间的简单类型的问题,这是一个非常好的问题:
<xs:simpleType name="ip-address">
  <xs:restriction base="xs:string">
    <xs:pattern value="[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" />
  </xs:restriction>
</xs:simpleType>
<xs:simpleType name="ip-port">
  <xs:restriction base="xs:integer">
     <xs:minInclusive value="1025"/>
     <xs:maxInclusive value="65535"/>
  </xs:restriction>
</xs:simpleType>
<xs:simpleType name="ip-channel">
  <xs:restriction base="xs:integer">
     <xs:minInclusive value="1"/>
     <xs:maxInclusive value="1024"/>
  </xs:restriction>
</xs:simpleType>
<xs:simpleType name="pmc-source">
    <xs:restriction base="xs:string">
      <!--<xs:pattern value="[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}\:[0-9]{1,5}"/-->
      <xs:pattern value="[ip-address]\:[ip-port]\:[ip-channel]"/>
    </xs:restriction>
</xs:simpleType>