1

我写了一个 XML 类型定义,但它不正确。我的错在哪里?我该如何重写它?

  <xs:complexType name="resourceKeyName">
    <xs:simpleContent>
      <xs:restriction base="xs:string">
        <xs:maxLength value="30"/>
        <xs:minLength value="5"/>
        <xs:pattern value="^ref-"/>
      </xs:restriction>   
    </xs:simpleContent>
  </xs:complexType>

====================================

更新

我像这样重写了我的代码:

<xs:complexType name="_inner">
    <xs:simpleContent>
      <xs:extension base="xs:string">
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>  

  <xs:complexType name="resourceKeyName">
    <xs:simpleContent>
      <xs:restriction base="_inner">
        <xs:maxLength value="30"/>
        <xs:minLength value="5"/>
        <xs:pattern value="^ref-"/>     
      </xs:restriction>   
    </xs:simpleContent>
  </xs:complexType>

代码现在是正确的,但我不喜欢这样的解决方案。

4

1 回答 1

0

为什么不:

<xs:simpleType name="resourceKeyName">
    <xs:restriction base="xs:string">
        <xs:maxLength value="30" />
        <xs:minLength value="5" />
        <xs:pattern value="^ref-" />
    </xs:restriction>
</xs:simpleType>

你想要有嵌套元素的类型,还是只是文本内容?如果你想要文本 - 你应该创建xs:simpleType.

于 2012-04-05T12:27:20.233 回答