5.2.3 – XML – Sintassi ed elementi

Obiettivi della lezione:

  • Comprendere la sintassi di XML. Gli studenti impareranno le regole di base per scrivere documenti XML validi.
  • Identificare e utilizzare gli elementi di XML. Gli studenti acquisiranno conoscenze sui vari componenti di XML, come tag, attributi, e prolog, e su come utilizzarli per strutturare i dati.
  • Analizzare esempi pratici di documenti XML. Gli studenti comprenderanno come applicare la sintassi e gli elementi XML per creare e interpretare documenti XML reali.

Introduzione a XML

XML (eXtensible Markup Language) è un linguaggio di markup progettato per trasportare e memorizzare dati. XML è simile a HTML, ma mentre HTML è utilizzato per visualizzare dati, XML è utilizzato per descrivere e trasmettere dati. XML è ampiamente utilizzato per lo scambio di informazioni tra sistemi diversi, grazie alla sua flessibilità e leggibilità.

Sintassi di base di XML

Un documento XML è costituito da elementi racchiusi tra tag di apertura e chiusura. Ecco le regole fondamentali per scrivere un documento XML valido:

  1. Prolog: Ogni documento XML inizia con una dichiarazione di prolog che specifica la versione XML e l’encoding utilizzato.
    • Esempio: <?xml version="1.0" encoding="UTF-8"?>
  2. Elemento radice: Ogni documento XML deve avere un singolo elemento radice che contiene tutti gli altri elementi.
    • Esempio: <note></note>
  3. Tag di apertura e chiusura: Ogni elemento deve avere un tag di apertura e un tag di chiusura corrispondente.
    • Esempio: <to>Tove</to>
  4. Annidamento corretto: Gli elementi devono essere annidati correttamente senza sovrapposizioni.
    • Esempio corretto: <note><to>Tove</to></note>
    • Esempio errato: <note><to>Tove</note></to>
  5. Attribuzione: Gli elementi possono avere attributi che forniscono informazioni aggiuntive. Gli attributi devono essere racchiusi tra virgolette.
    • Esempio: <note date="2024-07-01"></note>

Elementi di XML

Gli elementi sono i componenti fondamentali di XML e sono definiti dai tag. Ecco una panoramica dei principali elementi di XML:

Tag

I tag sono utilizzati per definire gli elementi e sono racchiusi tra parentesi angolari (< >). Ogni elemento deve avere un tag di apertura e un tag di chiusura.

  • Esempio:
<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
</note>

Attributi

Gli attributi forniscono informazioni aggiuntive sugli elementi e sono definiti all’interno del tag di apertura.

  • Esempio:
<note date="2024-07-01">
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
</note>

Prolog

Il prolog è la dichiarazione iniziale che specifica la versione XML e l’encoding.

  • Esempio:
<?xml version="1.0" encoding="UTF-8"?>

Commenti

I commenti in XML sono utilizzati per aggiungere note o descrizioni che non vengono elaborate dal parser XML.

  • Esempio:
<!-- Questo è un commento in XML -->
<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
</note>

CData

I dati caratteri (CData) sono utilizzati per includere dati che non devono essere interpretati come codice XML.

  • Esempio:
<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body><![CDATA[Don't forget me this weekend!]]></body>
</note>

Esempi pratici di XML

Ecco alcuni esempi pratici di documenti XML utilizzati in vari contesti:

Catalogo di libri

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
    <book id="bk101">
        <author>Gambardella, Matthew</author>
        <title>XML Developer's Guide</title>
        <genre>Computer</genre>
        <price>44.95</price>
        <publish_date>2000-10-01</publish_date>
        <description>An in-depth look at creating applications with XML.</description>
    </book>
    <book id="bk102">
        <author>Ralls, Kim</author>
        <title>Midnight Rain</title>
        <genre>Fantasy</genre>
        <price>5.95</price>
        <publish_date>2000-12-16</publish_date>
        <description>A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world.</description>
    </book>
</catalog>

RSS Feed

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
    <channel>
        <title>W3Schools Home Page</title>
        <link>https://www.w3schools.com</link>
        <description>Free web building tutorials</description>
        <item>
            <title>RSS Tutorial</title>
            <link>https://www.w3schools.com/xml/xml_rss.asp</link>
            <description>New RSS tutorial on W3Schools</description>
        </item>
        <item>
            <title>XML Tutorial</title>
            <link>https://www.w3schools.com/xml</link>
            <description>New XML tutorial on W3Schools</description>
        </item>
    </channel>
</rss>

Esercitazioni pratiche

  1. Creazione di un documento XML:
    • Creare un documento XML che descrive una lista di contatti. Gli studenti dovranno includere elementi come nome, cognome, email, telefono e indirizzo, utilizzando tag e attributi appropriati.
  2. Validazione di XML:
    • Utilizzare un validatore XML online per verificare la correttezza sintattica di un documento XML creato dagli studenti. Gli studenti dovranno correggere eventuali errori identificati dal validatore.
  3. Parsing di XML con JavaScript:
    • Creare uno script JavaScript che carica e analizza un documento XML, visualizzando i dati estratti in una pagina web. Gli studenti dovranno utilizzare il DOMParser per analizzare il documento XML e manipolare il DOM per visualizzare i dati.