Copyright © 2001 W3C® (MIT, INRIA, Keio), Tots els Drets Reservats. W3C responsabilitat, marca enregistrada, ús del document, i llicència d'ús de programari són aplicables.
Aquest document proposa un mecanisme, similar a l'HTML BASE per a definir els URIs base per a parts de documents XML.
Aquest document ha estat revisat pels membres de W3C i altres parts interesades i ha estat aprovat pel director com una recomanació de W3C. Aquest és un document estable i pot ser usat com material de referència o ser citat com una normativa de referència des d'altre document. El rol de W3C dintre de la realització de la Recomanació és atreure l'atenció sobre aquesta especificació i promoure el seu ampli desplegament. Amb la finalitat d'augmentar la riquesa funcional de la Web i el seu interoperabilitat.
Aquest document ha estat creat pel grup de Treball W3C XML Linking com part de l'Activitat XML en el Domini d'Arquitectura W3C. Per a aprofundir la informació sobre aquest treball, per favor revisar el Informe d'Activitats XML.
Per favor reportar possibles errors en aquest document a la llista pública de correu electrònic www-xml-linking-comments@w3.org (arxius disponibles en http://lists.w3.org/Archives/Public/www-xml-linking-comments/). Qualsevol error confirmat serà documentat en una llista d'errates disponible en http://www.w3.org/2001/06/xmlbase-errata.
La versió en anglès d'aquesta especificació és l'única versió normativa. Informació sobre les traduccions d'aquest document són disponibles en http://www.w3.org/2001/06/xmlbase-translations.
Una llista de les Recomanacions actuals W3C i altres documents tècnics pot ser trobada en http://www.w3.org/TR/.
El llenguatge XML Linking [XLink] defineix al Llenguatge de Marcat Extensible (XML) 1.0 [XML] elaborat per a descriure enllaços entre recursos. Un dels requeriments de base sobre XLink és el suportar HTML [HTML 4.01] enllaçant conceptes d'una forma genèrica. L'element HTML BASE és un dels conceptes que ha estat pres en compte pel grup de Treball XLink. BASE permet als autors especificar clarament el URI base d'un document amb la finalitat de permetre la resolució de URIs relatius en connexions a imatges externes, applets, programes de tractament de formularis, fulles d'estil, i uns altres.
Aquest document descriu un mecanisme per a proveir servei de URI base a XLink, més com una especificació modular, amb la finalitat de que sigui igualment possible de ser usada dintre d'altres aplicacions XML beneficiant-se vaig agafar sobre el control addicional sobre URIs relatius sense haver d'implementar completament XLink i que pot fer ús del mateix. La sintaxi consisteix en un únic atribut XML denominat xml:base.
El desplegament de XML Base està realitzat dintre de les referències reglamentades per les noves especificacions, per exemple XLink i el XML Infoset. Les aplicacions i les especificacions construïdes sobre aquestes noves tecnologies deurien nadivament suportar XML Base. El comportament de l'atribut xml:base dintre de les aplicacions basades sobre les especificacions que no tenen referències normatives directes o indirectes dintre de XML Base no està definit.
[Definició: Les paraules clau "DEU" ( Must, Shall ), "NO DEU" ( Must not, Shall not), "DEURIA" ( Should), "NO DEURIA" (Should not), "RECOMANAT" (Recommended), "REQUERIT" ( Required), "PODRIA" (May), i "OPCIONAL" ( Optional) en aquesta especificació deuran ser interpretats com està descrit en [IETF RFC 2119].]
Els termes URI Base i URI Relativo Relatiu són usats en aquesta especificació en la forma que han estat definits en [IETF RFC 2396].
xml:baseL'atribut xml:base pot inserit en documents XML per a especificar un URI base d'altre URI base del document o de l'entitat externa. El valor d'aquest atribut és interpretat com un URI Referència com està definit en RFC 2396 [IETF RFC 2396], després de ser processat d'acord a la Secció 3.1.
Dintre de processadors XML capaços d'interpretar els Espais de Noms (namespace), el prefix "xml" està dedicat a l'Espai del Nom (namespace) http://www.w3.org/XML/1998/namespace tal com s'ha descrit en el document d'Espai de Noms (namespace) en XML [XML Names]. Noti que xml:base poden ser encara usats pels processadors XML, que no comprenen els Espais de Noms (namespace).
Un exemple de xml:base en un document simple contenint XLinks seguits. XLink normativament fa referència a XML Base per a interpretació de URI relatius que fan referència els atributs xlink:href.
<?xml version="1.0"?>
<doc xml:base="http://example.org/today/"
xmlns:xlink="http://www.w3.org/1999/xlink">
<head>
<title>Virtual Library</title>
</head>
<body>
<paragraph>
Veure <link xlink:type="simple" xlink:href="new.xml">what's new</link>!
</paragraph>
<paragraph>
Check out the hot picks of the day!
</paragraph>
<olist xml:base="/hotpicks/">
<item>
<link xlink:type="simple" xlink:href="pick1.xml">Hot Pick #1</link>
</item>
<item>
<link xlink:type="simple" xlink:href="pick2.xml">Hot Pick #2</link>
</item>
<item>
<link xlink:type="simple" xlink:href="pick3.xml">Hot Pick #3</link>
</item>
</olist>
</body>
</doc>
Els URIs en aquest exemple són transformats en URIs complets com s'indica:
El joc de caràcters autoritzats en els atributs xml:base és el mateix que per XML, denominat [Unicode]. No obstant això, alguns caràcters Unicode no són permesos entre les referències del URI, i d'aquesta manera els processadors deuen codificar i evitar aquests caràcters per a tenir una referència URI vàlida a partir del valor de l'atribut.
Els caràcters no permesos inclouen tots els caràcters no-ASCII, més els caràcters exclosos llistats en la Secció 2.4 de [IETF RFC 2396], a excepció del símbol numeral () i el símbol percentatge (%) i els caràcters de parèntesis quadrats permesos en [IETF RFC 2732]. Els caràcters no permesos deuen ser evitats de la següent manera:
RFC 2396 [IETF RFC 2396] proveeix la manera d'incloure URI base a l'interior d'un document. Les regles per a determinar el URI base pot ser recapitulats com s'indica (en ordre de més alta prioritat a la menor factible):
NOTA: El terme "entitat" en els punts #2 i #3 precedents utilitzen la definició del terme explicada en RFC 2396. En altres parts d'aquest document el terme "entitat" és usat en el context XML.
Els URIs relatius presentats en un document XML són sempre resolts tant com per a un element, una entitat document, o una entitat externa. No hi ha manera de definir una granularitat més fina, que aquella una informació sobre la base d'un nivell atribut, caràcter, o entitat. Cap entitat interna, que sigui declarada en el l'arranjament intern o en un DTD extern, ni en el text de posició lliure (el text no inclòs en dintre d'un element) en una entitat externa, són considerats a definir un URI base separat del URI base prenent en compte l'entitat que fa referencia.
El URI base d'una entitat document o en una entitat externa està determinat per les regles del RFC 2396, el que vol dir, que el URI base és el URI usat per a extreure l'entitat document o l'entitat externa.
El URI base d'un element:
xml:base sobre l'element, si aquell existeix, sinó...El URI base corresponent a un URI relatiu dau en un document XML és determinat com segueix:
xml:base és el URI base de l'element patern de l'element que suporta a l'atribut xml:base, si aquell existeix a l'interior de l'entitat document o de l'entitat externa, sinó és el URI base de l'entitat document o entitat externa el qual conté l'element.NOTA: La presència d'atributs
xml:basepodria donar lloc a resultats inesperats en el cas on el valor de l'atribut està prvisto , no directament dintre de l'entitat del document XML, sinó a travéz d'un atribut de defecte declarat en una entitat externa. Tals declaracions poden no ser leidas per programari que està basat en un processador XML no validat. Moltes aplicacions XML fallen al no exigir cap validació dels processadors XML. Per a un funcionament correcte amb aquelles aplicacions, els valors dexml:basedeuran ser proveïts directament o per atributs per defecte declarats en el subarreglo intern de DTD.
Una aplicació està en conformada XML Base si aquella determina URIs base d'acord a les condicions definides en aquesta especificació.
XML Base defineix un mecanisme per a incloure la informació de URI base a l'interior d'un document XML. El mateix que no defineix un mecanisme per a reconèixer el seu contingut o els atributs de valor que poden contenir URIs. Això és únicament definit per les especificacions o aplicacions que assignen semàntica al vocabulari.
Una de les intencions de XML Base és que les futures especificacions i revisions de vocabularis XML identifiquin aquelles parts del document XML que són considerades com URIs, i proveir referència normativa a aquesta especificació amb la finalitat d'assegurar que URIs relatius siguin tractats d'una manera consistent al llarg de documents XML.
L'impacte de XML Base sobre altres estàndards (a la data de publicació d'aquest document) són descrites a continuació:
xml:base impedeixen aquests aquests URIs ser afectats pel valor de xml:base.xml:base amb la finalitat d'identificar els espais de nom. Els procés d'alt nivell que diferencien espais de nom URIs no són coberts per les especificacions d'Espai de Nom i podrien a la seva opció especificar que xml:base deu servir amb les necessitats d'extracció de recursos d'aquells URIs.xml:base.uriReference. L'especificació sobre els tipus de dades XML pot exigir que les aplicacions que reconeixen aquest tipus de dades i resolen d'ells URIs deuen prendre en compte a XML Base.