Tutorial XML per principianti

Cos'รจ l'XML?

XML sta per eXtensibile MArkupe Llingua. รˆ un linguaggio (non> un linguaggio di programmazione) che utilizza il markup e puรฒ estendersi. รˆ derivato da Standard Gmineralizzato MArkupe Llingua (SGML). XML utilizza anche DTD (Doccupazione Tipo Definizioni) per definire la struttura del documento XML.

XML non รจ destinato alla gestione di operazioni e algoritmi di calcolo. Pertanto, XML non รจ un linguaggio di programmazione. L'obiettivo principale รจ trasportare i dati, non visualizzare informazioni. XML colma il divario tra leggibilitร  umana e leggibilitร  automatica. A differenza dei tag HTML, i tag XML sono autodescrittivi.

XML รจ un formato aperto. L'estensione del nome file XML รจ .xml

Storia dell'XML

XML รจ nato nel lontano 1996 ed รจ stato pubblicato per la prima volta nel 1998. Wondo Wide Web Consortium (W3C) รจ lo sviluppatore di XML, ed รจ diventato a Raccomandazione del W3C nel 1998.

Esistono due versioni di XML.

  1. XML1.0
  2. XML1.1

XML1.1 รจ l'ultima versione. Ancora, XML1.0 รจ la versione piรน utilizzata.

Gli editor di XML sono:

  • Tim Bray,
  • Jean Paoli,
  • CM Sperberg,
  • Eva Maler,
  • Franรงois Yergeau.

Funzionalitร  XML

Ecco alcune caratteristiche importanti di XML:

  • รˆ estensibile e leggibile dall'uomo.
  • รˆ indipendente dalla piattaforma e dalla lingua.
  • Conserva lo spazio bianco.
  • Semplicitร  generale.
  • Natura autodescrittiva.
  • Separa i dati dall'HTML.
  • I tag XML non sono predefiniti. รˆ necessario definire i tag personalizzati.
  • XML รจ stato progettato per trasportare dati, non per visualizzarli.
  • Il codice di markup XML รจ facile da comprendere per un essere umano.
  • Il formato ben strutturato รจ facile da leggere e scrivere dai programmi.
  • XML รจ un linguaggio di markup estensibile come HTML.

Codifica XML

La codifica รจ la conversione dei caratteri Unicode nella loro rappresentazione binaria. UTF viene utilizzato per la codifica XML. UTF sta per USC (UCS sta per Universal Cpersonaggio Se) Ttrasformazione Format.

Principalmente, esistono due tipi di codifica UTF.

  1. UTF-8: UTF-8 utilizza 8 bit per rappresentare i caratteri.
  2. Esempio:

    <?xml version="1.0" encoding="UTF-8"?>
    
  3. UTF-16

Utilizza 16 bit per rappresentare i caratteri.

Esempio:

<?xml version="1.0" encoding="UTF-16"?>

รˆ possibile utilizzare la codifica all'interno della dichiarazione XML. UTF-8 รจ la codifica predefinita in XML.

Sintassi XML

Il segmento di codice seguente mostra la sintassi XML di base.

<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
    <child>
        <subchild>.....</subchild>
    </child>
</root>

Dichiarazione XML

La dichiarazione XML รจ costituita dalla versione XML, dalla codifica dei caratteri e/o dallo stato autonomo. La dichiarazione รจ facoltativa.

Sintassi per la dichiarazione XML

Il segmento di codice seguente mostra la sintassi per la dichiarazione XML.

<?xml version="version_number," encoding="character_encoding" standalone="yes_or_no" ?> 

Regole di dichiarazione XML

Di seguito sono riportate le regole per la dichiarazione XML.

  • Se la dichiarazione XML รจ presente, deve essere la prima cosa che appare.
  • La dichiarazione XML fa distinzione tra maiuscole e minuscole e deve iniziare con la lettera minuscola <?xml.
  • Non ha cartellino di chiusura.

Esempio di dichiarazione XML

Il seguente segmento di codice mostra un esempio di dichiarazione XML.

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

Commenti XML

I commenti sono facoltativi. L'aggiunta di commenti aiuta a comprendere il contenuto del documento.

Sintassi per i commenti XML

Un commento inizia con <!โ€“ e finisce con ->.

