XSD将元素类型限制为ipadress类型

XSD将元素类型限制为ipadress类型,xsd,Xsd,我限制ipadress元素类型,如ipadress:port。这是代码 <xs:element name = "Ipadress"> <xs:simpleType> <xs:restriction base = "xs:string"> <xs:pattern value = "[0-9][0-9][0-9].[0-9][0-9][0-9].[0-9][0-9][0-9].[0-9][0-9][0-9]:[0-9][0-9][0-9][0-9

我限制ipadress元素类型,如ipadress:port。这是代码

<xs:element name = "Ipadress">
 <xs:simpleType>
  <xs:restriction base = "xs:string">
   <xs:pattern value = "[0-9][0-9][0-9].[0-9][0-9][0-9].[0-9][0-9][0-9].[0-9][0-9][0-9]:[0-9][0-9][0-9][0-9]"/>
  </xs:restriction>
 </xs:simpleType>
</xs:element>

但它不起作用。有些ipadress,例如

<Ipadress> 127.0.0.1:123 </Ipadress>
127.0.0.1:123

将无法验证。

将模式值更改为“\d{1,3}.\d{1,3}.d{1,3}.\d{1,3}:\d{1,3}”

您需要用斜杠(
)转义点(


<xs:element name="Ipadress">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:pattern value="[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9][0-9]:[0-9][0-9][0-9][0-9]"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>

您应该拼写它
ipaddress
<xs:element name="Ipadress">
    <xs:simpleType>
        <xs:restriction base="xs:string">
            <xs:pattern value="[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9][0-9]\.[0-9][0-9][0-9]:[0-9][0-9][0-9][0-9]"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>