использование базы ограничений в XML-схемах для атрибутов - PullRequest
0 голосов
/ 13 января 2012

Мне нужно наложить ограничение на атрибут «да или нет» - но не слишком уверен в том, как его структурировать - я пытаюсь описать ниже, но не уверен, насколько это правильно или неправильно: (совет был бы оценен) спасибо

<xs:element name="DistinctiveMarks">
  <xs:ComplexType>
    <xs:SimpleContent>
      <xs:extension base="xs:string">
        <xs:attribute name="present" type="xs:string">
          <xs:restriction base="xs:string">
            <xs:pattern value="yes|no"/>
          </xs:restriction>
        </xs:attribute>
      </xs:extension>
    </xs:SimpleContent>
  </xs:ComplexType>
</xs:element>

1 Ответ

1 голос
/ 13 января 2012

Это должно работать.Если вы собираетесь использовать его повторно, другой вариант - объявить простой тип.Затем вы можете просто сделать type = MY_YesNoType, включить префикс пространства имен, если он у вас есть.Другой вариант, который может подойти, это использование перечисления.Хорошо, если вы захотите майнить, тогда xsd создаст список опций для ввода данных вместо проверки по регулярному выражению.

...