XML -WELL FORMEDNESS. Dott.sa Vincenza Anna Leano site:

Documenti analoghi
STRUTTURA DI UN DOCUMENTO XML. Corso di Basi di Dati II Mod B A.A 2009/2010 Prof: F. Cutugno Slides a cura di: Enza Leano

Terminologia. Laboratorio di sistemi interattivi. XML: descrivere caratteristiche arbitrarie di un documento. Lezione 11: Introduzione a XML

Nozioni di base per creare e visualizzare documenti XML

Linguaggi per il Web: XML

APPENDICE C extensible Markup Language

DTD ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Document Type Definition (DTD) Un DTD è il linguaggio usato per descrive la

(XML) Origini di XML. La Famiglia di XML HTML SGML XML XHTML WML SOAP. MathML

Tecnologie Web T DTD Document Type Definition

Informatica Umanistica A.A. 2005/2006

Tecniche Multimediali

Breve Introduzione a XML

Tecnologie Web T Introduzione a XML

Laboratorio di sistemi interattivi. Struttura di un applicazione Java-XML. Lezione 12: Java & XML

Sintassi dei DTD. <!DOCTYPE > <!ELEMENT > <!ATTLIST > <!ENTITY >: Entità generali <!ENTITY % >: Entità parametriche

Introduzione a XML. Language

XML. Parte VI - Introduzione e nozioni fondamentali di sintassi. XML: Extensible Markup Language:

Tecniche Multimediali

XML e TEI: introduzione alla codifica dei testi letterari. La nascita del linguaggio. Il concetto di metalinguaggio di codifica SGML

Capitolo 3. XML: extensible Markup Language. Introduzione Logical Structures Document Type Definition Namespace XML - Schema

Argomenti XML JSON. Linguaggi per la definizione e lo scambio di dati strutturati, semi-strutturati, non strutturati. XML Data Model JSON

Esercizi su XML, DTD e DOM

Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language. a.a. 2004/05 Tecnologie Web 1

XML - Extensible Markup Language (1)

Basi di dati - Laboratorio

ma l XML va ben al di là dell HTML: serve per descrivere

XML: sintassi. Prof. Carlo Blundo Tecnologie di Sviluppo per il Web 1

XML: La nascita del linguaggio

Laboratorio di reti II: Extensible Markup Language

extensible Markup Language

La sintassi di un DTD si basa principalmente sulla presenza di quattro dichiarazioni:

BASI LINGUAGGIO. Programmazione Web 1

Esercizi su XML e DTD

Document Type Definition (DTD)

La struttura: DTD. Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino. laura.farinetti@polito.it

Lez. 6. Creare documenti XML 11/03/13

XML. Concetti principali. Risultato possibile. Differenze tra XML e HTML

Dario Bottazzi Tel , SkypeID: dariobottazzi

Linguistica Computazionale

XML. XML è contemporaneamente: XML non è:

Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2011/2012. Basi di dati

XML. Pasquale Savino ISTI-CNR. Biblioteche Digitali Metadati

Analizzatori Lessicali con JLex. Giuseppe Morelli

Costanti e Variabili

L uso delle tecnologie informatiche per il trattamento dell informazione e della comunicazione archivistica

23/10/2016. gli alberi. alcune definizioni. un esempio. LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica.

Esercizio 1: archivio CD e DVD

Laboratorio di Basi di Dati per Bioinformatica

SAX e DOM. Analisi di un documento

HTML e Linguaggi. Politecnico di Milano Facoltà del Design Bovisa. Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione

Università Ca Foscari di Venezia Linguistica Informatica Mod. 1 Anno Accademico XML. Rocco Tripodi

28/02/2014 Copyright V. Moriggia

Modellazione e Gestione di Informazioni non Strutturate

G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I

BASI LINGUAGGIO. Programmazione Web 1

a cura di Maria Finazzi

Prefazione. Piersalvo Ortu 1

Directory. Le directory unix sono file.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A Language) Stylesheet.

Introduction. The Structure of a Compiler

Rappresentare i file XML - XSL

Alberi ed Alberi Binari

I Dati. Prestito: prevede un utente che ha ricevuto in prestito un certo libro identificato dal suo codice Secondo il modello Relazionale

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

A.A. 2006/2007 Laurea di Ingegneria Informatica. Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML

Tecniche Multimediali

Corso di Applicazioni Telematiche

Metalinguaggi di marcatura Materiale didattico di supporto. Indice 8. XML EXTENSIBLE MARKUP LANGUAGE...2

XPath. XPath. Riferimenti. Alcuni esempi / 1

Esercitazione n. 3. Dott. Salvatore Pontarelli

Linguaggi ed Applicazioni mul1mediali

XML: una introduzione

Analizzatore lessicale o scanner. Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser.

Programmazione Orientata agli Oggetti in Linguaggio Java

Esempi di XML WWW. Fabio Vitali

La classe string. Tale classe evita agli utilizzatori tutte le problematiche di allocazione e de-allocazione dei buffer di caratteri

Linguaggi e Ambienti di Programmazione

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Laboratorio di Informatica Lezione 1

XML e standard connessi. XML, XML-Names, XSL, XPointer, XLink

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Java il Corso Fondamentale

Specifiche per l etichettatura pragmatica in XML

Laboratorio di Basi di Dati e Multimedia

VBA Principali Comandi

#HTML & MArkup Languages. good web design VS bad web design

Guida all uso del web service SDMX

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)

Introduzione alla codifica XML per i testi umanistici

Calcolatori Elettronici Lezione A4 Programmazione a Moduli

Sessioni di distribuzione Credenziali Test di invio

