SlideShare a Scribd company logo
XML

•Che cos’è XML


•Obiettivi di XML



•Da che cosa è composto
Che cos’è XML
• È un linguaggio di markup,in alcuni aspetti simile
  all’HTML,pensato per superare i limiti dell’HTML.
• Elabora documenti strutturati e rappresenta dati
  testuali molto complessi.
• Non è un linguaggio di programmazione ma serve
  per definire linguaggi applicativi, atti a descrivere
  la struttura di documenti.
• Utilizza dei tag o elementi che non sono
  predefiniti, ma non tiene conto del loro valore
  semantico, come avviene nell’HTML,quindi è il
  programmatore che li sceglie.
<tag/elementi> in XML
• I tag permettono di descrivere il documento
  sotto forma di albero
• I tag sono corredati di attributi che
  permettono di esprimere relazioni complesse
  tra i diversi rami dell’albero,permettendo la
  rappresentazione di strutture arbitrarie
• XML fornisce un meccanismo tramite cui il
  programmatore può costruire un linguaggio
  adatto alle proprie esigenze
Obiettivi
• XML deve essere utilizzabile in modo semplice su Internet
• XML deve supportare un gran numero di applicazioni
• XML deve essere compatibile con SGML
• Deve essere facile lo sviluppo di programmi che elaborino
  documenti XML
• Il numero di caratteristiche opzionali deve essere mantenuto al
  minimo possibile, idealmente a zero
• I documenti XML dovrebbero essere leggibili da un uomo e
  ragionevolmente chiari
• La progettazione XML dovrebbe essere rapida
• La progettazione XML deve essere formale e concisa
• I documenti XML devono essere facili da creare
• L'economicità nel markup XML non è di nessuna importanza
Da che cosa è composto
• File XML



• DTD(Document Type Definition)



• Eventualmente da un file XSL(eXtensible
  Stylesheet Language)o una visualizzazione
  tramite CSS
File XML
Sintassi:
• Ogni file inizia con la dichiarazione del linguaggio
  e la propria versione.
• Si ha un corpo del programma nel quale si
  specificano gli elementi che a noi interessano
• Ogni elemento va aperto e infine chiuso,non
  sono ammessi elementi senza chiusura
• Gli elementi devono essere correttamente
  nidificati.
Attributi
• Gli attributi vengono utilizzati per aggiungere una
  caratteristica o una proprietà ad un elemento.
• Un attributo è una coppia nome-valore separata da un
  segno di uguale (=) che può essere presente all’interno
  del tag di apertura di un elemento, dopo il nome
  dell’elemento stesso.
• Un elemento può contenere uno o più attributi.
• Il valore di un attributo deve essere racchiuso fra “ ” o ‘
  ’.
• Ogni attributo è sempre associato ad un elemento,
  non ha vita autonoma.
• Lo stesso attributo può ricorrere anche in più elementi.
Esempio file XML
Document Type Definition
• Una caratteristica fondamentale dell’XML è
  l’estensibilità. L’autore di un documento XML
  può creare nuovi tag per descrivere i
  contenuti semantici dei propri dati.
• Ciò ha portato alla necessità di definire delle
  regole grammaticali, o vincoli, alle quali gli
  elementi devono attenersi.
• Queste regole grammaticali sono definite
  nelle specifiche XML e sono codificate nel
  Document Type Definition.
Definizione di elementi (1)
• Per definire all’interno di una DTD la presenza di un elemento
  (tag) occorre utilizzare la parola chiave ELEMENT, la quale
  accetta la seguente sintassi



 dove:
 nome è il nome che il tag avrà nel documento XML
 (ovviamente deve rispettare le regole che rendono i
 documenti XML ben formati)
 regola_dtd indica il tipo di contenuto che questo tag avrà ed
 eventualmente la sua relazione con altri contenuti descritti
 nella DTD.
Definizione di elementi (2)
I possibili valori che può assumere regola_dtd sono:
• ANY: indica che il contenuto del tag può essere qualunque
   cosa, cioè tag e/o testo.
