Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Il linguaggio XML (Extensible Markup Language) è ormai ampiamente diffuso e sono ben noti i motivi per cui è consigliabile usarlo nelle organizzazioni. Ma che cos'è esattamente? Questo articolo illustra le nozioni di base e il funzionamento dell'XML.

In questo articolo

Breve introduzione a commenti e tag

Per comprendere il codice XML, è utile comprendere l'idea di contrassegnare i dati. Persone hanno creato documenti per secoli e per un tempo altrettanto lungo hanno contrassegnato tali documenti. Ad esempio, gli insegnanti dell'istituto di istruzione contrassegnano continuamente i documenti degli studenti. Dicono agli studenti di spostare paragrafi, chiarire frasi, correggere errori di ortografia e così via. Contrassegnare un documento è il modo in cui vengono definiti la struttura, il significato e l'aspetto visivo delle informazioni nel documento. Se è già stata usata la caratteristica Revisioni in Microsoft Office Word, è stato usato un formato computerizzato di contrassegno.

Anche nel settore informatico, la "ricaricha" si è evoluta in "markup". Il markup è il processo di utilizzo di codici denominati tag (o talvolta token) per definire la struttura, l'aspetto visivo e, nel caso di XML, il significato di qualsiasi dato.

Il codice HTML di questo articolo rappresenta un esempio efficace dell'utilizzo di tag. Se si esamina tale codice (fare clic con il pulsante destro del mouse nella pagina in Microsoft Internet Explorer e scegliere HTML), verrà visualizzata una combinazione di testo leggibile e tag HTML (Hypertext Markup Language), ad esempio <p> e <h2>. I tag dei documenti HTML e XML sono facilmente riconoscibili in quanto racchiusi tra parentesi angolari. Nel codice sorgente di questo articolo i tag HTML vengono usati per vari scopi, ad esempio per definire l'inizio e la fine di ogni paragrafo (<p> ... </p>) e contrassegnare la posizione di ogni immagine.

Caratteristiche del linguaggio XML

I documenti HTML e XML contengono dati racchiusi tra tag, ma in questo caso terminano le analogie tra i due linguaggi. In HTML i tag definiscono l'aspetto dei dati: i titoli vanno qui, il paragrafo inizia da lì e così via. In XML i tag definiscono la struttura e il significato dei dati, ovvero il significato dei dati.

La descrizione della struttura e del significato dei dati rende possibile il loro riutilizzo in diversi modi. Se ad esempio si ha un blocco di dati di vendita in cui ogni voce è chiaramente identificata, è possibile caricare solo le voci necessarie in un report di vendita e le altre in un database di contabilità. In altre parole, è possibile usare un sistema per generare i dati e contrassegnarli con tag XML e quindi elaborarli in diversi altri sistemi, indipendentemente dalla piattaforma hardware o dal sistema operativo. Questa caratteristica di portabilità è il motivo per cui l'XML è ormai una delle tecnologie più diffuse per lo scambio di dati.

Mentre si procede, tenere presente gli aspetti seguenti:

  • Non è possibile usare codice HTML al posto di codice XML. È tuttavia possibile incapsulare i dati XML in tag HTML e visualizzarli in una pagina Web.

  • L'HTML è un gruppo limitato e predefinito di tag condivisi da tutti gli utenti.

  • Xml consente di creare qualsiasi tag necessario per descrivere i dati e la struttura dei dati. Per esempio, dire che è necessario archiviare e condividere le informazioni sugli animali domestici. È possibile creare il seguente codice XML:

    <?xml version="1.0"?>
    <CAT>
      <NAME>Izzy</NAME>
      <BREED>Siamese</BREED>
      <AGE>6</AGE>
      <ALTERED>yes</ALTERED>
      <DECLAWED>no</DECLAWED>
      <LICENSE>Izz138bod</LICENSE>
      <OWNER>Colin Wilcox</OWNER>
    </CAT>
    

I tag XML consentono di sapere esattamente quali tipi di dati si stanno osservando. Ad esempio, sai che si tratta di dati su un gatto e puoi trovare facilmente il nome, l'età e così via del gatto. La possibilità di creare tag che definiscono quasi tutte le strutture di dati è ciò che rende xml "estensibile".

I tag di questo esempio di codice non devono tuttavia essere confusi con quelli presenti in un file HTML. Se ad esempio questa struttura XML viene incollata in un file HTML che viene visualizzato nel browser, il risultato sarà simile al seguente:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

Il browser ignora i tag XML e visualizza solo i dati.

L'importanza di dati ben formati

Si potrebbe sentire qualcuno del reparto IT menzionare xml "ben formato". Un file XML ben formato è conforme a un set di regole molto rigorose che regolano il formato XML. Se un file non è conforme a tali regole, il file XML smette di funzionare. Ad esempio, nell'esempio di codice precedente, ogni tag di apertura ha un tag di chiusura, quindi l'esempio aderisce a una delle regole per la corretta formazione. Se si rimuove un tag e si prova ad aprire il file in una delle applicazioni di Office, viene visualizzato un messaggio di errore e l'applicazione interrompe l'uso del file.

