Я создал утверждения в схеме xsd 1.1, которые содержат регулярные выражения.Предполагается, что выражения исключают римские числа и числа, которые имеют точку и пробел после них, от начала значения элемента.Из того, что я прочитал, мне не нужно привязывать регулярное выражение в схеме xsd b / c, оно должно уже применяться к началу (возможно, я неправильно понял).Я не могу ограничить регулярные выражения началом.
XSD:
<xs:element name="node123">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:assertion test="not(matches($value, '[\d].*\.\s.|[I].*\.\s.*|[V].*\.\s.*|[X].*\.\s.*|[L].*\.\s.*|[C].*\.\s.*'))"/>
<xs:assertion test="not(starts-with($value, '-'))"/>
<xs:assertion test="not(starts-with($value, '–'))"/>
<xs:assertion test="not(starts-with($value, '—'))"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
Ложные срабатывания:
Mismash of Fid.Р. Крим.Z
Отправлено CO D
Я не могу использовать начальные числа с числовыми выражениями b / c, которые вообще не работают.Однако когда я начинаю с других выражений, это не относится ко всему значению элемента.
Можно ли ограничить выражения только первыми словами или началом элемента?