Jmenné prostory

  • slouží k rozlišení elementů a atributů se shodnými jmény v případech kdy by mohlo dojít ke konfliktům

  • aplikace si vybere jen ty části dokumentu, které umí zpracovat

    • kombinování více „sad značek“ dohromady

    • např.: XSLT styly (XSLT instrukce × HTML kód), XHTML stránka s obrázky v SVG, …

  • jména a elementů a atributů se skládají ze dvou částí – ze jmenného prostoru a z lokálního názvu

  • jmenné prostory se identifikují pomocí URI adresy, ale nic konkrétního se na ní nevyskytuje, slouží pouze jako identifikátor

  • pro zkrácení zápisu se při deklaraci jmenného prostoru vytvoří prefix, který jmenný prostor zastupuje:

    <prefix:element xmlns:prefix="http://example.org/neco"> …
    </prefix:element>
  • prefixy je možné použít i u atributů a elementů obsažených v elementu s deklarací

Příklad 6. Dokument se jmennými prostory

<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" 
      xmlns:svg="http://www.w3.org/2000/svg">
  <head>
    <title>Ukázka webové stránky 
           s vektorovým obrázkem</title>
  </head>
  <body>
    <p>Zajímavý obrázek:</p>
    <svg:svg width="4in" height="3in">
      <svg:desc>This is a blue circle with 
                a red outline</svg:desc>
      <svg:g>
        <svg:circle style="fill: blue; stroke: red" cx="200" 
                    cy="200" r="100"/>
        <svg:text x=".5in" y="2in">Hello World</svg:text>
      </svg:g>
    </svg:svg>
  </body>
</html>