Pur non essendo necessario conoscere le regole per la creazione di documenti XML ben formati, anche se sono facili da capire, è importante tenere presente che i dati XML possono essere condivisi tra applicazioni e sistemi solo se sono ben formati. Se non è possibile aprire un file XML, è molto probabile che non sia ben formato.

Il linguaggio XML è inoltre indipendente dalla piattaforma, ossia qualsiasi applicazione progettata per usarlo consente di leggere ed elaborare dati XML, indipendentemente dall'hardware o dal sistema operativo. Con i tag XML appropriati è ad esempio possibile usare un'applicazione per PC desktop per aprire e gestire i dati provenienti da un computer mainframe. Indipendentemente dall'autore di un testo di dati XML, è inoltre possibile usare gli stessi dati in diverse applicazioni di Microsoft Office. Grazie alla portabilità, l'XML è ormai una delle tecnologie più diffuse per lo scambio di dati tra database e desktop degli utenti.

Utilizzo di XML in altre applicazioni

Oltre a dati ben formati delimitati da tag, i sistemi XML usano in genere due componenti aggiuntivi: schemi e trasformazioni. Le sezioni seguenti descrivono il funzionamento di questi componenti.

Breve introduzione agli schemi

Non lasciare che il termine "schema" intimidirti. Uno schema è solo un file XML che contiene le regole per gli elementi che possono e non possono risiedere in un file di dati XML. I file di schema usano in genere l'estensione xsd, mentre i file di dati XML usano l'estensione .xml.

Gli schemi consentono alle applicazioni di convalidare i dati. Forniscono il framework per strutturare i dati e verificare che abbiano senso per l'autore e per tutti gli altri utenti. Se un utente immette dati non validi, ad esempio testo in un campo data, l'applicazione può richiedere l'immissione dei dati corretti. Purché i dati del file XML siano conformi alle regole di un determinato schema, qualsiasi applicazione che supporti l'XML può usare tale schema per leggere, interpretare ed elaborare i dati. Come mostrato nell'illustrazione seguente, Excel può ad esempio convalidare i dati <CAT> rispetto allo schema CAT.

Gli schemi abilitano le applicazioni per condividere i dati XML.

Gli schemi possono diventare complessi, ma la spiegazione su come crearli esula dagli scopi di questo articolo. È in genere possibile affidarsi al reparto IT per questa operazione. Risulta tuttavia utile conoscere l'aspetto degli schemi. Lo schema seguente definisce le regole per il set di tag <CAT> ... </CAT>.

<xsd:element name="CAT">  
  <xsd:complexType>  
    <xsd:sequence>
      <xsd:element name="NAME" type="xsd:string"/>
      <xsd:element name="BREED" type="xsd:string"/>
      <xsd:element name="AGE" type="xsd:positiveInteger"/>
      <xsd:element name="ALTERED" type="xsd:boolean"/>
      <xsd:element name="DECLAWED" type="xsd:boolean"/>
      <xsd:element name="LICENSE" type="xsd:string"/>
      <xsd:element name="OWNER" type="xsd:string"/>        
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

Non preoccuparti di capire tutto quello che c'è nell'esempio. Tieni presente quanto segue:

  • Le voci dello schema di esempio sono denominate dichiarazioni. Se sono necessarie maggiori informazioni su un animale, ad esempio il colore o il tipo di mantello, il reparto IT può aggiungere una dichiarazione allo schema. È possibile modificare il sistema XML in base al mutare delle esigenze aziendali.

  • Le dichiarazioni offrono un notevole controllo sulla struttura dei dati. Ad esempio, la dichiarazione <xsd:sequence> significa che i tag, come <NAME> e <BREED>, devono essere disposti nell'ordine in cui sono elencati sopra. Le dichiarazioni controllano inoltre il tipo di dati che gli utenti possono immettere. Lo schema precedente richiede ad esempio un numero positivo per l'età del gatto e valori booleani (TRUE o FALSE) per i tag ALTERED e DECLAWED.

  • Se i dati di un file XML sono conformi alle regole fornite in uno schema, tali dati sono considerati validi. Il processo di controllo di un file di dati XML rispetto a uno schema è denominato convalida. Il maggior vantaggio associato all'uso degli schemi è che consentono di impedire il danneggiamento dei dati. Gli schemi semplificano inoltre l'individuazione di dati danneggiati, in quanto il codice XML si interrompe quando rileva un problema.

Breve introduzione alle trasformazioni

Come accennato in precedenza, il linguaggio XML consente inoltre di usare o il riutilizzare i dati in vari modi efficaci. Il meccanismo per il riutilizzo dei dati è denominato XSLT (Extensible Stylesheet Language Transformation) o, più semplicemente, trasformazione.

