Jmenné prostory (XML Namespaces)

  • XML Namespaces (W3C Recommendation): http://www.w3.org/TR/REC-xml-names

  • Definují "logické prostory" jmen (elementů, atributů) v XML dokumentu.

  • Dávají uzlům ve stromu XML dokumentu "třetí dimenzi".

  • Logickému prostoru jmen odpovídá jeden globálně ("celosvětově") jednoznačný identifikátor, daný URI (URL).

  • NS odpovídající danému URI nemá nic společného s obsahem nacházejícím se případně na tomto URL ("nic se odnikud automaticky nestahuje").

  • V rámci dokumentů se místo těchto URL používají zkratky, prefixy těchto NS namapované na příslušné URI atributem xmlns:prefix="URI".

  • Dva NS jsou stejné, jestliže se jejich URI shodují po znacích přesně (v kódování UNICODE).

  • NS neovlivňují význam textových uzlů.

  • Element/atribut nemusí patřit do žádného NS.

  • Deklarace NS má platnost na všechny podřazené uzly (dětské rekurentně), dokud není uvedena jiná deklarace "přemapující" daný prefix.

  • Jeden NS je tzv. implicitní (default NS), deklarovaný atributem xmlns=

  • Na atributy se implicitní NS nevztahuje!!!, čili etributy bez explicitního uveení prefixu jsou v NS rodičovského elementu.