Mediasoft snc. Classi documentali. Allegato al manuale di Conservazione sostitutiva. Versione del 2 novebre 2015

L XML è un linguaggio di markup aperto e basato su testo che fornisce informazioni di tipo strutturale e semantico relative ai dati veri e propri.

nome (lista_parametri) Funzioni funzioni predefinite: sqrt(x) log(x) usare queste funzioni significa: specificare il valore degli argomenti

Infrastrutture INFormatiche Ospedaliere 2 Corso di laurea di Ingegneria Medica. Indice

XML (extensible Markup Language)

Il parser kxml. Francesca Martelli

XML exstensible Markup Language

Linguaggi per la rete: XML

CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS

Transcript:

XML -WELL FORMEDNESS Dott.sa Vincenza Anna Leano email: vincenzaanna.leano@unina.it site: www.leano.it Basi di Dati II mod. B Prof. F. Cutugno A.A. 2010/2011

DOCUMENTO XML Un oggetto XML è detto Documento XML se è ben formato (Well Formed). I documenti XML hanno caratteristiche logiche e fisiche. Fisiche: il documento è composto da unità chiamate entities. Queste sono organizzate gerarchicamente in cui esiste un solo elemento radice. Logiche: il documento è composto da dichiarazioni, elementi, commenti, caratteri e processing instruction.

WELL-FORMED XML DOCUMENTS (W3C DEFINITION) A textual object is a well-formed XML document if: 1) Taken as a whole, it matches the production labeled document. 2) It meets all the well-formedness constraints given in this specification. 3) Each of the parsed entities which is referenced directly or indirectly within the document is wellformed. document ::= prolog element Misc*

XML DECLARATION I documenti XML devono iniziare con una dichiarazione XML in cui viene specificata la versione di XML in uso Le dichiarazioni devono apparire prima dell elemento radice prolog::=xmldecl? Misc* (doctypedecl Misc*)? XMLDecl::= <?xml' VersionInfo EncodingDecl? SDDecl? S? '?>' VersionInfo::=S 'version' Eq ("'" VersionNum "'" '"' VersionNum '"') Eq::=S? '=' S? VersionNum::='1.' [0-9]+ Misc::= Comment PI S <?xml version= 1.0?>

ELEMENT DEFINIZIONE FORMALE element::=emptyelemtag NotEmptyElement Well-Formed Constraint: Esiste un unico elemento, chiamato radice, che non appare come contesto di nessun altro elemento.

ELEMENTI XML NON VUOTI Un elemento XML è tutto ciò che è compreso tra un tag di apertura (Stag) ed il corrispettivo tag di chiusura (ETag) NotEmptyElement::= Stag content Etag Stag ::='<' Name (S Attribute)* S? '> ETag ::= '</' Name S? '> Name è una sequenza di caratteri che non inizi per xml S: indica lo spazio Well-Formed Constraint: il nome dello start-tag e dell end-tag devono coincidere. N.B.:Xml è case sensitive. Il nome di un attributo deve essere unico all interno di uno starttag

ATTRIBUTE Attribute::=Name Eq AttValue Eq::=S? '=' S? AttValue::='"' ([^<&"] Reference)* ' "'" ([^<&'] Reference)* "' Well Formed Constraint: Nessun riferimento ad entità esterne il simbolo < non può comparire come valore di attributo

REFERENCE Una entity reference si riferisce al contenuto di un altra entità Per referenziare un entità si usano l ampersand (&) e il (;) come delimitatori WFC: Reference::=EntityRef CharRef EntityRef::= '&' Name '; CharRef: insieme di caratteri ammissibili. Entity declared: l elemento a cui si fa riferimento deve già essere stato dichiarato altrove nel documento

CONTENT Tra i due tag si trova il contenuto (content) dell elemento, che può essere: Simple content: se il contenuto è un semplice testo (CharData) Element content: se il contenuto è costituito da altri elementi (element) Mixed content: se contiene testo intramezzato da altri elementi. Content::= CharData? ((element Reference CDSect PI Comment) CharData?)*

CDSECT L elemento CData permette di introdurre del testo in modo che questo non venga elaborato dal parser XML, ma venga semplicemente restituito all utente CDATA sections possono occorrere ovunque sia consetito inserire un insieme di caratteri Le CDATA sections iniziano con la stringa " <![CDATA[ " e finiscono con " ]]> ": CDSect::=CDStart CData CDEnd CDStart::='<![CDATA[' CData ::=(Char* - (Char* ']]>' Char*)) CDEnd ::=']]>'

PI: PROCESSING INSTRUCTIONS Sono istruzioni da passare allo strato applicativo: <?xml-stylesheet type="text/xsl" href="bpg4-0.xsl"?> IP target = xml-stylesheet IP data = type="text/xsl" href="bpg4-0.xsl Non processate a livello di parser XML istruzioni per una applicazione specifica PI::='<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>' PITarget::= Name - (('X' 'x') ('M' 'm') ('L' 'l'))

EMPTY TAG Elemento Vuoto: un elemento che non ha contenuto. Può essere rappresentato attraverso: Uno start-tag seguito immediatamente da un end tag EmptyElemTag ::='<'Name (S attribute)* S? '/>' WFC: Anche in questo caso il nome di attributo specificato deve essere unico all interno del tag.

DOCUMENTO BEN FORMATO Contiene uno o più elementi Esiste un unico elemento, chiamato radice, che non appare come content di qualche altro elemento. Per tutti gli altri elementi, se lo start-tag è nel content di un altro elemento, allora anche l end tag lo è Struttura ad albero Valgono tutti I Well-Formed Constraint sui singoli elementi.