Il reparto IT può anche usare le trasformazioni per scambiare dati tra sistemi back-end, ad esempio database. Si supponga, ad esempio, che il database A archivi i dati sulle vendite in una struttura di tabella che funziona bene per il reparto vendite. Il database B archivia i dati relativi a ricavi e spese in una struttura di tabella personalizzata per il reparto contabilità. Il database B può usare una trasformazione per accettare i dati da A e scrivere tali dati nelle tabelle corrette.

La combinazione di file di dati, schema e trasformazione costituisce un sistema XML di base. La figura seguente mostra il funzionamento tipico di tale sistema. Il file di dati viene convalidato rispetto allo schema e quindi restituito in un numero qualsiasi di modi utilizzabili da una trasformazione. In questo caso, la trasformazione distribuisce i dati in una tabella di una pagina Web.

Struttura di file XML di base con schema e trasformazione

L'esempio seguente illustra uno dei modi disponibili per scrivere una trasformazione. I dati <CAT> vengono caricati in una tabella di una pagina Web. Anche in questo caso, scopo dell'esempio non è dimostrare come scrivere una trasformazione, ma solo illustrare una delle forme che può assumere.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"> 
<TABLE>
  <TR>
    <TH>Name</TH>
    <TH>Breed</TH>
    <TH>Age</TH>
    <TH>Altered</TH>
    <TH>Declawed</TH>    
    <TH>License</TH>
    <TH>Owner</TH>
  </TR>
  <xsl:for-each select="CAT">
  <TR ALIGN="LEFT" VALIGN="TOP">
    <TD>
      <xsl:value-of select="NAME"/>
    </TD>
    <TD>
      <xsl:value-of select="BREED"/>
    </TD>
    <TD>
      <xsl:value-of select="AGE"/>
    </TD>
    <TD>
      <xsl:value-of select="ALTERED"/>
    </TD>
    <TD>
      <xsl:value-of select="DECLAWED"/>
    </TD>
    <TD>
      <xsl:value-of select="LICENSE"/>
    </TD>
    <TD>
      <xsl:value-of select="OWNER"/>
    </TD>
  </TR>
</xsl:for-each>
</TABLE>

Questo esempio mostra l'aspetto di un tipo di trasformazione quando viene codificato, ma ricorda che puoi semplicemente descrivere ciò che ti serve dai dati in inglese. Ad esempio, è possibile rivolgersi al reparto IT e dire che è necessario stampare i dati sulle vendite per determinate aree negli ultimi due anni, "ed è necessario che abbia questo aspetto". Il reparto IT può quindi scrivere (o modificare) una trasformazione per eseguire questo lavoro.

L'aspetto più interessante è che Microsoft e un numero crescente di altri fornitori continuano a creare trasformazioni per tutti i tipi di lavoro. In futuro si potrà probabilmente scaricare una trasformazione che soddisfi specifiche esigenze o da adattare a un determinato scopo. Questo significa che nel corso del tempo usare il codice XML sarà sempre meno costoso.

XML e Microsoft Office System

Le edizioni Professional di Office forniscono un supporto completo per XML. A partire da Microsoft Office System 2007, Microsoft Office usa formati di file basati sull'XML, come docx, xlsx e pptx. Dal momento che i dati XML vengono memorizzati in un formato di testo anziché in un formato binario proprietario, i clienti possono definire schemi personalizzati e usare i dati in più modi, a titolo gratuito. Per altre informazioni sui nuovi formati, vedere Formati ed estensioni di file Open XML. Altri vantaggi includono:

  • Dimensioni ridotte dei file. Il nuovo formato usa ZIP e altre tecnologie di compressione per ridurre le dimensioni dei file di una percentuale che può arrivare al 75% rispetto ai formati binari usati nelle versioni precedenti di Office.

  • Recupero più facile delle informazioni e maggiore sicurezza. L'XML è un linguaggio leggibile dall'uomo, quindi se un file si danneggia è possibile aprirlo in Blocco note o in un altro lettore di testo e recuperare almeno in parte le informazioni. I nuovi file sono inoltre più sicuri, perché non possono contenere codice di Visual Basic, Applications Edition (VBA). Se si usa il nuovo formato per creare modelli, gli eventuali controlli ActiveX e macro VBA risiedono in una sezione distinta, più protetta, del file. È inoltre possibile usare strumenti come Controllo documento per rimuovere eventuali dati personali. Per altre informazioni sull'uso di Controllo documento, vedere l'articolo Rimuovere dati nascosti e informazioni personali tramite il controllo dei documenti.

Finora buona, ma se si dispone di dati XML senza schema? Le applicazioni di Office che supportano l'XML hanno approcci specifici per aiutare l'utente a lavorare con i dati. Ad esempio, Excel deduce uno schema se si apre un file XML che non ne ha già uno. Excel offre quindi la possibilità di caricare questi dati in una tabella XML. È possibile usare gli elenchi e le tabelle XML per ordinare, filtrare o aggiungere calcoli ai dati.

Abilitare gli strumenti XML in Office

La scheda Sviluppo non viene visualizzata per impostazione predefinita, ma è necessario aggiungerla alla barra multifunzione ogni volta che si vogliono usare i comandi XML in Office.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×