Il 0% ha trovato utile questo documento (0 voti)
5 visualizzazioni16 pagine

XML Json

Il documento discute i linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati e non strutturati, con un focus su XML e JSON. Viene descritto il modello di dati XML, le sue sintassi e le differenze tra documenti XML data-centric, document-centric e ibridi. Inoltre, viene presentata la grammatica JSON, la sua origine e la sua struttura, evidenziando la semplicità e l'interoperabilità del formato.

Caricato da

sermo.daniel
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
5 visualizzazioni16 pagine

XML Json

Il documento discute i linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati e non strutturati, con un focus su XML e JSON. Viene descritto il modello di dati XML, le sue sintassi e le differenze tra documenti XML data-centric, document-centric e ibridi. Inoltre, viene presentata la grammatica JSON, la sua origine e la sua struttura, evidenziando la semplicità e l'interoperabilità del formato.

Caricato da

sermo.daniel
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

XML ì

JSON

Argomenti

ì Linguaggi per la definizione e lo scambio di dati


strutturati, semi-strutturati, non strutturati
ì XML Data Model

ì JSON

Giorgio Giacinto 2015


3

ì
XML
Giorgio Giacinto 2015

XML
eXtensible Markup Language
ì Modello di dati XML
Nato dall’esigenza di coniugare
ì i modelli di dati dei database usati come fonte di
dati per le applicazioni web
ì HTML, linguaggio per specificare contenuto e
formattazione delle pagine web

Giorgio Giacinto 2015


5

Dati Strutturati
Dati Semi-Strutturati
ì Dati Strutturati
ì Rappresentati usando un formato con regole ben
definite
ì esempio, il modello relazionale

ì Dati Semi-Strutturati
ì Posseggono parzialmente una struttura
ì Non tutta l’informazione può essere rappresentata
con la medesima struttura
ì Ciascun oggetto potrebbe avere necessità di alcuni
attributi diversi

Giorgio Giacinto 2015

Dati Semi Strutturati

ì Dati auto-descrittivi
ì Informazioni relative allo schema mescolate con le
informazioni relative ai valori

ì Possono essere rappresentati con un grafo orientato


ì Label e tag sul grafo orientato rappresentano
ì Nomi appartenenti allo schema
ì Nomi di attributi
ì Tipi di oggetto o di entità o classi
ì Associazioni

Giorgio Giacinto 2015


7

Rappresentazione di
Dati Semi-Strutturati

Giorgio Giacinto 2015

Dati Non Strutturati

ì I casi in cui i dati sono inseriti in un documento ma


la loro struttura non è specificata
ì Ad esempio in un documento HTML i tag racchiusi
fra
<...> inizio
</...> fine
indicano i criteri di formattazione di una pagina ma
non il significato dei dati presenti nel documento

Giorgio Giacinto 2015


9

Giorgio Giacinto 2015

10

XML Data Model

ì Rappresentazione basata su alberi gerarchici

ì Elementi complessi
ì Costruiti a partire da altri elementi della gerarchia

ì Elementi semplici
ì Contengono valori

ì XML tag
ì Descrivono il significato dei dati nel documento
<...> </...>

Giorgio Giacinto 2015


11

Giorgio Giacinto 2015

12

XML
Modello Gerarchico ad Albero
ì Principali tipologie di documenti XML
ì Documenti XML data-centric
ì relativi a dati strutturati, spesso estratti da database
ì Documenti XML Document-centric
ì prevalentemente costituti da testo
ì Documenti XML ibridi
ì contengono sia dati strutturati, sia dati non strutturati,
sia testo

ì Documenti XML senza schema


ì Non seguono uno schema predefinito
ì relativamente ai nomi degli elementi
ì relativamente alla corrispondente struttura ad albero
Giorgio Giacinto 2015
13

Sintassi XML

ì Un documento XML si dice ben formato se segue le


regole sintattiche
ì Nell’intestazione
ì la versione XML usata
ì altri attributi rilevanti per la comprensione del
documento
ì Tutti gli elementi devono avere una coppia di tag che
indicano l’inizio e la fine dell’elemento

Giorgio Giacinto 2015

14

Interpretazione XML

ì DOM (Document Object Model)


ì Modello che consente di convertire il documento nel
corrispondente albero gerarchico
ì Consente la manipolazione degli elementi attraverso un
insieme di API
ì Il documento deve essere esaminato per intero prima di
effettuare la conversione

ì SAX (Simple API for XML)


ì I documenti XML sono elaborati “al volo”.
Utile nei casi di
ì Documenti di grandi dimensioni
ì streaming

