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

Autor: Nic Miloslav

Popis

Test, zda je element prázdný

Schema


<schema xmlns="http://www.ascc.net/xml/schematron" >
     <pattern name="Vyber prázdné elementy CCC">
          <rule context="CCC">
               <assert test="normalize-space(.) and *">Zdroj obsahuj prázdný element CCC </assert>
               <report test="normalize-space(.) = ''">[1] Element CCC neobsahuje žádný text</report>
               <assert test="normalize-space(.)">[2] Element CCC neobsahuje žádný text</assert>
               <report test="not(*)">[1] Element CCC neobsahuje žádný přímé potomky</report>
               <assert test="*">[2] Element CCC neobsahuje žádný přímé potomky</assert>
          </rule>
     </pattern>
</schema>

Zdroje a výstupy

Zdroj (XML 1)Výstup

<AAA>
     <BBB>
          <CCC/>
     </BBB>
</AAA>
 Pattern: Vyber prázdné elementy CCC
/AAA/BBB/CCC: Zdroj obsahuj prázdný element CCC
/AAA/BBB/CCC: [1] Element CCC neobsahuje žádný text
/AAA/BBB/CCC: [2] Element CCC neobsahuje žádný text
/AAA/BBB/CCC: [1] Element CCC neobsahuje žádný přímé potomky
/AAA/BBB/CCC: [2] Element CCC neobsahuje žádný přímé potomky


Zdroj (XML 2)Výstup

<AAA>
     <BBB>
          <CCC>Jsem element CCC</CCC>
     </BBB>
</AAA>
 Pattern: Vyber prázdné elementy CCC
/AAA/BBB/CCC: Zdroj obsahuj prázdný element CCC
/AAA/BBB/CCC: [1] Element CCC neobsahuje žádný přímé potomky
/AAA/BBB/CCC: [2] Element CCC neobsahuje žádný přímé potomky


Zdroj (XML 3)Výstup

<AAA>
     <BBB>
          <CCC>
               <DDD/>
          </CCC>
     </BBB>
</AAA>
 Pattern: Vyber prázdné elementy CCC
/AAA/BBB/CCC: Zdroj obsahuj prázdný element CCC
/AAA/BBB/CCC: [1] Element CCC neobsahuje žádný text
/AAA/BBB/CCC: [2] Element CCC neobsahuje žádný text