Lokální deklarace

  • lokální deklarace jsou uvnitř globálních

  • nelze je znovuvyužívat z jiných schémat

  • u typů hovoříme o tzv. anonymních typech – nejsou pojmenované a nejde se na ně odvolat

  • u lokálních deklarací elementů/atributů můžeme pomocí atributu form určit, zda mají patřit do cílového jmenného prostoru

    <xs:element name="b" form="qualified" type="xs:string"/>
  • jde nastavit i globálně pro celé schéma – elementFormDefault, attributeFormDefault

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           targetNamespace="urn:x-kosek:schemas:pokus"
           xmlns="urn:x-kosek:schemas:pokus"
           elementFormDefault="qualified">
  <xs:element name="a">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="b" type="xs:string"/>
        <xs:element name="c" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

<a xmlns="urn:x-kosek:schemas:pokus">
  <b>foo</b>
  <c>bar</c>
</a>

<p:a xmlns:p="urn:x-kosek:schemas:pokus">
  <p:b>foo</p:b>
  <p:c>bar</p:c>
</p:a>