• PCDATA (Parsed Character Data): dichiara che il tag può
   contenere solo e unicamente contenuto di tipo testo,
   sintatticamente corretto dal momento che i parser dovranno
   leggerlo e interpretarlo.
• EMPTY: comunica al parser che il tag sarà costituito solo di
   attributi e non conterrà al suo interno né testo né altri tag.
• GRUPPI DI ELEMENTI
Definizione di elementi (3)
Vediamo qualche esempio:
• Tag chiamato Titolo che contiene al suo interno solo
  testo: <!ELEMENT Titolo (#PCDATA) >
• Tag chiamato Libro che può contenere sia testo che
  tag: <!ELEMENT Libro ANY >
• Tag chiamato Libro che non ha contenuto e
  rappresenta le sue informazioni solo tramite
  attributi: <!ELEMENT Libro EMPTY >
Definizione di attributi (1)
•   Per definire gli attributi di un documento XML si usa il comando ATTLIST,
    secondo la seguente sintassi:


dove:

•   elemento è il nome del tag del quale stiamo definendo l’attributo

•   nome_attributo è ovviamente il nome dell’attributo

•   tipo è la definizione del tipo di valore associato all’attributo

•   valore_default è un eventuale valore di default (predefinito)
Valori di default di attributi
• Quando si definiscono gli attributi per gli
  elementi è anche possibile dichiarare dei
  vincoli relativi alla presenza o meno degli
  stessi tag.
• Si utilizzano le seguenti parole chiave:
Esempio file DTD
•   <!ELEMENT farmacia (prodotti)>
•   <!ELEMENT prodotti
    (nome,codice,scadenza,genere,princ_att,FormaFarmaceutica)>
•   <!ELEMENT nome ( #PCDATA)>
•   <!ELEMENT codice ( #PCDATA)>
•   <!ELEMENT scadenza ( #PCDATA)>
•   <!ELEMENT genere ( #PCDATA)>
•   <!ATTLIST genere tipo (antidolorifico|antibiotico|antistaminico|
    antinfluenzale) #IMPLIED>
•   <!ELEMENT princ_att ( #PCDATA)>
•   <!ELEMENT FormaFarmaceutica ( #PCDATA)>
Fogli di stile



   • CSS
Esempio con CSS
nome{display:block; font-family: Arial, Helvetica; font-size:20px; color: green; }
codice,scadenza,princ_att{ display:block;font-family: Arial, Helvetica; font-size:15px;
    color: black;}
prodotti{margin-top:20; display:block; border-style:double;
text-align:center; position:relative; left:30%; width:30%;}
.antidolorifico{color: red;}
.Compresse{color: purple;}
.Supposte{color: orange;}
.Bustine{color: blue;}
Approfondimenti
• Parser(correttore di file XML)

• Namespaces(elementi con nomi uguali in un
  file ma con valori diversi)

More Related Content

What's hot

What is self-sovereign identity (SSI)?
What is self-sovereign identity (SSI)?What is self-sovereign identity (SSI)?
What is self-sovereign identity (SSI)?
Evernym
 
Il "Knowledge Graph" della Pubblica Amministrazione Italiana
Il "Knowledge Graph" della Pubblica Amministrazione ItalianaIl "Knowledge Graph" della Pubblica Amministrazione Italiana
Il "Knowledge Graph" della Pubblica Amministrazione Italiana
GraphRM
 
Alfresco : Implementing Membership and Security
Alfresco  : Implementing Membership and Security	Alfresco  : Implementing Membership and Security
Alfresco : Implementing Membership and Security
Wildan Maulana
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014
Toni de la Fuente
 
RDF 개념 및 구문 소개
RDF 개념 및 구문 소개RDF 개념 및 구문 소개
RDF 개념 및 구문 소개
Dongbum Kim
 
Introduction to RTI DDS
Introduction to RTI DDSIntroduction to RTI DDS
Introduction to RTI DDS
Real-Time Innovations (RTI)
 
LINEのFIDO導入と将来展望
LINEのFIDO導入と将来展望LINEのFIDO導入と将来展望
LINEのFIDO導入と将来展望
FIDO Alliance
 
The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)
Myungjin Lee
 
Introduction to the Archivematica API (September 2018)
Introduction to the Archivematica API (September 2018)Introduction to the Archivematica API (September 2018)
Introduction to the Archivematica API (September 2018)
Artefactual Systems - Archivematica
 
“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN
Chengjen Lee
 
Intro to RDM
Intro to RDMIntro to RDM
Intro to RDM
Sarah Jones
 
FIWARE Global Summit - FIWARE Overview
FIWARE Global Summit - FIWARE OverviewFIWARE Global Summit - FIWARE Overview
FIWARE Global Summit - FIWARE Overview
FIWARE
 
Interoperabilità semantica: metadatazione e ontologie per la PA
Interoperabilità semantica: metadatazione e ontologie per la PAInteroperabilità semantica: metadatazione e ontologie per la PA
Interoperabilità semantica: metadatazione e ontologie per la PA
Giorgia Lodi
 
Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...
Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...
Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...
SSIMeetup
 
FIWARE Identity Management and Access Control
FIWARE Identity Management and Access ControlFIWARE Identity Management and Access Control
FIWARE Identity Management and Access Control
FIWARE
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
LeeFeigenbaum
 
Mini Curso Web Services com PHP
Mini Curso Web Services com PHPMini Curso Web Services com PHP
Mini Curso Web Services com PHPelliando dias
 
Accesibilidad Web (esa gran olvidada)
Accesibilidad Web (esa gran olvidada)Accesibilidad Web (esa gran olvidada)
Accesibilidad Web (esa gran olvidada)
Adolfo Sanz De Diego
 
API Security : Patterns and Practices
API Security : Patterns and PracticesAPI Security : Patterns and Practices
API Security : Patterns and Practices
Prabath Siriwardena
 
OpenID for SSI
OpenID for SSIOpenID for SSI
OpenID for SSI
Torsten Lodderstedt
 

What's hot (20)

What is self-sovereign identity (SSI)?
What is self-sovereign identity (SSI)?What is self-sovereign identity (SSI)?
What is self-sovereign identity (SSI)?
 
Il "Knowledge Graph" della Pubblica Amministrazione Italiana
Il "Knowledge Graph" della Pubblica Amministrazione ItalianaIl "Knowledge Graph" della Pubblica Amministrazione Italiana
Il "Knowledge Graph" della Pubblica Amministrazione Italiana
 
Alfresco : Implementing Membership and Security
Alfresco  : Implementing Membership and Security	Alfresco  : Implementing Membership and Security
Alfresco : Implementing Membership and Security
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014
 
RDF 개념 및 구문 소개
RDF 개념 및 구문 소개RDF 개념 및 구문 소개
RDF 개념 및 구문 소개
 
Introduction to RTI DDS
Introduction to RTI DDSIntroduction to RTI DDS
Introduction to RTI DDS
 
LINEのFIDO導入と将来展望
LINEのFIDO導入と将来展望LINEのFIDO導入と将来展望
LINEのFIDO導入と将来展望
 
The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)
 
Introduction to the Archivematica API (September 2018)
Introduction to the Archivematica API (September 2018)Introduction to the Archivematica API (September 2018)
Introduction to the Archivematica API (September 2018)
 
“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN“Open Data Web” – A Linked Open Data Repository Built with CKAN
“Open Data Web” – A Linked Open Data Repository Built with CKAN
 
Intro to RDM
Intro to RDMIntro to RDM
Intro to RDM
 
FIWARE Global Summit - FIWARE Overview
FIWARE Global Summit - FIWARE OverviewFIWARE Global Summit - FIWARE Overview
FIWARE Global Summit - FIWARE Overview
 
Interoperabilità semantica: metadatazione e ontologie per la PA
Interoperabilità semantica: metadatazione e ontologie per la PAInteroperabilità semantica: metadatazione e ontologie per la PA
Interoperabilità semantica: metadatazione e ontologie per la PA
 
Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...
Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...
Verifiable Credentials 101 for SSI and Decentralized Digital Identity - Tyler...
 
FIWARE Identity Management and Access Control
FIWARE Identity Management and Access ControlFIWARE Identity Management and Access Control
FIWARE Identity Management and Access Control
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
 
Mini Curso Web Services com PHP
Mini Curso Web Services com PHPMini Curso Web Services com PHP
Mini Curso Web Services com PHP
 
Accesibilidad Web (esa gran olvidada)
Accesibilidad Web (esa gran olvidada)Accesibilidad Web (esa gran olvidada)
Accesibilidad Web (esa gran olvidada)
 
API Security : Patterns and Practices
API Security : Patterns and PracticesAPI Security : Patterns and Practices
API Security : Patterns and Practices
 
OpenID for SSI
OpenID for SSIOpenID for SSI
OpenID for SSI
 

Similar to Presentazione Xml

Xml Xslt
Xml  XsltXml  Xslt
Html base - classi prime - multimedia
Html base - classi prime - multimediaHtml base - classi prime - multimedia
Html base - classi prime - multimedia
Matteo Ziviani
 
Open web programming
Open web programmingOpen web programming
Open web programming
nois3lab
 
Xml annessi e connessi
Xml annessi e connessiXml annessi e connessi
Xml annessi e connessi
Domenico Briganti
 
InDesign e XML, impaginare una base dati
InDesign e XML, impaginare una base datiInDesign e XML, impaginare una base dati
InDesign e XML, impaginare una base dati
Claudio Marconato
 
Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner
Matteo Magni
 
Laboratorio Di Basi Di Dati 12 P H P Gestione Di File X M L
Laboratorio Di  Basi Di  Dati 12  P H P   Gestione Di File  X M LLaboratorio Di  Basi Di  Dati 12  P H P   Gestione Di File  X M L
Laboratorio Di Basi Di Dati 12 P H P Gestione Di File X M Lguestbe916c
 
Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesignerHtml e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner
Matteo Magni
 
Presentazione Corso - Parte 1
Presentazione Corso - Parte 1Presentazione Corso - Parte 1
Presentazione Corso - Parte 1
Giorgio Carpoca
 
Corso di HTML5 e CSS
Corso di HTML5 e CSSCorso di HTML5 e CSS
Corso di HTML5 e CSS
Salvatore Cordiano
 
Introduzione ai css
Introduzione ai cssIntroduzione ai css
Introduzione ai css
gianlucatroiani
 
Web base-01-html
Web base-01-htmlWeb base-01-html
Web base-01-html
Studiabo
 
Introduction to HTML
Introduction to HTMLIntroduction to HTML
Introduction to HTML
Roberto Dadda
 
HTMLslide html
HTMLslide htmlHTMLslide html
HTMLslide html
ritalerede
 
HTMLslide
HTMLslide HTMLslide
HTMLslide
ritalerede
 
Html e Css - 3 | WebMaster & WebDesigner
Html e Css - 3 | WebMaster & WebDesignerHtml e Css - 3 | WebMaster & WebDesigner
Html e Css - 3 | WebMaster & WebDesigner
Matteo Magni
 
A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...
A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...
A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...
Architecta | Società Italiana di Architettura dell'Informazione
 
Tradurre e scrivere per il web (prima parte)
Tradurre e scrivere per il web (prima parte)Tradurre e scrivere per il web (prima parte)
Tradurre e scrivere per il web (prima parte)
Andrea Spila
 
Open xml
Open xmlOpen xml
Open xml
artiscodex
 

Similar to Presentazione Xml (20)

Xml Xslt
Xml  XsltXml  Xslt
Xml Xslt
 
Html base - classi prime - multimedia
Html base - classi prime - multimediaHtml base - classi prime - multimedia
Html base - classi prime - multimedia
 
Open web programming
Open web programmingOpen web programming
Open web programming
 
Xml annessi e connessi
Xml annessi e connessiXml annessi e connessi
Xml annessi e connessi
 
InDesign e XML, impaginare una base dati
InDesign e XML, impaginare una base datiInDesign e XML, impaginare una base dati
InDesign e XML, impaginare una base dati
 
Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner
 
Laboratorio Di Basi Di Dati 12 P H P Gestione Di File X M L
Laboratorio Di  Basi Di  Dati 12  P H P   Gestione Di File  X M LLaboratorio Di  Basi Di  Dati 12  P H P   Gestione Di File  X M L
Laboratorio Di Basi Di Dati 12 P H P Gestione Di File X M L
 
Html e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesignerHtml e Css - 1 | WebMaster & WebDesigner
Html e Css - 1 | WebMaster & WebDesigner
 
Presentazione Corso - Parte 1
Presentazione Corso - Parte 1Presentazione Corso - Parte 1
Presentazione Corso - Parte 1
 
Corso di HTML5 e CSS
Corso di HTML5 e CSSCorso di HTML5 e CSS
Corso di HTML5 e CSS
 
Introduzione ai css
Introduzione ai cssIntroduzione ai css
Introduzione ai css
 
Web base-01-html
Web base-01-htmlWeb base-01-html
Web base-01-html
 
XML
XMLXML
XML
 
Introduction to HTML
Introduction to HTMLIntroduction to HTML
Introduction to HTML
 
HTMLslide html
HTMLslide htmlHTMLslide html
HTMLslide html
 
HTMLslide
HTMLslide HTMLslide
HTMLslide
 
Html e Css - 3 | WebMaster & WebDesigner
Html e Css - 3 | WebMaster & WebDesignerHtml e Css - 3 | WebMaster & WebDesigner
Html e Css - 3 | WebMaster & WebDesigner
 
A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...
A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...
A ciascuno il suo: archi, frecce e interfacce per servizi editoriali B2B e B2...
 
Tradurre e scrivere per il web (prima parte)
Tradurre e scrivere per il web (prima parte)Tradurre e scrivere per il web (prima parte)
Tradurre e scrivere per il web (prima parte)
 
Open xml
Open xmlOpen xml
Open xml
 

Presentazione Xml

  • 1. XML •Che cos’è XML •Obiettivi di XML •Da che cosa è composto
  • 2. Che cos’è XML • È un linguaggio di markup,in alcuni aspetti simile all’HTML,pensato per superare i limiti dell’HTML. • Elabora documenti strutturati e rappresenta dati testuali molto complessi. • Non è un linguaggio di programmazione ma serve per definire linguaggi applicativi, atti a descrivere la struttura di documenti. • Utilizza dei tag o elementi che non sono predefiniti, ma non tiene conto del loro valore semantico, come avviene nell’HTML,quindi è il programmatore che li sceglie.
  • 3. <tag/elementi> in XML • I tag permettono di descrivere il documento sotto forma di albero • I tag sono corredati di attributi che permettono di esprimere relazioni complesse tra i diversi rami dell’albero,permettendo la rappresentazione di strutture arbitrarie • XML fornisce un meccanismo tramite cui il programmatore può costruire un linguaggio adatto alle proprie esigenze
  • 4.
  • 5.
  • 6. Obiettivi • XML deve essere utilizzabile in modo semplice su Internet • XML deve supportare un gran numero di applicazioni • XML deve essere compatibile con SGML • Deve essere facile lo sviluppo di programmi che elaborino documenti XML • Il numero di caratteristiche opzionali deve essere mantenuto al minimo possibile, idealmente a zero • I documenti XML dovrebbero essere leggibili da un uomo e ragionevolmente chiari • La progettazione XML dovrebbe essere rapida • La progettazione XML deve essere formale e concisa • I documenti XML devono essere facili da creare • L'economicità nel markup XML non è di nessuna importanza
  • 7. Da che cosa è composto • File XML • DTD(Document Type Definition) • Eventualmente da un file XSL(eXtensible Stylesheet Language)o una visualizzazione tramite CSS
  • 8. File XML Sintassi: • Ogni file inizia con la dichiarazione del linguaggio e la propria versione. • Si ha un corpo del programma nel quale si specificano gli elementi che a noi interessano • Ogni elemento va aperto e infine chiuso,non sono ammessi elementi senza chiusura • Gli elementi devono essere correttamente nidificati.
  • 9. Attributi • Gli attributi vengono utilizzati per aggiungere una caratteristica o una proprietà ad un elemento. • Un attributo è una coppia nome-valore separata da un segno di uguale (=) che può essere presente all’interno del tag di apertura di un elemento, dopo il nome dell’elemento stesso. • Un elemento può contenere uno o più attributi. • Il valore di un attributo deve essere racchiuso fra “ ” o ‘ ’. • Ogni attributo è sempre associato ad un elemento, non ha vita autonoma. • Lo stesso attributo può ricorrere anche in più elementi.
  • 11. Document Type Definition • Una caratteristica fondamentale dell’XML è l’estensibilità. L’autore di un documento XML può creare nuovi tag per descrivere i contenuti semantici dei propri dati. • Ciò ha portato alla necessità di definire delle regole grammaticali, o vincoli, alle quali gli elementi devono attenersi. • Queste regole grammaticali sono definite nelle specifiche XML e sono codificate nel Document Type Definition.
  • 12. Definizione di elementi (1) • Per definire all’interno di una DTD la presenza di un elemento (tag) occorre utilizzare la parola chiave ELEMENT, la quale accetta la seguente sintassi dove: nome è il nome che il tag avrà nel documento XML (ovviamente deve rispettare le regole che rendono i documenti XML ben formati) regola_dtd indica il tipo di contenuto che questo tag avrà ed eventualmente la sua relazione con altri contenuti descritti nella DTD.
  • 13. Definizione di elementi (2) I possibili valori che può assumere regola_dtd sono: • ANY: indica che il contenuto del tag può essere qualunque cosa, cioè tag e/o testo. • PCDATA (Parsed Character Data): dichiara che il tag può contenere solo e unicamente contenuto di tipo testo, sintatticamente corretto dal momento che i parser dovranno leggerlo e interpretarlo. • EMPTY: comunica al parser che il tag sarà costituito solo di attributi e non conterrà al suo interno né testo né altri tag. • GRUPPI DI ELEMENTI
  • 14. Definizione di elementi (3) Vediamo qualche esempio: • Tag chiamato Titolo che contiene al suo interno solo testo: <!ELEMENT Titolo (#PCDATA) > • Tag chiamato Libro che può contenere sia testo che tag: <!ELEMENT Libro ANY > • Tag chiamato Libro che non ha contenuto e rappresenta le sue informazioni solo tramite attributi: <!ELEMENT Libro EMPTY >
  • 15. Definizione di attributi (1) • Per definire gli attributi di un documento XML si usa il comando ATTLIST, secondo la seguente sintassi: dove: • elemento è il nome del tag del quale stiamo definendo l’attributo • nome_attributo è ovviamente il nome dell’attributo • tipo è la definizione del tipo di valore associato all’attributo • valore_default è un eventuale valore di default (predefinito)
  • 16. Valori di default di attributi • Quando si definiscono gli attributi per gli elementi è anche possibile dichiarare dei vincoli relativi alla presenza o meno degli stessi tag. • Si utilizzano le seguenti parole chiave:
  • 17. Esempio file DTD • <!ELEMENT farmacia (prodotti)> • <!ELEMENT prodotti (nome,codice,scadenza,genere,princ_att,FormaFarmaceutica)> • <!ELEMENT nome ( #PCDATA)> • <!ELEMENT codice ( #PCDATA)> • <!ELEMENT scadenza ( #PCDATA)> • <!ELEMENT genere ( #PCDATA)> • <!ATTLIST genere tipo (antidolorifico|antibiotico|antistaminico| antinfluenzale) #IMPLIED> • <!ELEMENT princ_att ( #PCDATA)> • <!ELEMENT FormaFarmaceutica ( #PCDATA)>
  • 18. Fogli di stile • CSS
  • 19. Esempio con CSS nome{display:block; font-family: Arial, Helvetica; font-size:20px; color: green; } codice,scadenza,princ_att{ display:block;font-family: Arial, Helvetica; font-size:15px; color: black;} prodotti{margin-top:20; display:block; border-style:double; text-align:center; position:relative; left:30%; width:30%;} .antidolorifico{color: red;} .Compresse{color: purple;} .Supposte{color: orange;} .Bustine{color: blue;}
  • 20.
  • 21. Approfondimenti • Parser(correttore di file XML) • Namespaces(elementi con nomi uguali in un file ma con valori diversi)