Informazioni di base su XML

Lavora ovunque da qualsiasi dispositivo con Microsoft 365

Eseguire l'aggiornamento a Microsoft 365 per lavorare in qualsiasi luogo con le funzionalità e gli aggiornamenti più recenti.

Aggiorna adesso

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

Caratteristiche del linguaggio XML

L'importanza di dati ben formati

Breve introduzione agli schemi

Breve introduzione alle trasformazioni

XML e Microsoft Office System

Breve introduzione a commenti e tag

Per comprendere il codice XML, è utile comprendere l'idea di contrassegnare i dati. Le persone hanno creato documenti per secoli e per molto tempo li hanno contrassegnati. Ad esempio, gli insegnanti dell'istituto di istruzione contrassegnano sempre i documenti degli studenti. Dicono agli studenti di spostare paragrafi, chiarire frasi, correggere errori di ortografia e così via. Per contrassegnare un documento si intende la struttura, il significato e l'aspetto visivo delle informazioni nel documento. Se è mai stata usata la caratteristica Revisioni in Microsoft Office Word, è stata usata una forma computerizzata di contrassegno.

Anche nell'informatica, il "mark up" si è evoluto 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 le due lingue. In HTML, i tag definiscono l'aspetto dei dati: i titoli vengono qui, il paragrafo inizia e così via. In XML i tag definiscono la struttura e il significato dei dati, ovvero i 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. Ad esempio, si può dire che è necessario archiviare e condividere informazioni sugli animali domestici. È possibile creare il codice XML seguente:

    <?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>
    

È possibile vedere che i tag XML rendono possibile conoscere esattamente il tipo di dati che si stanno esaminando. Ad esempio, si sa che si tratta di dati relativi a un gatto e che è possibile trovare facilmente il nome, l'età e così via. La possibilità di creare tag che definiscono quasi qualsiasi struttura di dati è ciò che rende l'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

È possibile che qualcuno del reparto IT menzioni xml "ben formato". Un file XML ben formato è conforme a un set di regole molto rigide che regolano l'XML. Se un file non è conforme a queste regole, xml smette di funzionare. Ad esempio, nell'esempio di codice precedente ogni tag di apertura ha un tag di chiusura, quindi l'esempio rispetta una delle regole per essere ben formato. Se si rimuove un tag e si prova ad aprire il file in una delle applicazioni di Office, verrà visualizzato un messaggio di errore e l'applicazione impedirà 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" ti intimidisca. 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 in genere usano 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 comprendere tutto ciò che è presente nell'esempio. Tenere 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 i database. Si noti ad esempio che il database A archivia 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 i 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 tenere presente che è sufficiente descrivere ciò che serve dai dati in inglese normale. Ad esempio, è possibile passare al reparto IT e dire che è necessario stampare i dati di vendita per determinate aree geografiche per gli ultimi due anni, "ed è necessario che l'aspetto sia simile". Il reparto IT può quindi scrivere (o modificare) una trasformazione per eseguire questa operazione.

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 Open XML ed estensioni di file. 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 esaminando i documenti.

Fino ad ora, ma cosa succede se si hanno dati XML senza schema? Le applicazioni di Office che supportano XML hanno approcci personalizzati per aiutare l'utente a usare 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?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×