XLink

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

XLink è un linguaggio XML di markup usato per creare collegamenti ipertestuali nei documenti XML. Xlink è una specifica W3C che delinea metodi per creare collegamenti (link) tra risorse in documenti XML, sia interne che esterne al documento.

Specifica XLink[modifica | modifica wikitesto]

La versione corrente di XLink è la 1.0 e ha ricevuto la certificazione W3C il 27 giugno 2001[1][2][3].

Collegamento con XLink[modifica | modifica wikitesto]

XLink definisce un insieme di attributi che possono essere aggiunti agli elementi di altri spazi dei nomi XML. XLink fornisce due tipi di collegamenti ipertestuali da utilizzare nei documenti XML. I collegamenti semplici collegano solo due risorse, simili ai collegamenti HTML. I collegamenti estesi possono collegare un numero arbitrario di risorse.

Link semplici[modifica | modifica wikitesto]

Un link semplice crea un collegamento ipertestuale unidirezionale da un elemento a un altro tramite un URI . Esempio:

<? xml version = "1.0"?> <document xmlns = "http://example.org/xmlns/2002/document" xmlns: xlink = "http://www.w3.org/1999/xlink" > < voce id = "someHeading" > qualche documento </ heading> <para> Ecco <anchor xlink: type = "semplice" xlink: href = "#someHeading" > un link </ anchor> all'intestazione. </para> <para> È un'ancora che punta all'elemento con l'id "someHeading" nella pagina corrente. </para> </document>

Link estesi[modifica | modifica wikitesto]

I link estesi consentono a più risorse, remote o locali, di essere collegate da più archi. Un arco ("arc") è un'informazione sull'origine, la destinazione e il comportamento di un collegamento tra due risorse. Le risorse di origine e destinazione sono definite da etichette. Utilizzando uno o più archi, un collegamento esteso può ottenere set specifici di connessioni tra più risorse.

Ad esempio se a tutte le risorse in un collegamento esteso fosse assegnata l'etichetta A, un arco all'interno di quel collegamento che dichiara formerebbe connessioni tra tutte le risorse: from="A", to="A"

I collegamenti estesi non devono essere contenuti nello stesso documento degli elementi a cui si collegano. Ciò rende possibile associare metadati o altre informazioni supplementari alle risorse senza modificare tali risorse.

XLink supporta anche informazioni più ricche sui tipi di collegamento e sui ruoli di ciascuna risorsa in un arco.

Supporto per XLink[modifica | modifica wikitesto]

All'interno di altre specifiche[modifica | modifica wikitesto]

SVG[modifica | modifica wikitesto]

I collegamenti ipertestuali in Scalable Vector Graphics possono essere definiti come XLink semplici. La bozza di lavoro di SVG 1.2 propone di utilizzare anche XLink estesi. Nella specifica SVG 2, XLink è stato deprecato a favore di attributi equivalenti senza spazi dei nomi[4].

RDDL[modifica | modifica wikitesto]

Il Resource Directory Description Language, un'estensione di XHTML Basic utilizzata per descrivere gli spazi dei nomi XML, utilizza XLink semplici[5].

XBRL[modifica | modifica wikitesto]

L'eXtensible Business Reporting Language ha utilizzato XLink semplici ed estesi sin dalla pubblicazione della specifica XBRL 2.0 nel 2001. La maggior parte delle tassonomie XBRL di grandi dimensioni contiene basi di collegamento estese. A partire dal 2009 XBRL è probabilmente l'uso più esteso di XLink nei sistemi di produzione[6].

METS[modifica | modifica wikitesto]

Il Metadata Encoding and Transmission Standard, supportato e gestito dalla Library of Congress per descrivere le aggregazioni di file, utilizza XLink semplici per indicare le posizioni dei file e basi di collegamento che descrivono le relazioni tra file esterni (sebbene questi limitino toe gli fromattributi siano di tipo IDREF invece di NMTOKEN)[7][8].

GML[modifica | modifica wikitesto]

Geography Markup Language utilizza XLink semplici per implementare i riferimenti. In particolare GML utilizza xlink: href per supportare un modello grafico per le informazioni geospaziali. Il modello grafico di GML è essenzialmente lo stesso di RDF, su cui erano basate le prime versioni di GML. La specifica GML vincola la semantica di XLink in modo che sia essenzialmente la stessa di rdf: resource (dalla sintassi RDF/XML) cioè il referente può essere logicamente messo in linea e i dati sono ancora validi.

Implementazioni[modifica | modifica wikitesto]

Mozilla Firefox[modifica | modifica wikitesto]

Mozilla Firefox ha supportato XLink semplici dalla versione 1.5, ma solo per i documenti SVG e MathML. Non è supportato in altri documenti XML[9]. Solo xlink:href, xlink:show, xlink:targete xlink:titlesono supportati gli attributi[10].

Prince[modifica | modifica wikitesto]

Prince (precedentemente Prince XML) è un programma per computer che converte documenti XML e HTML in file PDF applicando i Cascading Style Sheets (CSS). Prince è un prodotto commerciale che può essere scaricato e utilizzato gratuitamente per scopi non commerciali[11]. Prince supporta XLink semplici[12].

