У меня есть xml.XSD - Проверить элемент, который является значением атрибута
<a>
<thing tag="song1">
<name>john doe</name>
<email>[email protected]</email>
</thing>
<owner thing="https://stackoverflow.com/a/thing[@tag='song1']">
...
</owner>
</a>
Я хочу утверждать в XSD, что, когда «вещь» с тегом «SONG1» присутствует «владелец» должен иметь вещь = «/ а/вещь [@ тег =» SONG1' ].
Моя логическая попытка в XSD является
<sch:assert
test="(count(a:owner[@thing=a:thing[@tag='song1']]) > 0) = count(a:thing[@tag='song1']) > 0))">Error</sch:assert>
</sch:rule>
Oxygen валидатор дает ошибку для этого XSD. Пожалуйста помоги. Благодарю.