Я работаю с Relax NG compact и хочу сопоставить атрибут со значением, не равным слову "software"
Например,
<foo type="bar">
ОК
<foo type="foobar">
ОК
<foo type="software">
НЕ ОК
Я получаю ошибки, когда пытаюсь создать шаблон с негативным прогнозом
attribute type { xsd:string { pattern = '^(?!.*software).*$' }}
Есть идеи, какие у меня есть варианты?
Спасибо