Giorgio Giacinto 2015


15

XML DTD
Document Type Definition
ì Un documento XML è detto valido se segue uno schema
XML definito in un altro XML
ì DTD
ì XML Schema

ì DTD (Document Type Definition)


ì Il DTD segue una sintassi specifica per
ì definizione dei tag
ì definizione proprietà degli elementi relativi a ciascuno
dei tag

ì Intestazione XML conforme a un DTD


<?xml version=“1.0” standalone=“no”?>
<!DOCTYPE Projects SYSTEM “[Link]”>

Giorgio Giacinto 2015

16

Esempi di DTD
Projects

Giorgio Giacinto 2015


17

Esempio DTD
Company

Giorgio Giacinto 2015

18

XML Schema

ì XML schema language


ì Standard per la specifica della struttura di
documenti XML

ì Utilizza la stessa sintassi usata per i documenti XML


ì Modello di dati ad albero
ì Elementi e attributi

ì Utilizza concetti propri del dominio delle basi di dati


ì chiavi
ì riferimenti
ì identificatori

Giorgio Giacinto 2015


19

Figure 13.5 An XML schema file called company

Giorgio Giacinto 2015

20

Figure 13.5 (continued) An XML schema file called company.

Giorgio Giacinto 2015


21

Figure 13.5 (continued) An XML schema file called company.

Giorgio Giacinto 2015

22

Elementi presenti nel XML Schema

ì XML namespace
ì Definisce l’insieme di comandi (nomi) del XML Schema che
possono essere usati
ì Dichiarato attraverso una locazione web
ì Annotazioni, documentazione, linguaggio
ì Elementi e tipi di elementi
ì Elemento di primo livello
ì type, minOccurs, and maxOccurs
ì Chiavi primarie e vincoli di integrità referenziale
ì Struttura di elementi complessi
ì Attributi composti

Giorgio Giacinto 2015


23

Altri linguaggi e protocolli legati a XML

ì Extensible Stylesheet Language (XSL)


ì Definisce il modo in cui una pagina HTML viene
visualizzata da un web browser

ì Extensible Stylesheet Language for Transformations


(XSLT)
ì Trasforma una struttura in un’altra struttura

ì Web Services Description Language (WSDL)


ì Descrizione di Web Services in XML

Giorgio Giacinto 2015

24

Altri linguaggi e protocolli legati a XML

ì Simple Object Access Protocol (SOAP)


ì Protocollo indipendente dalla piattaforma e dal
linguaggio di programmazione per lo scambio di
messaggi e l’esecuzione di remote procedure calls

ì Resource Description Framework (RDF)


ì Linguaggi e strumenti per lo scambio e
l’elaborazione attraverso il Web di descrizioni e di
specifiche di metadati

Giorgio Giacinto 2015


25

ì
JSON
[Link]

Giorgio Giacinto 2015

26

Origine

ì JSON - The JavaScript Object Notation data format


ì JSON è un sottoinsieme del linguaggio JavaScript
ì JSON non è un linguaggio di programmazione ma un
formato per l’interscambio di dati fra browser e
server o fra server e server

ì Successo di JSON legato alla semplicità della sua


grammatica
ì formato idoneo per l’interoperabilità

Giorgio Giacinto 2015


27

Storia

ì La creazione di JSON è attribuita a Douglas Crockford


ì Ha dato il nome
ì Ha formalizzato la grammatica nella RFC 4627 (2006)
ì registered Internet media type application/json
ì file extension .json
ì JSON è stato ufficialmente inserito fra gli standard ECMA
(Dicembre 2009)

ì Esiste un’altra formalizzazione di JSON da parte di IETF


(Internet Engineering Task Force) - RFC 7159
ì I due standard differiscono nel modo con cui un testo
JSON può essere considerato valido.

Giorgio Giacinto 2015

28

Grammatica JSON

ì JSON è una rappresentazione testuale di dati


strutturati
ì Le specifiche JSON prevedono che i dati possono
essere strutturati secondo una delle due seguenti
modalità di composizione
ì Una collezione di coppie nome/valore
ì Una lista ordinata di valori

Giorgio Giacinto 2015


29

Elementi della grammatica JSON

Coppia stringa/valore

Giorgio Giacinto 2015

30

Elementi della grammatica JSON

Lista Ordinata

Giorgio Giacinto 2015


31

Esempio di documento JSON

Giorgio Giacinto 2015

32

Lo stesso documento in XML

Giorgio Giacinto 2015

Potrebbero piacerti anche