Qualcuno sa qual è l'uso esatto di xmlns
in HTML, file XML?qual è l'uso esatto di xmlns in xml e html
Modifica: Perché abbiamo bisogno di questo spazio dei nomi? Qual è il suo utilizzo?
Qualcuno sa qual è l'uso esatto di xmlns
in HTML, file XML?qual è l'uso esatto di xmlns in xml e html
Modifica: Perché abbiamo bisogno di questo spazio dei nomi? Qual è il suo utilizzo?
L'attributo xmlns
dichiara un XML Namespace. Lo standard Namespaces in XML discute questo elemento in profondità.
Gli spazi dei nomi sono utilizzati principalmente per evitare conflitti tra i nomi degli elementi quando si mescolano i linguaggi XML. Se hai una particolare applicazione in cui hai domande, forse potresti pubblicare un esempio.
Gli spazi dei nomi consentono di ridurre l'ambiguità in caso di duplicati. Potresti avere un tag <title>
che fa riferimento agli autori e al tag <title>
che fa riferimento a un saluto, come Mr., Mrs. ecc. Per differenziare, puoi assegnarli a spazi dei nomi diversi.
È anche possibile utilizzare gli spazi dei nomi durante la convalida dei documenti per la conformità a un particolare standard/restrizioni, in cui lo spazio dei nomi indica a quale "schema" appartiene il documento.
I namespace XML aiutano a contestualizzare elementi e attributi, tra le altre cose. Offre anche un'identificazione precisa per un particolare elemento o attributo.
Ad esempio, l'elemento <html>
può essere definito da chiunque e ha un significato. Tuttavia, l'elemento <html>
all'interno dello spazio dei nomi http://www.w3.org/1999/xhtml è univoco e si riferisce all'XHTML.
Gli spazi dei nomi si rivelano utili anche quando si utilizza lo homographs, quando si utilizzano più linguaggi XML in un singolo file.
L'attributo xmlns
ha una gestione speciale, che consente la dichiarazione di uno spazio dei nomi.
Tutti i nomi, come i nomi di tag, in un documento appartengono a uno spazio dei nomi. In assenza dell'attributo xmlns
tutti i nomi appartengono allo spazio dei nomi "senza nome". Quindi: -
<root><item /></root>
Nell'esempio di cui sopra sia root
e item
sono nomi nello spazio dei nomi "no name". Considerando quanto segue: -
<root xmlns="urn:mydomain.com:mystuff"><item /></root>
Ora root
e item
esistere nella "urn: mydomain.com: MioAsk" namespace.
Il xmlns
può inoltre definire ulteriori elementi namespace di cui possono essere distinti dagli altri utilizzando un prefisso alias: -
<root xmlns="urn:mydomain.com:mystuff" xmlns:a="urn:otherdomain.com:other">
<item>
<a:supplement />
</item>
</root>
In questo caso root
e item
continuano ad essere in "urna: mydomain.com : mystuff "namespace ma a:supplement
indica che il nome supplement
è nello spazio dei nomi" urna: otherdomain.com: altro ".
Che cosa significa?
X in XML sta per eXtensible. Un obiettivo è consentire l'aggiunta di informazioni su un documento esistente, ad esempio la possibilità di estendere il documento. Considerare: -
Parte A creare un documento: -
<root>
<item />
<root>
Partito B estende il documento includendo ulteriori informazioni: -
<root>
<item />
<supplement />
</root>
tardi Partito Una aggiunge nuove informazioni alla loro forma originale di il documento e solo così capita di usare anche il nome supplement
nel loro originale. Potremmo finire con qualcosa come: -
<root>
<item />
<supplement />
<supplement />
</root>
Quale elemento di supplemento appartiene a quale parte? Utilizzando gli spazi dei nomi del documento sarebbe simile a questa: -
<root xmlns="urn:mydomain.com:mystuff" xmlns:a="urn:otherdomain.com:other">
<item />
<supplement />
<a:supplement />
</root>
Ora, quando si tratta di analisi e l'interrogazione XML suo chiaro quale elemento appartiene a chi. Gli spazi dei nomi eliminano la collisione tra ciò che altrimenti sarebbe un insieme globale di nomi semplici.
Perché dovremmo utilizzare il nome di dominio come ns? Grazie ... – Tarik
Quando si utilizza la forma dell'urna è consigliabile utilizzare un nome di dominio di cui si è proprietari poiché è altamente improbabile che altri utilizzino un nome di dominio che non possiedono nelle loro definizioni dell'urna. In altri casi è possibile utilizzare un URL. – AnthonyWJones
In HTML, xmlns è solo un talismano per semplificare lo spostamento da e verso XHTML. Non fa nulla.
Vedere anche http://stackoverflow.com/questions/5875021/questo-è-del-uso-di-xsischemalocation/28098405#28098405 – rogerdpack