Правило ограничения специальных символов в XSD - PullRequest
0 голосов
/ 16 мая 2010

ограничить специальные символы в моей проверке XSD, я могу обработать некоторые символы с этим шаблоном "([a-zA-Z0-9_. '! @ # $% ^ * () _ + = { } | /:;,>? / `~]) +"

но не в состоянии обработать ниже:

» & ' < \ ® ™

есть идеи?

также не может обрабатывать их с помощью шаблона [^]

Ответы [ 3 ]

5 голосов
/ 03 июня 2010

Вы хотите определить тип, который расширяет строку и добавляет ограничение с шаблоном Что-то вроде

<xs:element name="your_element">
  <xs:simpleType>
    <xs:restriction base="xs:string">
      <xs:pattern value="[a-zA-Z0-9_.' !@#$%^*()_+={}|/:;,>?/`~ ]"/>
    </xs:restriction>
  </xs:simpleType>
</xs:element>
2 голосов
/ 19 февраля 2017

Или вы можете добавить escape-символ \ (обратную косую черту) перед любым специальным символом, который вы хотите добавить в шаблон. Например:

<xs:pattern value="[a-zA-Z 0-9_.,()/=!\[\]&quot;#%&amp;*;&lt;&gt;&apos;+:?-]"/>

где вы видите квадратные скобки [и], включенные в шаблон.

2 голосов
/ 16 мая 2010

Я думаю, вам нужно использовать персонажи. &amp; для амперсанда, например, и &lt; для менее. XML Schema - это XML, и вы должны жить с правилами XML. Расширение вашего вопроса, чтобы фактически показать нам контекст схемы, помогло бы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...