Il seguente segmento di codice mostra la sintassi per i commenti XML.

<!-- Add your comment here -->

Tag ed elementi XML

I tag funzionano in coppia, ad eccezione delle dichiarazioni. Ogni coppia di tag รจ composta da un tag di apertura (Noto anche come iniziare l'etichetta) E tag di chiusura (Noto anche come etichetta di fine).

I nomi dei tag sono racchiusi in <>. Per una particolare coppia di tag, i tag di inizio e di fine devono essere identici, tranne il tag di fine / dopo l' <.

<name>...</name>

Tutto ciรฒ che si trova tra i tag di apertura e di chiusura viene chiamato contenuto.

Il tag di apertura, il contenuto e il tag di chiusura vengono definiti insieme come an elemento.

Opening tag + content + closing tag = an element

Nota: Gli elementi possono anche contenere attributi. Imparerai gli attributi molto presto.

Consideriamo l'elemento seguente.

<age>20</age>

Nell'elemento sopra,

  • Europe รจ nome dell'elemento.

Nota: nome dell'etichetta indicato anche come un elemento or nome dell'elemento.

  • โ€“ cartellino di apertura
  • 25 - contenuto
  • โ€“ cartellino di chiusura.

Se non c'รจ contenuto tra i tag, come mostrato di seguito, si parla di tag vuoti.

<result></result>

Tag XML e regole degli elementi

L'elenco seguente mostra le regole per i tag e gli elementi XML.

  • I tag fanno distinzione tra maiuscole e minuscole.

Esempio:

Corretta:

<age>20</age>

Sbagliato:

<age>20</Age>

Nota: ETร€, Etร , and sono tre nomi diversi in XML.

  • Tutti i documenti XML devono contenere un singolo elemento radice.
  • Tutti gli elementi devono avere un tag di chiusura (eccetto le dichiarazioni).
  • Il nome di un tag deve iniziare con una lettera o un carattere di sottolineatura e non puรฒ iniziare con XML.
  • Il nome di un tag puรฒ contenere lettere, cifre, trattini, trattini bassi e punti. I trattini sono sottolineati e i punti sono gli unici segni di punteggiatura consentiti.
  • Il nome di un tag non puรฒ contenere spazi.
  • Tutti gli elementi devono essere nidificati correttamente.

Esempio:

Corretta:

<b><u>This text is bold and italic</u></b>

Sbagliato:

<b><u>This text is bold and italic.</b></u>

Attributi XML

L'attributo per un elemento viene inserito dopo il nome del tag nel tag iniziale. Puoi aggiungere piรน di un attributo per un singolo elemento con nomi di attributo diversi.

Consideriamo il documento XML seguente.

<company name="ABC Holdings" location="London">  
    <chairman>Mr. John</chairman>  
    <gm>Mr. Wood</gm>  
</company>  

Ci sono due attributi in azienda elemento, es Nome and posizione.

Studiamo il Nome attributo,

  • name=โ€ABC Partecipazioniโ€ โ€“ un attributo
  • Nome - nome attributo
  • Partecipazioni ABC โ€“ valore dell'attributo

Note:: An nome attributo รจ anche conosciuto come an attributo.

Inoltre, si noti che nell'esempio precedente, the azienda Europe รจ radice elemento.

Regole per gli attributi XML

L'elenco seguente mostra le regole degli attributi XML.

  • I valori degli attributi devono essere racchiusi tra virgolette.
  • Un elemento non puรฒ contenere piรน attributi con lo stesso nome.

Attributo contro Elemento

Sei ancora confuso sulla differenza tra un attributo e un elemento? Ecco un altro esempio.

Consideriamo i documenti A e B riportati di seguito.

Documento A:

<teacher subject="English">
    <name>Mr. John</name>.
    <qualification>Graduate</qualification>
</teacher>

Documento B:

<teacher>
    <subject>English</subject>
    <name>Mr. John</name>
    <qualification>Graduate</qualification>
</teacher>

Nel documento A, il soggetto offre attributo.

Nel documento B, il soggetto offre elemento.

Entitร  XML

Cosa sono le entitร  XML?

In termini semplici, le entitร  sono un modo per rappresentare caratteri speciali. Le entitร  sono anche conosciute come entitร  Riferimenti.

Perchรฉ hai bisogno di entitร  XML?

Alcuni personaggi (es ", & <, e cosรฌ via) sono riservati in XML. Sono indicati come caratteri speciali e non possono essere utilizzati direttamente per altri scopi.

Ad esempio, al cotone biologico viene applicata l'etichetta < and > simboli a utilizzati per tag. Non รจ possibile digitare direttamente dalla tastiera per meno di and piรน grande di segni. รˆ invece necessario utilizzare le entitร .

La tabella seguente mostra alcune delle entitร  XML piรน diffuse.

Carattere Descrizione Nome dell'entitร  Impiego
" Virgolette (doppie virgolette) quot "
& Ampersand amp &
' Apostrofo (virgoletta singola) APOS '
< Less che firmare lt <
> Segno maggiore gt >

Esempio:

<friend>
        <name>My friends are Alice & Jane.</name>
</friend>

HTML contro XML

Somiglianze tra HTML e XML

L'elenco seguente mostra le somiglianze tra HTML e XML.

  • Entrambi sono formati aperti.
  • Entrambi sono linguaggi di markup.
  • Entrambi utilizzano tag e attributi per descrivere il contenuto.

Differenze tra HTML e XML

Anche se XML รจ come HTML, XML non sostituisce l'HTML. Esistono anche alcune differenze significative tra HTML e XML.

La seguente tabella mostra un confronto tra HTML e XML.

HTML XML
Acronimo di Rosso (Red) Hyper Text Markup Language Extensible Markup Language
Tipo di lingua Un linguaggio di markup predefinito. Un framework per specificare i linguaggi di markup.
Dettagli strutturali Non fornito. Fornito.
Missione Utilizzato per visualizzare i dati. Utilizzato per trasportare dati
Guidata da Guidato dal formato. Guidato dai contenuti.
Nature Ha una natura statica. Ha una natura dinamica.
Tipo di tag Tag predefiniti. Tag definiti dall'utente.
Limite di tag รˆ disponibile un numero limitato di tag. I tag sono estensibili.
Tag di chiusura Non รจ necessario utilizzare i tag di chiusura (ma รจ consigliabile utilizzare i tag di chiusura). I tag di chiusura sono obbligatori.
Supporto dello spazio dei nomi Non supportato. Supportato.
Distinzione tra maiuscole e minuscole I tag non fanno distinzione tra maiuscole e minuscole. I tag fanno distinzione tra maiuscole e minuscole.
Spazio bianco Lo spazio bianco non puรฒ preservare (puรฒ ignorare lo spazio bianco). Spazio bianco preservato (non รจ possibile ignorare lo spazio bianco).
Analisi in corso JavaCopione Non รจ necessaria alcuna applicazione aggiuntiva. รˆ necessaria l'implementazione del DOM.
Annidamento del codice Non necessariamente necessario. Necessario.
errori Puรฒ ignorare piccoli errori. Non sono ammessi errori.
Estensione nome file .html or htm . Xml
Taglia Relativamente grande. Relativamente piccolo.
Citazioni Le virgolette non sono richieste per i valori degli attributi. Obbligatorio per i valori degli attributi XML.
Supporto per oggetti Offre supporto per oggetti nativi. Gli oggetti devono essere espressi mediante convenzioni.
Supporto nullo Riconosce nativamente il valore null. รˆ necessario utilizzare xsi:nil sugli elementi.
Decisioni di formattazione Fornisce la mappatura diretta per i dati dell'applicazione. Richiedere uno sforzo piรน significativo.
Curva di apprendimento Less curva di apprendimento ripida rispetto a XML. Ripida curva di apprendimento.
Sito web https://html.spec.whatwg.org/ https://www.w3.org/TR/xml11/

Sintassi HTML di base

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
     
</body>
</html>

Sintassi XML di base

<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
    <child>
        <subchild>.....</subchild>
    </child>
</root>

Stesso esempio con HTML e XML

Con HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
         <p>Book</p>
    <p>Name: Anna Karenina</p>
    <p>Author: Leo Tolstoy</p>
    <p>Publisher: The Russian Messenger</p>
</body>
</html>

Con XML

<?xml version = "1.0" encoding = "UTF-8" ?>
<book>
        <name>Anna Karenina</name> 
        <author>Leo Tolstoy</author> 
      <publisher>The Russian Messenger</publisher>
</book>

JSON contro XML

Somiglianze tra JSON e XML

L'elenco seguente mostra le somiglianze tra JSON e XML.

  • Entrambi sono formati aperti.
  • Entrambi si autodescrivono.
  • Entrambi hanno una struttura gerarchica.
  • Entrambi possono analizzare e utilizzare diversi linguaggi di programmazione.

Differenze tra JSON e XML

Esistono anche molte differenze tra XML e JSON.

Le tabelle seguenti mostrano un confronto tra JSON e XML.

JSON XML
Acronimo di Rosso (Red) JavaNotazione dell'oggetto script Extensible Markup Language
Esteso da JavaCopione SGML
Archiviazione dati Dati archiviati come coppie chiave-valore. Dati archiviati come struttura ad albero.
Spazi dei nomi Nessun supporto per gli spazi dei nomi. Supporta gli spazi dei nomi.
Commenti L'aggiunta di commenti non รจ supportata. Puรฒ aggiungere commenti.
Accessibilitร  dei dati Facilmente accessibile come oggetti JSON. I dati devono essere analizzati.
Metadati L'aggiunta di metadati non รจ supportata. Puรฒ scrivere metadati.
Tipi Tipi JSON: stringa, numero, array, booleano. Tutti i dati XML dovrebbero essere stringhe.
Tipi di dati di supporto supporti testo and numero solo tipi di dati. Supporta molti tipi di dati (testo, numeri, immagini, ecc.)
Supporto dell'array Maggiore supporto per gli array rispetto a XML. Nessun o meno supporto per gli array.
Supporto dell'oggetto Supporto nativo per oggetto. L'oggetto deve essere espresso mediante convenzioni.
Supporto del kit di strumenti AJAX Supportato. Non completamente supportato.
Recupero di valori Facile. Difficile.
Deserializzazione/serializzazione Interamente automatizzato. Gli sviluppatori devono scrivere JavaCodice script.
Supporto browser Supportato dalla maggior parte dei browser. L'analisi XML tra browser puรฒ essere complicata.
Codifica Supporta solo la codifica UTF-8. Supporta varie codifiche.
Funzionalitร  di visualizzazione Nessuna funzionalitร  di visualizzazione. Offri funzionalitร  di visualizzazione.
Dimensioni del documento Piรน piccolo dell'XML. Piรน grande di JSON.
Estensione nome file .json . Xml
Sicurezza Less assicurato. Piรน sicuro di JSON.
Facile da leggere Relativamente facile. Relativamente difficile.
Curva di apprendimento Facile da imparare. Ripida curva di apprendimento.
Sito web https://www.json.org/json-en.html https://www.w3.org/TR/xml11/

Sintassi JSON di base

{string:value, .......}

Stesso esempio con JSON e XML

Con JSON

{"books":[
   {"name":"Anna Karenina", "author":"Leo Tolstoy"},
   {"name":"One Hundred Years of Solitude", "author":"Gabriel Garcia Marquez"},
   {"name":"The Great Gatsby", "author":"Scott Fitzgerald"},
   {"name":"Invisible Man", "author":"Ralph Ellison"}
]}

Con XML

<?xml version = "1.0" encoding = "UTF-8" ?>
<books>
    <book>
        <name>Anna Karenina</name> 
        <author>Leo Tolstoy</author> 
    </book>
    <book>
        <name>One Hundred Years of Solitude</name> 
        <author>Gabriel Garcia Marquez</author> 
    </book>
    <book>
        <name>The Great Gatsby</name> 
        <author>Scott Fitzgerald</author> 
    </book>
    <book>
        <name>Invisible Man</name> 
        <author>Ralph Ellison</author>
    </book>
</books>

DTD XML

Cos'รจ DTD?

DTD sta per Doccupazione Tipo Ddefinizione. Definisce la struttura di un documento XML utilizzando alcuni elementi legali. La DTD XML รจ facoltativa.

Regole DTD

L'elenco seguente mostra le regole DTD.

  • Se la DTD รจ presente, deve apparire all'inizio del documento (sopra la DTD puรฒ apparire solo la dichiarazione XML).
  • La dichiarazione dell'elemento deve iniziare con an ! marchio.
  • Il nome DTD e il tipo di elemento dell'elemento root devono essere gli stessi.

Esempi di DTD

Esempio di DTD interno:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE student [
<!ELEMENT student (firstname,lastname,school)>  
<!ELEMENT firstname (#PCDATA)>  
<!ELEMENT lastname (#PCDATA)>  
<!ELEMENT school (#PCDATA)> 
]>
<student>  
    <firstname>Mark</firstname>  
    <lastname>Wood</lastname>  
    <school>Hills College</school>  
</student>

Nell'esempio sopra,

  • Studente !DOCTYPE indica l'inizio della dichiarazione DTD. E il studente รจ l'elemento radice del documento XML.
  • Studente !ELEMENT indica il studente l'elemento deve contenere nome e cognome and scuola elementi.
  • !ELEMENT nome indica il Cognome l'elemento รจ di tipo #DATIPC (Parrapato Cpersonaggio Dati).
  • !ELEMENT cognome indica il cognome l'elemento รจ di tipo #DATIPC.
  • Scuola !ELEMENT indica il scuola l'elemento รจ di tipo #DATIPC.

Esempio di DTD esterno:

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE student SYSTEM "student.dtd">  
<student>  
    <firstname>Mark</firstname>  
    <lastname>Wood</lastname>  
    <school>Hills College</school>  
</student>  

Il contenuto del file DTD (student.dtd) come segue.

<!ELEMENT student (firstname,lastname,school)>  
<!ELEMENT firstname (#PCDATA)>  
<!ELEMENT lastname (#PCDATA)>  
<!ELEMENT school (#PCDATA)>

DOM XML

Cos'รจ DOM?

DOM sta per Doccupazione Ooggetto Model. Definisce un modo standard di accesso e manipolazione dei documenti XML. DOM ha una struttura ad albero (gerarchica).

Esempio di DOM

Consideriamo il documento XML seguente.

<?xml version="1.0" encoding="UTF-8" ?>  
<school>
    <student>  
        <name>
            <first_name>Alex</first_name>  
            <last_name>Clarke</last_name>  
        </name>
        <age>14</age>  
        <address>No. 35, Flower Road, Leeds</address>  
    </student> 
</school>

La struttura ad albero del file XML sopra riportato sarebbe simile all'immagine seguente.

DOM XML
Esempio DOM XML

Convalida XML

Cosa sono i documenti XML ben formati?

Ben formato I documenti XML sono documenti XML con la sintassi corretta.

Cosa sono i documenti XML validi?

Valido I documenti XML sono ben formati e conformi anche alle regole DTD.

Spazi dei nomi XML

Perchรฉ gli spazi dei nomi?

Gli spazi dei nomi aiutano a evitare conflitti tra i nomi degli elementi.

Dichiarazione dello spazio dei nomi

Di seguito รจ riportata la sintassi per la dichiarazione dello spazio dei nomi.

<element xmlns:name="URL">

Nella dichiarazione di cui sopra,

  • Migliori xmln la parola chiave indica l'inizio dello spazio dei nomi.
  • Migliori Nome รจ il prefisso dello spazio dei nomi.
  • Migliori URL รจ l'identificatore dello spazio dei nomi.

Esempi di spazi dei nomi

Il seguente segmento di codice mostra un esempio di namespace.

<?xml version="1.0" encoding="UTF-8" ?>  
<abt:about xmlns:abt="https://www.guru99.com/about-us.html">  
    <abt:founder>Krishna</abt:founder>  
    <abt:vision>Fun and Free Education for ALL</abt:vision>  
</abt:about>   

Editor XML

Sono disponibili diversi editor XML. Qualsiasi editor di testo (come il blocco note e cosรฌ via) puรฒ essere utilizzato come editor XML.

L'elenco seguente mostra alcuni degli editor XML piรน diffusi nel 2021.

1) Blocco note XML

Blocco note XML รจ un editor open source per XML. Ha una visualizzazione ad albero e un output XSL nel riquadro sinistro e testo del nodo sulla destra. Ha una finestra di debug degli errori in basso.

Statistiche chiave:

  • Tipo: editor XML
  • Sviluppatore โ€“ Microsoft
  • Sistema operativo supportato โ€“ Microsoft Windows.
  • Prezzo โ€“ Gratuito

link: http://microsoft.github.io/XmlNotepad/


2) Studio dello stilo

Stylus Studio รจ un IDE scritto in C++ per Extensible Markup Language (XML). Consente all'utente di modificare e trasformare documenti XML, dati quali scambio elettronico di dati (EDI), CSV e dati relazionali.

Statistiche chiave:

  • Tipo: ambiente di sviluppo integrato (IDE) per XML
  • Sviluppatore โ€“ Progress Software Corporation
  • Sistema operativo supportato โ€“ Microsoft Windows.
  • Prezzo โ€“ A pagamento (fare riferimento al sito Web indicato di seguito per il prezzo piรน recente), prova gratuita disponibile.

link: http://www.stylusstudio.com/


3) Altova XMLSpy

XMLSpy รจ commercializzato principalmente come un editor JSON e XML. Ha un editor e un progettista di schema integrati. Include Visual Studio And Eclipse integrazione.

Statistiche chiave:

  • Tipo: editor XML
  • Sviluppatore โ€“ Altova
  • Sistema operativo supportato โ€“ Microsoft Windows.
  • Prezzo โ€“ A pagamento (fare riferimento al sito Web indicato di seguito per il prezzo piรน recente), prova gratuita disponibile.

link:https://www.altova.com/xmlspy-xml-editor


4) Editor XML di ossigeno

Oxygen XML รจ un editor multipiattaforma sviluppato in JavaAiuta a convalidare schemi come DTD, W3C XML Schema, RELAX NG, Schematron, NRL e NVDL.

Statistiche chiave:

  • Tipo: editor XML
  • Sviluppatore โ€“ SyncRO Soft Ltd
  • Sistema operativo supportato โ€“ Windows, Linux e Mac OS X
  • Prezzo โ€“ Pagato (fare riferimento al sito Web indicato di seguito per il prezzo piรน recente

link:https://www.oxygenxml.com/


5) Semplifica

Xmplify XML Editor fornisce un ambiente di editing completamente compatibile con XML con convalida automatica dei documenti, convalida automatica basata su DTD e XML Schema, ecc.

Statistiche chiave:

  • Tipo: editor XML
  • Sviluppatore โ€“ MOSO Corporation
  • Sistema operativo supportato: sistema operativo Mac.
  • Prezzo โ€“ Pagato (fare riferimento al sito Web indicato di seguito per il prezzo piรน recente

link: http://xmplifyapp.com/

Parser XML

Un parser XML รจ una libreria software che fornisce un'interfaccia per lavorare con documenti XML. Controlla se il formato del documento XML รจ corretto. Alcuni parser possono anche convalidare i documenti XML. I browser moderni sono dotati di parser XML.

SAX

SAX sta per Simple API per XM.L. รˆ un aPPLICAZIONE programma iinterfaccia (API) per l'analisi dei documenti XML. Si comportano in modo simile ai gestori di eventi in Java.

A differenza del DOM, SAX รจ un esempio di parser XML basato su eventi.

Ecco alcune importanti differenze tra SAX e DOM.

SAX DOM
Acronimo di Rosso (Red) API semplice per XML Modello oggetto documento
Tipo di analizzatore Basato sugli eventi Basato su oggetti
Leggere e scrivere XML Sola lettura Sia leggere che scrivere
Inserisci/aggiorna/elimina nodi Impossibile inserire/aggiornare/eliminare nodi Puรฒ inserire/aggiornare/eliminare nodi
Efficienza della memoria Buona efficienza della memoria Varie
Velocitร  Piรน lento del parser DOM Piรน veloce di SAX Parser
Adatto per File di piccole dimensioni File di grandi dimensioni

Associazione dati XML

L'associazione dati XML รจ la rappresentazione dei dati in un documento XML come oggetto aziendale nella memoria di un computer.

Esistono tre approcci per l'associazione dati XML.

  • Associazione dati basata su schema XML: Le classi XML corrispondenti vengono create in base allo schema.
  • Associazione dati basata su classi: Uno schema XML corrispondente viene creato in base alle classi.
  • Associazione dati basata su mappatura: Descrive come uno schema XML esistente si associa a un insieme di classi (e viceversa).

Esistono anche framework di associazione dati XML.

Esempi:

L'associazione dei dati XML รจ semplice con i framework. Il framework di associazione dati genera una grande quantitร  di codice per te. รˆ necessario inserire uno schema DTD o XML.

Schemi XML

XML schema (conosciuto anche come Definizione dello schema XML or XSD) utilizzare per descrivere la struttura del documento XML. รˆ un'alternativa al DTD.

Perchรฉ lo schema รจ importante?

DTD non รจ potente come schema in quanto non รจ sufficientemente estensibile e flessibile. Quindi potrebbe non essere adatto ad alcune situazioni. In una situazione del genere lo schema รจ importante. Lo scopo principale dell'utilizzo dello schema XML รจ definire gli elementi e gli attributi di un documento XML.

In che modo lo schema XML รจ diverso da DTD?

Il confronto seguente mostra le differenze tra XSD (XML Schema) e DTD.

DTD XSD
Acronimo di Rosso (Red) Definizione del tipo di documento Definizione dello schema XML
Estensibilitร  Non estensibile Extensible
Controllo sulla struttura XML Less di controllo Piรน controllo
Tipi di dati di supporto Non supportato Supporto
Supporto per lo spazio dei nomi Non supportato Supporto

Il seguente segmento di codice mostra un esempio di schema XML.

xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
    <xs:element name = "employee">
        <xs:complexType>
            <xs:sequence>
                <xs:element name = "firstname" type = "xs:string" />
                <xs:element name = "lastname" type = "xs:string" />
                <xs:element name = "phone" type = "xs:int" />
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Vantaggi dell'XML

Ecco i vantaggi/vantaggi di XML:

  • Ha reso facile il trasporto e la condivisione dei dati.
  • XML migliora lo scambio di dati tra diverse piattaforme.
  • รˆ un linguaggio di markup, ovvero un insieme di caratteri e/o simboli inseriti in un documento di testo.
  • XML indica come dovrebbe apparire il documento XML dopo essere stato visualizzato.
  • Semplifica il processo di cambiamento della piattaforma.
  • Migliora la disponibilitร  dei dati.
  • Supporta documenti multilingue e Unicode.
  • Fornire relativamente facile da imparare e codificare.
  • รˆ un linguaggio di markup, ovvero un insieme di caratteri e/o simboli inseriti in un documento di testo.
  • Esegue la convalida utilizzando DTD e Schema.
  • Rende i documenti trasportabili tra sistemi e applicazioni. Con l'aiuto di XML รจ possibile scambiare rapidamente dati tra diverse piattaforme.
  • XML separa i dati dall'HTML.

Svantaggi dell'XML

Ecco i contro/svantaggi dell'utilizzo di XML:

  • XML richiede un'applicazione di elaborazione.
  • La sintassi XML รจ simile ad altri formati alternativi di trasmissione dati basati su testo, il che a volte puรฒ creare confusione.
  • Nessun supporto del tipo di dati intrinseco
  • La sintassi XML รจ ridondante.
  • Non consente all'utente di creare i suoi tag.

Sintesi

  • XML sta per eXtensible Markup Language. XML รจ un linguaggio (non un linguaggio di programmazione) che utilizza il markup e puรฒ estendersi.
  • L'obiettivo principale รจ trasportare i dati, non visualizzarli.
  • XML 1.1 รจ la versione piรน recente. Tuttavia, XML 1.0 รจ la versione piรน utilizzata.
  • I tag funzionano in coppia, ad eccezione delle dichiarazioni.
  • Tag di apertura + contenuto + tag di chiusura = un elemento
  • Le entitร  sono un modo di rappresentare caratteri speciali.
  • DTD sta per Definizione del tipo di documento. Definisce la struttura di un documento XML utilizzando alcuni elementi legali. La DTD XML รจ facoltativa.
  • DOM sta per Document Object Model. Definisce una modalitร  standard di accesso e manipolazione dei documenti XML.
  • I documenti XML ben formati sono documenti XML con la sintassi corretta.
  • I documenti XML validi sono ben formati e sono inoltre conformi alle regole DTD.
  • Gli spazi dei nomi aiutano a evitare conflitti tra i nomi degli elementi.

Riassumi questo post con: