English | >> česky <<ZVON > Tutorials > Schematron Tutorial
>> Příklad 9 << | Předešlý | Následující | Obsah

Autor: Nic Miloslav

Popis

Element musí mít atribut "id", pokud je uvnitř jiného elementu, jinak tento atribut mít nesmí

Schema


<schema xmlns="http://www.ascc.net/xml/schematron" >
     <pattern name="Test atributu">
          <rule context="CCC">
               <report test="parent::BBB and not(@id)">Atribut "id" chybí</report>
               <report test="not(parent::BBB) and @id">Atribut "id" je ve použit ve špatném kontextu</report>
          </rule>
     </pattern>
</schema>

Zdroje a výstupy

Zdroj (XML 1)Výstup

<AAA>
     <CCC/>
     <CCC/>
     <BBB>
          <CCC id="Q1"/>
     </BBB>
</AAA>
 Pattern: Test atributu


Zdroj (XML 2)Výstup

<AAA>
     <CCC id="Q2"/>
     <CCC/>
     <BBB>
          <CCC id="Q1"/>
     </BBB>
</AAA>
 Pattern: Test atributu
/AAA/CCC[1]: Atribut "id" je ve použit ve špatném kontextu


Zdroj (XML 3)Výstup

<AAA>
     <CCC/>
     <CCC/>
     <BBB>
          <CCC/>
     </BBB>
</AAA>
 Pattern: Test atributu
/AAA/BBB/CCC: Atribut "id" chybí