Attributi e valori[modifica | modifica wikitesto]

Riferimento agli attributi XLink[13]
Attributo Valore Descrizione
xlink:actuate onLoad

onRequest other none

Definisce quando la risorsa collegata viene letta e visualizzata:
  • onLoad - la risorsa deve essere caricata e visualizzata quando viene caricato il documento
  • onRequest - la risorsa non viene letta o visualizzata prima che venga fatto clic sul collegamento
xlink:href URL Specifica l'URL a cui collegarsi
xlink:show embed

new replace other none

Specifica dove aprire il collegamento. L'impostazione predefinita è "replace"
xlink:type simple

extended locator arc resource title none

Specifica il tipo di collegamento

XPointer e XLink[modifica | modifica wikitesto]

XPointer è un sistema per indirizzare i componenti dei media Internet basati su XML. È suddiviso in quattro specifiche: un " framework " che costituisce la base per identificare i frammenti XML, uno schema di indirizzamento degli elementi posizionali, uno schema per gli spazi dei nomi e uno schema per l'indirizzamento basato su XPath. XPointer Framework è una raccomandazione del W3C dal marzo 2003[14].

In questo esempio sono stati usati XPointer e XLink per puntare a una parte specifica di un altro documento[13]. Il seguente documento XML è quello a cui si collega il documento XML successivo:

<?xml version="1.0" encoding="UTF-8"?>
<dogbreeds>
<dog breed="Rottweiler" id="Rottweiler">
  <picture url="https://dog.com/rottweiler.gif" />
  <history>Gli antenati del Rottweiler erano probabilmente romani</history>
  <temperament>Sicuro, audace, vigile e imponente, il Rottweiler
  è una scelta popolare per la sua capacità di proteggere ...</temperament>
</dog>

<dog breed="FCRetriever" id="FCRetriever">
  <picture url="https://dog.com/fcretriever.gif" />
  <history>Uno dei primi usi del recupero dei cani era quello di
  aiutare i pescatori a recuperare i pesci dall'acqua ...</history>
  <temperament>Il cane da riporto piatto è un dolce, esuberante,
  cane vivace che ama giocare e recuperare ....</temperament>
</dog>

</dogbreeds>

Il seguente documento XML contiene collegamenti a ulteriori informazioni sulla razza per ciascuno dei cani, collegandosi al documento di cui sopra:

<?xml version="1.0" encoding="UTF-8"?>
<mydogs xmlns:xlink="http://www.w3.org/1999/xlink">
<mydog>
  <description>
Anton è il mio cane preferito. Ha vinto molti .....
  </description>
  <fact xlink:type="simple" xlink:href="https://dog.com/dogbreeds.xml#Rottweiler">
Fatto su Rottweiler
  </fact>
</mydog>
<mydog>
  <description>
Plutone è il cane più dolce della terra ...  </description>
  <fact xlink:type="simple" xlink:href="https://dog.com/dogbreeds.xml#FCRetriever">
Fatto su Retriever con rivestimento piatto
  </fact>
</mydog>

</mydogs>

Note[modifica | modifica wikitesto]

  1. ^ XML Linking Language (XLink) Version 1.1, W3C, 6 maggio 2010.
  2. ^ XML Linking Language (XLink) Version 1.0, W3C, 8 giugno 2006.
  3. ^ XML and Semantic Web W3C Standards Timeline (PDF), su dblab.ntua.gr. URL consultato il 22 febbraio 2021 (archiviato dall'url originale il 24 aprile 2013).
  4. ^ Linking — SVG 2, su w3.org. URL consultato il 18 settembre 2016.
  5. ^ Jonathan Borden e Tim Bray, Resource Directory Description Language (RDDL), The Open Healthcare Group, Antarcti.ca Systems, 18 febbraio 2002.
  6. ^ Extensible Business Reporting Language (XBRL) 2.1 - XLink in XBRL, XBRL International Inc..
  7. ^ METS: An Overview & Tutorial, Library of Congress.
  8. ^ Metadata Encoding and Transmission Standard: Primer and Reference Manual (PDF), Library of Congress, settembre 2007, p. 133.
  9. ^ XLink - MDC, Mozilla. URL consultato il 22 febbraio 2021 (archiviato dall'url originale il 6 aprile 2012).
  10. ^ SVG in Firefox, Mozilla. URL consultato il 22 febbraio 2021 (archiviato dall'url originale il 29 agosto 2008).
  11. ^ Prince - End User License Agreement, su princexml.com. URL consultato il 22 febbraio 2021.
  12. ^ Prince: XML Input, YesLogic.
  13. ^ a b XML, XLink and XPointer, su w3schools.com. URL consultato il 22 febbraio 2021.
  14. ^ (EN) XPointer, in Wikipedia, 4 gennaio 2021. URL consultato il 22 febbraio 2021.

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autoritàGND (DE4845742-5
  Portale Internet: accedi alle voci di Wikipedia che trattano di internet