Spazio dei nomi

In generale, uno spazio dei nomi identifica in modo univoco un insieme di nomi in modo che non vi siano ambiguità quando oggetti con origini diverse ma gli stessi nomi vengono mescolati insieme. Utilizzando l'Extensible Markup Language (XML), uno spazio dei nomi XML è una raccolta di tipi di elementi e nomi di attributi. Questi tipi di elementi e nomi di attributi sono identificati in modo univoco dal nome dello spazio dei nomi XML univoco di cui fanno parte. In un documento XML, qualsiasi tipo di elemento o nome di attributo può quindi avere un nome in due parti costituito dal nome del suo spazio dei nomi e quindi dal suo nome locale (funzionale).

Ad esempio, supponiamo che lo stesso documento XML includa il tipo di elemento OWNER per i proprietari di motociclette e per i proprietari di automobili. Potrebbe essere necessario o desiderabile sapere che il nome di un proprietario era uno di quelli che possedevano un motociclo piuttosto che un'automobile. Avere diversi spazi dei nomi per motociclette e automobili lo renderebbe possibile. In effetti, consentirebbe di etichettare i proprietari di motociclette in modo diverso rispetto ai proprietari di automobili senza dover creare un diverso tipo di elemento per ciascuno.

In XML, a uno spazio dei nomi viene comunemente assegnato il nome di un URI (Uniform Resource Identifier), come l'indirizzo di un sito Web, sia perché lo spazio dei nomi può essere associato al sito o alla pagina di tale URI (ad esempio, il nome di una società) che perché è conveniente che un URI sia un nome univoco. Si noti che l'URI non deve essere necessariamente utilizzato se non come nome né esiste alcun documento dello spazio dei nomi o schema XML a cui è necessario accedere; l'URI viene semplicemente utilizzato come nome (e parte del nome in due parti di qualsiasi tipo di elemento o nome di attributo in modo che i nomi siano univoci all'interno del documento).