Introduzione alle griglie computazionali LEZIONE N. 8. Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione alle griglie computazionali LEZIONE N. 8. Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno"

Transcript

1 Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno LEZIONE N. 8 Elementi di linguaggio XML Introduzione alle Griglie computazionali - aa

2 Sommario Introduzione Dall HTML all XML XML DTD, XML Schema Namespaces XPath Xsl, Xslt Xquery Introduzione alle Griglie computazionali - aa

3 Introduzione XML: EXtensible Markup Language World Wide Web Consortium (W3C) 1998 Metalinguaggio Universale linguaggio per la definizione di altri linguaggi o applicazioni Unificazione formato di scambio e distribuzione di dati fra diverse applicazioni su diverse piattaforme hw Separazione fra STRUTTURA (generale) e CONTENUTO (specifico) Rapida diffusione Ad uno stesso sorgente corrispondono diverse visualizzazioni Introduzione alle Griglie computazionali - aa

4 Dall HTML all XML Introduzione alle Griglie computazionali - aa

5 HTML Hyper-Text Markup Language Orientato alla visualizzazione dei dati Caratterizzato da un insieme limitato e predefinito di marcatori Universalmente diffuso e stabile Semplice Non descrive la semantica associata ai dati Introdotte tecnologie accessorie di potenziamento (Applet, linguaggi di scripting, fogli di stile inseriti per cercare di separare aspetto e struttura del documento ) Introduzione alle Griglie computazionali - aa

6 HTML (2) HTML: <h1>bibliografia XML</h1> <ul> <li><i> Learning XML</i>.<br> <b> Erik T. Ray</b>.<br> <i> Release Team[oR] </i>, 2001<br> XML is a flexible way to create "self-describing data" and to share both the format and the data on the World Wide Web, intranets, and elsewhere... </li> <li><i>xml by example</i><br> <b>benoit Marchal</b>.<br> <i>john Pierce</i>, 2000.<br> </li>... </ul> How does the by Example series make you a better programmer? The by Example series teaches programming using the best method possible. After a concept is introduced, you ll see one or more examples of that concept in use... Introduzione alle Griglie computazionali - aa

7 Web: nuove esigenze Il WEB è cambiato Nascita del commercio elettronico (dinamicità dei dati) Creazione di servizi al pubblico (rilascio di documenti) Dati scambiati fra organizzazioni diverse Il modello HTML è inadeguato alto numero di marcatori (ma) insieme limitato (e predefinito) di marcatori non tutte le applicazioni interpretano in modo analogo uno stesso codice HTML Marcatura slegata dalla semantica del contenuto Introduzione alle Griglie computazionali - aa

8 XML Orientato alla descrizione dei dati Dati utilizzabili da qualsiasi applicazione che comprenda il linguaggio XML (browser, db, cell...) Uno stesso documento può essere utilizzato per scopi diversi. Creazione di marcatori personalizzati Aggiunta di informazioni semantiche ai documenti Definisce la struttura logica del documento XML non è nè il successore nè il sostituto di HTML HTML stesso può essere ridefinito tramite l XML (XHTML) Introduzione alle Griglie computazionali - aa

9 XML: XML (2) <bibliografia> <pubblicazione id="release Team[oR]" tipo="libro"/> <titolo>learning XML</titolo> <autore>erik T. Ray</autore> <editore> Release Team[oR] </editore> <anno>2001</anno> <commento> XML is a flexible way to create "self-describing data" and to share both the format and the data on the World Wide Web, intranets, and elsewhere...</commento> </pubblicazione> <pubblicazione id="jhon Pierce" tipo="libro"/> <titolo>xml by example</titolo> <autore>john Pierce</autore> <anno>2000</anno> <commento>...you ll see one or more examples of that concept in use... </commento> </pubblicazione> </bibliografia> Introduzione alle Griglie computazionali - aa

10 XML Introduzione alle Griglie computazionali - aa

11 Terminologia Documento XML: file contenente il testo e i marcatori E caratterizzato da una struttura LOGICA modo in cui viene creato un documento ed una FISICA costituita da tutto il contenuto del documento stesso Introduzione alle Griglie computazionali - aa

12 Struttura Logica (1) Documento XML: dichiarazioni, elementi, istruzioni di elaborazione e commenti. Prologo: dichiarazione XML: versione delle specifiche XML cui il documento deve conformarsi: dichiarazione di codifica (encoding) schema di codifica dei caratteri (ad esempio UTF-8 (default) o EUC-JP) dichiarazione di documento autonomo (standalone): yes (default): non sono presenti dichiarazioni di markup esterne al documento (well formed) <?xml version= 1.0 encoding= UTF-8 standalone= yes?> dichiarazione del tipo di documento DTD Descrizione formale dei marcatori usati per qualificare un elemento, i suoi attributi e relazioni fra loro <!DOCTYPE indirizzo SYSTEM indirizzo.dtd > Introduzione alle Griglie computazionali - aa

13 Struttura Logica (2) elemento Document (radice): Elemento più esterno del documento (necessario); include tutti i dati di un documento XML, inclusi tutti i sottoelementi, (nidificati) all interno di questo marcatore <indirizzo> <via > via Cimarosa, 30 </via> <località>collegno</località> <provincia sigla= TO /> <cap codice= /> </indirizzo> Nidificazione: consente di incorporare un oggetto o un costrutto l uno all interno dell altro; Ogni elemento diverso dalla radice deve essere completamente contenuto in uno ed un solo elemento. Introduzione alle Griglie computazionali - aa

14 XML: albero etichettato Radice (Element Document) Nodi: elementi etichettati nome (element type) attributi costituiti da coppie nome, valore; a loro volta possono avere dei sottoalberi di elementi, attributi e valori; Foglie: attributi (coppie di nome e valore) o valori (stringhe, numeri, date ) bibliografia Pubblicazione Id= tipo=.. titolo autore editore Learning XML Erik T. Ray Introduzione alle Griglie computazionali - aa

15 Conformità Documento XML conforme (well-formed): rispetta le regole relative alla struttura e alla nidificazione prima elencati tutti gli elementi possiedono marcatori di apertura e di chiusura; eccezione viene fatta per gli elementi vuoti: <provincia sigla= TO /> oppure <provincia sigla= TO ></provincia> possiede un unico elemento radice XML è case-sensitive Un documento conforme non è detto che abbia senso dal punto di vista semantico. Introduzione alle Griglie computazionali - aa

16 Validità Validazione: consente di verificare se un documento oltre ad essere well-formed è semanticamente sensato. Documento XML associato ad una definizione di struttura che descrive il nome e la posizione dei marcatori e degli attributi nel documento. Due tecniche di descrizione della struttura di contenuti XML sono: DTD (Document Type Definition) XML Schema Introduzione alle Griglie computazionali - aa

17 DTD & XML Schema Introduzione alle Griglie computazionali - aa

18 DTD - Document Type Definition Specifica delle regole che controllano la struttura di un documento XML. Definisce gli elementi leciti all'interno del documento XML Defininisce la struttura di ogni elemento. (contenuto ciascun elemento: ordine, quantità di elementi, opzionali o obbligatori- grammatica) Definisce attributi e loro valore per ogni elemento Un documento XML valido segue tutte le regole del DTD Un documento valido è conforme anche a tutti i limiti di validità identificati dalle specifiche relative all XML (well formed) Introduzione alle Griglie computazionali - aa

19 DTD (2) La sintassi slegata dal mondo XML La dichiarazione della DTD è nel prologo, nella dichiarazione del tipo di documento: DTD interna: parte integrante del documento <?xml version= 1.0?> <!DOCTYPE nome_root [ contenuto della DTD ]>... DTD esterna: file separato da quello contenente il documento <?xml version= 1.0?> <!DOCTYPE nome_root SYSTEM >... Vincolo di validità: nome_root = radice del documento. Introduzione alle Griglie computazionali - aa

20 DTD (3) Ogni dichiarazione contenuta nella DTD è delimitata dai simboli <! e > ; Tipi di dichiarazione previsti: elementi attributi entità Introduzione alle Griglie computazionali - aa

21 DTD (4) - Element <!ELEMENT nome regola_dtd> Nome del marcatore nel documento. Ogni nome deve essere dichiarato una sola volta. regola_dtd definisce e vincola il contenuto dell elemento indicando quali sotto-elementi possono essere contenuti nell elemento che si sta dichiarando, ed eventuali relazioni con altri contenuti descritti nella DTD. ANY: il marcatore può contenere tag e/o testo <!ELEMENT elem ANY> PCDATA (Parsed Character Data): il marcatore può contenere solo testo <!ELEMENT elem (#PCDATA)> EMPTY: il marcatore può contenere esclusivamente attributi <!ELEMENT elem EMPTY> Gruppi di elementi: il marcatore consiste di nomi di sotto-elementi organizzati in sequenze e scelte alternative mediante una grammatica: Introduzione alle Griglie computazionali - aa

22 DTD (5) - Element Descrizione elemento elemento+ elemento* elemento? e1 e2 en e1, e2,, en () Significato elemento compare una ed una sola volta elemento compare una o più volte elemento compare 0, 1 o più volte elemento compare 0 od una volta elemento scelto fra una sequenza di molti sequenza ordinata di elementi raggruppano le singole specifiche Introduzione alle Griglie computazionali - aa

23 DTD (6) - Attribute List Declaration Consentono di definire insiemi di attributi associati ad un elemento: <!ATTLIST elemento attr_list> elemento: è il nome del marcatore per cui vengono definiti gli attributi; attr_list: lista costituita da una o più terne che descrivono ognuna un attributo nome_attributo tipo_attributo valore_default tipo_attributo: specifica il tipo dell attributo; Introduzione alle Griglie computazionali - aa

24 DTD (7) - Attribute List Declaration Tipo attributo CDATA ID IDREF ENTITY NMTOKEN Enumerazione definizione Dati di tipo carattere (eccetto < e & ) Identificatore univoco di un elemento. Riferimento ad un elemento per mezzo del suo ID. Nome di una entità esterna dichiarata Simile a CDATA ma spazi e stringa vuota non dono ammessi Sequenza di valori (nmtoken) separati da Introduzione alle Griglie computazionali - aa

25 DTD (8) - Attribute List Declaration valore_default: permette di dichiarare dei vincoli relativi alla presenza o meno degli attributi nei marcatori. Vincolo #IMPLIED #REQUIRED #FIXED valore definizione Valore dell attributo non obbligatorio Valore dell attributo obbligatorio Valore dell attributo costante non modificabile Introduzione alle Griglie computazionali - aa

26 DTD (9) - Attribute List Declaration <?xml version= 1.0 > <!DOCTYPE bibliografia [ <!ELEMENT bibliografia ((citazione+),nota?)> <!ELEMENT citazione (autore+, titolo, editore?, anno?,classificazione?)> <!ATTLIST citazione isbn CDATA #REQUIRED> <!ELEMENT autore (#PCDATA)> <!ATTLIST autore id ID #IMPLIED idref IDREF #IMPLIED %attnazione> <!ELEMENT titolo (#PCDATA)> <!ELEMENT editore (#PCDATA)> <!ATTLIST editore %attnazione;> <!ELEMENT anno (#PCDATA)> <!ELEMENT classificazione EMPTY> <!ATTLIST classificazione schema (DDC LCC UDC) DDC valore CDATA #IMPLIED> <!ELEMENT nota (#PCDATA)> <!ENTITY estensore Mario Rossi, mrossi@esempio.it > <!ENTITY % attnazione nazione CDATA #IMPLIED > ]> XML DTD <! esempio di doc XML validato dalla precedente DTD --> <bibliografia> <citazione isbn= > <autore id= Pial >Paolo Pialorsi</autore> <titolo>xml il nuovo linguaggio</titolo> <editore nazione= Italia > Mondatori Informatica</editore> <anno>2002</anno> <classificazione valore= 6 /> </citazione> <citazione isbn= > <autore>erik T.Ray</autore> <titolo>learning XML</titolo> </citazione> <nota>bibliografia redatta da:&estensore.</nota> </bibliografia> Introduzione alle Griglie computazionali - aa

27 DTD (10) - Entity Declaration Questo tipo di dichiarazione permette di definire vari tipi di entità: entità parametriche: hanno lo scopo di parametrizzare e semplificare la scrittura di una DTD; hanno effetto solo all interno della DTD e sono precedute da % sia nella dichiarazione che nel riferimento entità generali: la loro occorrenza viene rimpiazzata con il testo definito nella dichiarazione, sono dichiarate internamente al documento e usate solo nel contenuto del documento. <!ENTITY nome valore> Nel documento XML il riferimento ad una entità avviene con &nome. Introduzione alle Griglie computazionali - aa

28 DTD (11) - Entity Declaration XML prevede un insieme di entità predefinite: Riferimento all entità & < > &apos; " Carattere & < > Introduzione alle Griglie computazionali - aa

29 DTD - Limitazioni Necessita di una propria sintassi (editor, parser e processor ad hoc) Struttura lineare: non risalta il concetto di contenimento degli elementi del documento XML Impossibilità di definire due elementi figli diversi, aventi lo stesso nome e contenuti in elementi distinti Impossibilità di definire criteri per la validazione del contenuto degli elementi Introduzione alle Griglie computazionali - aa

30 XML Schema Descrive documenti XML attraverso una sintassi XML. Definizione dei nomi dei marcatori e degli attributi di un documento, e la loro posizione all interno dello stesso Caratterizzazione del contenuto di marcatori e attributi tramite tipi di dati noti (integer, string, ) Prevede controllo del valore di nodi di tipo testo o attributo tramite espressioni regolari Introduzione alle Griglie computazionali - aa

31 XML Schema (2) Dichiarazione di elementi: associa ad un elemento un nome ed un tipo. Il tipo associato all evento può essere personalizzato Definizione di Tipo Complesso (complextype): coinvolge elementi che contengono al loro interno altri elementi e/o attributi Dichiarazione di attributi: definisce eventuali attributi contenuti Dichiarazione di elementi: definisce eventuali sotto-elementi, il loro numero e l ordine con cui si annidano Definizione di Tipo Semplice (simpletype) è utilizzata come contenuto (testuale) di nodi di tipo elemento o di tipo attributo. Introduzione alle Griglie computazionali - aa

32 XML Schema (3) - Simple Type Elemento Simple Type è composto da: primitivi: tipi semplici quali string, boolean, decimal, float, derivati da tipi primitivi: restriction length, minlength, maxlength (lunghezza lista) enumeration (lista di valori consentiti) pattern (espressioni regolari) whitespace (preserve/replace/collapse white-space) mininclusive, maxinclusive (bounds on numbers) Introduzione alle Griglie computazionali - aa

33 XML Schema (4) - Simple Type <simpletype name="may_date"> <restriction base="date"> <pattern value="\d{4}-05-\d{2}"/> </restriction> </simpletype> Introduzione alle Griglie computazionali - aa

34 XML Schema (5) - Complex Type Si parla di Complex Type in presenza di: Dichiarazioni di attributi <attribute name="..." type=".." use=".."/> dove type è una definizione di tipo semplice, mentre use può essere optional (default), required, or prohibited (può essere usato in un altra restrizione ma non direttamente) <anyattribute... /> indica qualunque attributo tra quelli contenuti in uno dei namespaces definiti nel documento dell XML Schema. Introduzione alle Griglie computazionali - aa

35 XML Schema (6) - Complex Type Uno tra i seguenti marcatori: empty (default) il complextype è vuoto; simple content: <simplecontent>... </simplecontent> il complextype contiene solo testo o un simpletype; una combinazione di: <sequence>... </sequence> sequenza specifica di elementi <choice>... </choice> gruppo di elementi in alternativa fra loro <all>... </all> riferisce un gruppo di elementi senza riferimenti all ordine ognuno dei quali con riferimenti ad elementi <element name="..." minoccurs=".." maxoccurs=".."/> dove name è il nome dell elemento, minoccurs e maxoccurs indicano rispettivamente il numero minimo e massimo (se elemento diverso da radice) di occorrenze (default: 1) Introduzione alle Griglie computazionali - aa

36 XML Schema (7) - Complex Type <xsd:complextype name="order_type"> <xsd:choice> <xsd:element name="address" type= xsd:string /> <xsd:sequence> <xsd:element name=" " minoccurs="0" maxoccurs="unbounded"/> <xsd:element name="phone"/> </sequence> </choice> <attribute name="id" type="unsignedint" use="required"/> </complextype> <xsd:element name= order type= order_type /> Introduzione alle Griglie computazionali - aa

37 XML Schema & DTD Gli schema hanno le stesse funzionalità delle DTD offrono alcuni significativi vantaggi: sono espressi con la sintassi XML; godono degli stessi vantaggi propri di XML (es: estensibilità) possono essere elaborati da applicazioni che riconoscono XML; includono definizioni di tipo per gli elementi (datatype) Introduzione alle Griglie computazionali - aa

38 NAMESPACE Introduzione alle Griglie computazionali - aa

39 Namespace Qualificano in modo univoco i nomi degli elementi e degli attributi in un documento XML Nomi identificati con una risorsa esterna univoca: URI (Uniform Resource Identifier) Nomi qualificati: prefisso + parte locale Prefisso: namespace cui l'elemento appartiene (URI) Parte locale: nome appartenente a tale namespace. Dichiarazione dello spazio dei nomi: Inclusa nel prologo oppure all interno di un elemento appartenente allo spazio dei nomi, la prima volta che questo si utilizza. Introduzione alle Griglie computazionali - aa

40 Namespace (2) <?xml version="1.0"?> <prodotto> <codice>cod01</codice> <prezzo valuta= eur >100</prezzo> </prodotto> Significati diversi Nasce il conflitto se inglobati in un unico documento senza definizione di relativi Namespace... <?xml version="1.0"?> <cliente> <codice>mr1979</codice> <generalita> <nome>mario Rossi</nome> <indirizzo> via Sparone 13 </indirizzo> <cap>10148</cap> <comune>torino</comune> <generalita> </cliente> Introduzione alle Griglie computazionali - aa

41 Namespace (3) <?xml version="1.0"?> <ordine xmlns= xmlns:prod = xmlns:cli = > <prod:prodotto> <prod:codice>cod01</prod:codice> <prod:prezzo valuta= eur >100</prod:prezzo> </prod:prodotto> <cli:cliente> <cli:codice>mr1979</cli:codice> <cli:generalita> <cli:nome>mario Rossi</cli:nome> <cli:indirizzo>via Sparone 13</cli:indirizzo> <cli:cap>10148</cli:cap> <cli:comune>torino</cli:comune> </cli:generalita> </cliente> </ordine> Introduzione alle Griglie computazionali - aa

42 XPATH Introduzione alle Griglie computazionali - aa

43 XPath Xml Path Language Fornisce metodo di navigazione e selezione degli elementi all interno di un documento XML. Dal punto di vista di XPath, il documento XML è un albero: ogni elemento, commento, attributo, stringa di testo (non-markup) è un nodo dell albero. Relazioni tra i nodi semplici: un elemento annidato è un nodo figlio dell elemento che lo contiene; un attributo è figlio del suo elemento; commenti e testo sono figli dell elemento che li contiene. Introduzione alle Griglie computazionali - aa

44 XPath Il costrutto principale è definito dalle location path: sequenze di location steps separate da / esempio: child::section[position()<6] / descendant::cite / attribute::href seleziona tutti gli attributi href di elementi cite contenuti fra le prime 5 sezioni di un documento Sintassi di una location step: axis::node-test [predicato 1] [predicato 2] [predicato 3] axis: seleziona un insieme di nodi candidati (figli del nodo correntemente selezionato, context node). node-test: nodo da usare come filtro sui nodi da cercare; nametest nodetype: predicati (0+): costituiscono un filtro ulteriore da applicare al node-set identificato. Introduzione alle Griglie computazionali - aa

45 XPath Location Path Axes utilizzabili: ancestor: tutti i genitori del context node fino a root ancestor-or-self: come ancestor più il context node stesso attribute: tutti attribute del context node child: tutti i figli del context node descendant: eredi del context node a qualunque livello descendant-or-self: come sopra più il context node parent: il genitore del context node following-sibling tutti i nodi a destra del context node preceding-sibling: tutti i nodi a sinistra del context node following: tutti i nodi che seguono il context node come posizione ordinale preceding: tutti i nodi che precedono il context node come posizione ordinale self: context node Introduzione alle Griglie computazionali - aa

46 XPath: gerarchie <a> <b/> <c> </c> </a> <e/> <d xmlns:y= x= > </d> <i/> <h/> <f> <g/> </f> Nodo Nodo Corrente Corrente ancestor: [c,a] ancestor-or-self: [d,c,a] attribute: [x] child: [f] descendant: [f,g] descendant-or-self: [d,f,g] following: [i,h] following-sibling: [i] namespace: [y] parent: [c] preceding: [b,e] preceding-sibling: [e] self: [d] Introduzione alle Griglie computazionali - aa

47 XPath Location Path Per individuare un particolare nodo su un axis, si usano il suo tipo e/o il suo nome tramite i node tests. node name: nomi di nodi o attributi che diventano condizione di filtro node type: text() comment() processing-instruction(): nodi che elaborano istruzioni node() Introduzione alle Griglie computazionali - aa

48 XPath - Location Path attribute::*: tutti gli attributi del nodo corrente child::prezzo[@valuta= Euro ]: elementi Prezzo, figli del nodo corrente con att Valuta = Euro ancestor::node(): tutti nodi antenati del context node descendant-or-self::test(): testo di tutti i nodi eredi compreso il context node child::cd: tutti nodi cd figli del nodo corrente; child::cd[position()=1]: seleziona il primo figlio cd del nodo corrente <?xml version="1.0" encoding="iso "?> <Catalogo> <cd Paese="USA"> <Titolo>The Best</Titolo> <Artista>Bob Dylan</Artista> <Prezzo valuta= dol >10.90</Prezzo> </cd> <cd Paese= Ita > <Titolo>Hide your heart</titolo> <Artista>Bonnie Tyler</Artista> <Prezzo Valuta= Euro >9.90</Prezzo> </cd> </Catalogo> Introduzione alle Griglie computazionali - aa

49 XPath - Funzioni Funzioni che operano sui node-set count(node-set) numero di nodi in un node-set name(node-set) nome del primo nodo in un node-set Funzioni che operano sulle stringhe string(value) cast concat(string, string,...) concatenazione di stringhe Funzioni booleane boolean(value) cast not(boolean) negazione Funzioni che operano sui numeri number(value) cast Introduzione alle Griglie computazionali - aa

50 XSL Introduzione alle Griglie computazionali - aa

51 XSL extensible Stylesheet Language applicazione in sintassi XML nata per consentire la rappresentazione di documenti XML sul web funziona attraverso template da applicare agli elementi. utilizza un doppio processo: ricostruisce un albero strutturale formatta gli elementi Costituito da 3 parti: XSLT: Linguaggio per la trasformazione di documenti XML XPath: Linguaggio per la d di parti di documenti XML XSL Formatting Objects: Linguaggio per la formattazione di documenti XML Introduzione alle Griglie computazionali - aa

52 Xslt Trasforma contenuti XML in altri contenuti XML Opera sull albero associato al documento XML Tipicamente viene utilizzato per trasformare XML in XHTML Introduzione alle Griglie computazionali - aa

53 Processo di trasformazione Usa XPath per definire le porzioni di documento che soddisfano template predefiniti Su tali porzioni di XML è attuata la trasformazione Nulla è fatto sul resto del documento che viene lasciato intatto Introduzione alle Griglie computazionali - aa

54 Dichiarazioni XSL XSL stylesheets sono scritti usando XML La prima linea identifica il file XSL come un file XML Viene quindi introdotto il riferimento al Namespace per XSL: <xsl:stylesheet version= 1.0 xmlns:xsl= Transform > Introduzione alle Griglie computazionali - aa

55 XSL Template <xsl:template>: contiene la specifica delle regole da applicare ad un specifico nodo Viene utilizzato l attributo match per associare il template con un elemento XML Es: <xsl:template match = "/"> / seleziona la radice del documento XML (quindi l intero documento) chiusura </xsl:template> Introduzione alle Griglie computazionali - aa

56 Esempio: <?xml version = "1.0"?> <xsl:stylesheet version = "1.0 xmlns:xsl=" <xsl:template match = "/"> <html> <head> <title>module List</title> </head> <body> <table border = "1" bgcolor = "cyan"> <thead> <tr> <th>module Number</th> <th>name</th> <th>information</th> </tr> </thead> </table> </body> </html> </xsl:template> </xsl:stylesheet> Introduzione alle Griglie computazionali - aa

57 Associare uno Stylesheet <?xml version = "1.0"?> <?xml-stylesheet type = "text/xsl" href="moduletable.xsl"?> <modulelist> <module no="cp3024"> <name>web Information Systems</name> <comment>easy!</comment> </module> <module no="cp2027"> <name>prog in Java</name> <comment>hard</comment> </module> </modulelist> Introduzione alle Griglie computazionali - aa

58 XSL Value-Of Seleziona il valore di un elemento XML Lo aggiunge all output Es: <xsl:value-of select="name"/> select contiene un espressione XPath Determina cosa viene aggiunto all output (può essere il contenuto di un attributo oppure il testo associato ad un marcatore) Introduzione alle Griglie computazionali - aa

59 XSL For-Each Seleziona tutti i nodi di un insieme specificato ES: <xsl:for-each select = "modulelist/module"> select contiene un espressione XPath che identifica l insieme di nodi su cui operare Introduzione alle Griglie computazionali - aa

60 Esempio <?xml version = "1.0"?> <xsl:stylesheet version = "1.0" xmlns:xsl = " orm"> <xsl:template match = "/"> <html> <head> <title>module List</title> </head> <body> <table border = "1" bgcolor = "cyan"> <thead> <tr> <th>module Number</th> <th>name</th> <th>information</th> </tr> </thead> <tbody> <xsl:for-each select = "modulelist/module"> <tr> <td><xsl:value-of select = "@no"/> </td> <td><xsl:value-of select = "name"/> </td> <td><xsl:value-of select = "comment"/> </td> </tr> </xsl:for-each> </tbody> </table> </body> </html> </xsl:template> </xsl:stylesheet> Introduzione alle Griglie computazionali - aa

61 output Introduzione alle Griglie computazionali - aa

62 XSL Formatting Objects XSL-FO è un insieme di elementi ed attributi per la definizione di informazioni tipografiche, indipendentemente dal formato finale di presentazione Lo scopo di XSL non riguarda solo le trasformazioni strutturali Formattazione di contenuti destinati a svariate tipologie di output Alla trasformazione XSLT segue una seconda trasformazione atta a formattare l output Introduzione alle Griglie computazionali - aa

63 XQuery Introduzione alle Griglie computazionali - aa

64 XQuery "SQL per XML". Linguaggio per interrogare e manipolare i dati di un documento XML Estensione ed evoluzione di XPath, con cui condivide librerie di funzioni ed operatori Applicabile su tutte diverse sorgenti dati XML (database relazionali, ad oggetti,... ) Sintassi per navigare all interno di una struttura di un documento simile a quella prevista da XPath Query come insieme di proposizioni (come in SQL) Introduzione alle Griglie computazionali - aa

65 Struttura XQuery Una query in XQuery è costituita da un'espressione che legge una sequenza di nodi XML od un singolo valore e restituisce come risultato una sequenza di nodi od un singolo valore. Le espressioni XQuery sono composte da espressioni XPath per individuare i nodi da analizzare e da funzionalità aggiuntive per il specifiche di XQuery per il recupero delle informazioni Dichiarazione Namespace (opzionale) Definizione funzioni (opzionale) Import schema (opzionale) L espressione della Query spesso si compone di molte espressioni Query Prolog Expr Sequence Introduzione alle Griglie computazionali - aa

66 Esempio <libro> <titolo>titolo_del_libro</titolo> <autore>autore_del_libro</autore> <editore>editore_del_libro</editore> <prezzo>prezzo_del_libro</prezzo> </libro> document("arch_libri.xml")//libro[prezzo > 50] SORTBY (autore) Ricerca tutti i nodi <libro> che hanno un prezzo maggiore di 50 e ordina il risultato in funzione del nome dell'autore. Introduzione alle Griglie computazionali - aa

67 XQUERY: Espressioni FLWR L'espressione principale utilizzata: For: iterazione Let: bind di variabili ad insiemi Where: descrizione di predicati che attuano filtro sulla risposta Return: genera il risultato Esempio: FOR $e IN document("arch_libri.xml")//editore LET $l := document("arch_libri.xml")//libro[editore=$e] WHERE count($l) > 5 RETURN <risultato>{$e}</risultato> For: crea una lista contenente tutti gli editori presenti nel nostro archivio. Let: associa a ciascun editore, la lista dei libri da lui editi, andando a creare una lista ordinata di tuple formate da ($e,$l). Where: si considerano solo gli editori che hanno pubblicato più di cinque libri. Return: il risultato è ottenuto inserendo all'interno di un elemento chiamato <risultato>, i nodi <editore> che soddisfano i criteri della nostra query. Introduzione alle Griglie computazionali - aa

68 XQUERY - funzioni Le funzioni che XQuery mette a disposizione per operare sulle liste sono: count(): restituisce il numero di elementi presenti avg(), per calcolare il valor medio dei valori degli elementi union(), intersection(), difference() che realizzano operazioni 'insiemistiche' sugli elementi. Introduzione alle Griglie computazionali - aa

69 XQUERY - IF-THEN-ELSE FOR $l IN document("arch_libri.xml")//libro RETURN <risultato> { IF ($l/editore ='Editore1') THEN $l/titolo ELSE $l/autore } </risultato> Se l editore è 'Editore1', vengono selezionati i titoli dei libri; perle altre case editrici vengono selezionati gli autori dei libri Introduzione alle Griglie computazionali - aa

70 XQUERY- SOME-IN-SATISFIES FOR $l IN document("arch_libri.xml")//libro WHERE SOME $t IN $l/titolo SATISFIES (contains($t,"xml") AND contains($t,"tutorial")) RETURN <risultato> { $l/titolo } </risultato> restituisce come risultato il titolo di tutti i libri nei cui titoli compare contemporaneamente sia la stringa 'XML' che la stringa 'tutorial'; Introduzione alle Griglie computazionali - aa

71 XQUERY: EVERY-IN-SATISFIES FOR $l IN document("arch_libri.xml")//libro WHERE EVERY $t IN $l/titolo SATISFIES contains($t,"xml") RETURN <risultato> { $l/titolo } </risultato> restituisce i titoli dei libri che contengono la stringa 'XML' nel loro titolo. Introduzione alle Griglie computazionali - aa

72 Riferimenti... XML Tutorial: XPath Tutorial: XSL Tutorial: XQuery Tutorial: Introduzione alle Griglie computazionali - aa

Introduzione alle griglie computazionali. Elementi di XML

Introduzione alle griglie computazionali. Elementi di XML Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno LEZIONE N. 8 Elementi di XML Sommario Introduzione Dall HTML all XML XML Namespaces

Dettagli

extensible Markup Language

extensible Markup Language XML a.s. 2010-2011 extensible Markup Language XML è un meta-linguaggio per definire la struttura di documenti e dati non è un linguaggio di programmazione un documento XML è un file di testo che contiene

Dettagli

2 Reti di Calcolatori XML

2 Reti di Calcolatori XML 2 3 4 5 6 7 8 root element Risultati Basi di dati 10 Dicembre 2003 Mario Rossi Corso Data List a_st

Dettagli

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

La struttura: DTD. Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino. laura.farinetti@polito.it La struttura: DTD Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino laura.farinetti@polito.it L. Farinetti - Politecnico di Torino 1 Modello di struttura I tag annidati danno origine

Dettagli

Introduzione alle griglie computazionali. Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno

Introduzione alle griglie computazionali. Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno Introduzione alle griglie computazionali Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno LEZIONE N. 7 Elementi di XML Introduzione alle griglie computazionali - a.a.

Dettagli

Linguaggi ed Applicazioni mul1mediali

Linguaggi ed Applicazioni mul1mediali Linguaggi ed Applicazioni mul1mediali 06.05 XLST Maurizio Maffi ISTI Informa1on Science and Technology Ins1tute Da XSL a XSLT XSL o extensible Stylesheet Language, è un linguaggio XML creato inizialmente

Dettagli

Linguaggi per il web oltre HTML: XML

Linguaggi per il web oltre HTML: XML Linguaggi per il web oltre HTML: XML Luca Console Con XML si arriva alla separazione completa tra il contenuto e gli aspetti concernenti la presentazione (visualizzazione). XML è in realtà un meta-formalismo

Dettagli

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

La sintassi di un DTD si basa principalmente sulla presenza di quattro dichiarazioni: XML: DTD Da un punto di vista cronologico, il primo approccio per la definizione di grammatiche per documenti XML è rappresentato dai Document Type Definition (DTD). Un DTD è un documento che descrive

Dettagli

APPENDICE C extensible Markup Language

APPENDICE C extensible Markup Language APPENDICE C extensible Markup Language C.1 extensible Markup Language, concetti di base XML è un dialetto di SGML progettato per essere facilmente implementabile ed interoperabile con i suoi due predecessori

Dettagli

XSL: extensible Stylesheet Language

XSL: extensible Stylesheet Language XSL: extensible Stylesheet Language XSL è un insieme di tre linguaggi che forniscono gli strumenti per l elaborazione e la presentazione di documenti XML in maniera molto flessibile. I tre linguaggi devono

Dettagli

Settimana I...1. Giorno 1 - Introduzione all XSLT...3

Settimana I...1. Giorno 1 - Introduzione all XSLT...3 Settimana I...1 Giorno 1 - Introduzione all XSLT...3 Generalità su XSLT...3 Introduzione a XML e XSLT... 4 Cos è XSLT?... 5 Che cosa fa XSLT?... 6 Come si presenta XSLT?... 6 XSLT e la famiglia di XML...

Dettagli

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

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A. 2011-2012. Language) Stylesheet. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Linguaggi e Tecnologie Web A. A. 2011-2012 XSL (extensible( Stylesheet Language) Eufemia TINELLI Contenuti XSL = XSLT + XSL-FO (+ XPath)

Dettagli

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

Infrastrutture INFormatiche Ospedaliere 2 Corso di laurea di Ingegneria Medica. Indice Indice 4. XML Extensible Markup Language...2 4.1 Usi di XML...3 4.2 Caratteristiche di XML...3 4.3 Elementi...5 4.4 Attributi...5 4.4.1 Documento XML ben formato...6 4.5 Informazioni di controllo...6 4.5.1

Dettagli

Modellazione e Gestione di Informazioni non Strutturate

Modellazione e Gestione di Informazioni non Strutturate Università della Calabria, Corso di Laurea Specialistica in Ingegneria Gestionale Progettazione di Sistemi Informativi Docente: Alfredo Cuzzocrea Modellazione e Gestione di Informazioni non Strutturate

Dettagli

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

Dettagli

XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS

XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS CSS e XML Per formatare i documenti XML è possibile seguire due strade: Quando non c è bisogno della potenza elaborativa di XSL, l utilizzo

Dettagli

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

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML Thomas Imolesi imolesi@libero.it fti@bologna.enea.it XML un linguaggio

Dettagli

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

Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language. a.a. 2004/05 Tecnologie Web 1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language a.a. 2004/05 Tecnologie Web 1 XML - I XML (exstensible Markup Language): XML è un formato standard,

Dettagli

Introduzione al linguaggio XSL (exensible Styles Language) XSLT(eXensible Styles Language Trasformations)

Introduzione al linguaggio XSL (exensible Styles Language) XSLT(eXensible Styles Language Trasformations) Introduzione al linguaggio XSL (exensible Styles Language) XSLT(eXensible Styles Language Trasformations) Lezione del Corso Interazione Uomo Macchina 1, Docente Francesco Mele Corso di Laurea in Informatica

Dettagli

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

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 Introduzione ad XML 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 XML XML (Extensible Markup Language) è un insieme standard di regole sintattiche per modellare la struttura di

Dettagli

XML. XML è contemporaneamente: XML non è:

XML. XML è contemporaneamente: XML non è: XML XML è contemporaneamente: Linguaggio di annotazione (Markup) che permette di creare gruppi di marcatori (tag set) personalizzati (MathML, XHTML, chemicalml, ecc..) Formato standard per lo scambio dei

Dettagli

/XML ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 XML

/XML ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 XML XML 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 XML XML è un linguaggio di marcatura proposto dal W3C XML definisce una sintassi generica per contrassegnare i dati di un documento elettronico con marcatori

Dettagli

a cura di Maria Finazzi

a cura di Maria Finazzi Esercitazioni di XML a cura di Maria Finazzi (11-19 gennaio 2007) e-mail: maria.finazzi@unipv.it pagine web: Il trattamento dell'informazione Testo a stampa: Come

Dettagli

Tecniche Multimediali

Tecniche Multimediali Un programma di computer fa quello che gli dici, non quello che vuoi. Legge di Greer (Leggi di Murphy applicate all informatica) Tecniche Multimediali Corso di Laurea in «Informatica» - aa 2010-2011 Prof.

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

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

ma l XML va ben al di là dell HTML: serve per descrivere Il metalinguaggio XML 1 Introduzione all'xml Il futuro dei linguaggi di markup: XML = EXtensible Markup Language è una versione semplificata dell SGML Nasce con l'intento di superare alcune limitazioni

Dettagli

Prefazione. Piersalvo Ortu 1

Prefazione. Piersalvo Ortu 1 Prefazione Questa tesi ha come obiettivo principale descrivere in che modo i documenti XML possano essere utilizzati per essere visualizzati su diversi apparati, dai browser Web ai dispositivi cellulari,

Dettagli

Tecnologie per XML. Tecnologie per XML

Tecnologie per XML. Tecnologie per XML Progetto di sistemi informatici 2004 - Tecnologie per XML Paolo Papotti papotti@dia.uniroma3.it Lab. basi di dati Cosa vedremo oggi Richiami di XML Rappresentazione dati Sintassi Schemi Tecnologie per

Dettagli

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti

Dettagli

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

XML e TEI: introduzione alla codifica dei testi letterari. La nascita del linguaggio. Il concetto di metalinguaggio di codifica SGML XML e TEI: introduzione alla codifica dei testi letterari Con la codifica dei testi si intende la rappresentazione dei testi stessi su un supporto digitale in un formato utilizzabile dall'elaboratore (Machine

Dettagli

Tecnologie Web T Introduzione a XML

Tecnologie Web T Introduzione a XML Tecnologie Web T Introduzione a Home Page del corso: http://www-db.deis.unibo.it/courses/tw/ Versione elettronica: 2.01..pdf Versione elettronica: 2.01.-2p.pdf 1 Che cos è? : Extensible Markup Language:

Dettagli

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

XML. Parte VI - Introduzione e nozioni fondamentali di sintassi. XML: Extensible Markup Language: XML Parte VI - Introduzione e nozioni fondamentali di sintassi XML: cosa è XML: Extensible Markup Language: è un linguaggio che consente la rappresentazione di documenti e dati strutturati su supporto

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Introduzione a XML. Language

Introduzione a XML. Language Introduzione a XML 1 Che cos è XML? XML: Extensible Markup Language anguage: è un linguaggio che consente la rappresentazione di documenti e dati strutturati su supporto digitale è uno strumento potente

Dettagli

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

HTML e Linguaggi. Politecnico di Milano Facoltà del Design Bovisa. Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione HTML e Linguaggi Politecnico di Facoltà del Design Bovisa Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://home.dei.polimi.it/cugola Indice Il linguaggio del

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

Creare documenti XML. La natura epistemologica della codifica. Perché comprare XML? La struttura gerarchica ordinata. Riassumendo le componenti

Creare documenti XML. La natura epistemologica della codifica. Perché comprare XML? La struttura gerarchica ordinata. Riassumendo le componenti Lez. 7 Creare documenti XML La codifica deve raggiungere 2 traguardi: Accessibilità tecnica Permanenza a lungo termine 05/03/12 Perché comprare XML La natura epistemologica della codifica HTML Descrive

Dettagli

Rappresentare i file XML - XSL

Rappresentare i file XML - XSL Rappresentare i file XML - XSL Laura Papaleo papaleo@disi.unige.it CSS2, XSL, XSLT, XPath 1 XSL - exstensible Stylesheet Language XSL Raccomandazione del W3C (2001) Per aumentare la flessibilità dello

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

In un documento XML il markup è separato dal contenuto e può contenere conteno. Si veda il modulo su XML del corso di...

In un documento XML il markup è separato dal contenuto e può contenere conteno. Si veda il modulo su XML del corso di... Approfondimenti di XML Un utile editor per XML : http://pollo.sourceforge.net/ Ci sono varie ragioni per cui l XML ha acquisito una certa importanza. L XML crea documenti e dati indipendenti dall applicazione

Dettagli

Document Type Definition (DTD)

Document Type Definition (DTD) Laboratorio di Programmazione Distribuita Document Type Definition () Dott. Marco Bianchi Università degli Studi di L'Aquila bianchi@di.univaq.it http://di.univaq.it/~bianchi Relazione tra classi e oggetti

Dettagli

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

Terminologia. Laboratorio di sistemi interattivi. XML: descrivere caratteristiche arbitrarie di un documento. Lezione 11: Introduzione a XML Laboratorio di sistemi interattivi Lezione 11: Introduzione a XML 1 Terminologia XML = extensible Markup Language DTD = Document Type Definition XSL = extensible Stylesheet Language XSLT = extensible Stylesheet

Dettagli

Le query. Lezione 6 a cura di Maria Novella Mosciatti

Le query. Lezione 6 a cura di Maria Novella Mosciatti Lezione 6 a cura di Maria Novella Mosciatti Le query Le query sono oggetti del DB che consentono di visualizzare, modificare e analizzare i dati in modi diversi. Si possono utilizzare query come origine

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

XML: extensible Markup Language

XML: extensible Markup Language XML: extensible Markup Language Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino laura.farinetti@polito.it L. Farinetti - Politecnico di Torino 1 Introduzione XML: extensible Markup

Dettagli

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML Reti Linguaggio HTML 1 HTML = Hypertext Markup Language E il linguaggio usato per descrivere documenti ipertestuali Ipertesto = Testo + elementi di collegamento ad altri testi (link) Linguaggio di markup:

Dettagli

Sommario. Settimana - Gli elementi fondamentali... 1. Introduzione...xv. Giorno 1 - I linguaggi di markup...3

Sommario. Settimana - Gli elementi fondamentali... 1. Introduzione...xv. Giorno 1 - I linguaggi di markup...3 000B-XML-Somm.fm Page iii Wednesday, June 12, 2002 9:25 AM Sommario Introduzione...xv A chi si rivolge questo libro...xvi Convenzioni usate in questo libro...xvi Settimana - Gli elementi fondamentali...

Dettagli

OSSIF WEB. Manuale query builder

OSSIF WEB. Manuale query builder OSSIF WEB Manuale query builder - Maggio 2010 1) Sommario 1) SOMMARIO... 2 INTRODUZIONE... 3 Scopo del documento... 3 Struttura del documento... 3 Descrizione dell interfaccia grafica... 3 SELEZIONE DI

Dettagli

XML: La nascita del linguaggio

XML: La nascita del linguaggio XML: introduzione alla codifica dei testi Con la codifica dei testi si intende la rappresentazione dei testi stessi su un supporto digitale in un formato utilizzabile dall'elaboratore (Machine Readable

Dettagli

HTML il linguaggio per creare le pagine per il web

HTML il linguaggio per creare le pagine per il web HTML il linguaggio per creare le pagine per il web Parte I: elementi di base World Wide Web Si basa sul protocollo HTTP ed è la vera novità degli anni 90 Sviluppato presso il CERN di Ginevra è il più potente

Dettagli

Laboratorio Matematico Informatico 2

Laboratorio Matematico Informatico 2 Laboratorio Matematico Informatico 2 (Matematica specialistica) A.A. 2006/07 Pierluigi Amodio Dipartimento di Matematica Università di Bari Laboratorio Matematico Informatico 2 p. 1/1 Informazioni Orario

Dettagli

Introduzione ai Sistemi di Gestione di Basi di Dati XML

Introduzione ai Sistemi di Gestione di Basi di Dati XML Introduzione ai Sistemi di Gestione di Basi di Dati Introduzione ai Sistemi di Gestione di Basi di Dati Obiettivi Memorizzare ed estrarre documenti da RDBMS. Trasformare dati tabellari in dati e viceversa.

Dettagli

4 - XML e basi di dati

4 - XML e basi di dati Sommario 4 - XML e basi di dati 1. Introduzione. 2. Dati strutturati, semistrutturati e non strutturati. 3. Modello dei dati gerarchico (Albero) di XML. 4. Documenti XML, DTD, e schema XML. 5. Documenti

Dettagli

MODELLO RELAZIONALE. Introduzione

MODELLO RELAZIONALE. Introduzione MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

URI. Introduzione. Pag. 1

URI. Introduzione. Pag. 1 URI Introduzione Gli URI (Universal Resource Indentifier) sono una sintassi usata in WWW per definire i nomi e gli indirizzi di oggetti (risorse) su Internet. Questi oggetti sono considerati accessibili

Dettagli

Progettazione di Basi di Dati

Progettazione di Basi di Dati Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello

Dettagli

SQL/OLAP. Estensioni OLAP in SQL

SQL/OLAP. Estensioni OLAP in SQL SQL/OLAP Estensioni OLAP in SQL 1 Definizione e calcolo delle misure Definire una misura significa specificare gli operatori di aggregazione rispetto a tutte le dimensioni del fatto Ipotesi: per ogni misura,

Dettagli

XML. (extensible Markup Language) Seconda parte

XML. (extensible Markup Language) Seconda parte XML (extensible Markup Language) Seconda parte XML Schema: motivazione XML è lo strumento ideale per esprimere documenti di testo, ma è anche molto di più è uno strumento per trasferire DATI STRUTTURATI

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio

Dettagli

Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere;

Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Maschere e Query Le Maschere (1/2) Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Le maschere sono simili a moduli cartacei: ad ogni campo corrisponde un etichetta

Dettagli

Tecniche Multimediali

Tecniche Multimediali Chiedersi se un computer possa pensare non è più interessante del chiedersi se un sottomarino possa nuotare Edsger Dijkstra (The threats to computing science) Tecniche Multimediali Corso di Laurea in «Informatica»

Dettagli

Manuale scritto da Fuso Federico 4 A Anno scolastico 2011/2012 Parte 1

Manuale scritto da Fuso Federico 4 A Anno scolastico 2011/2012 Parte 1 Manuale scritto da Fuso Federico 4 A Anno scolastico 2011/2012 Parte 1 Chi può riuscire a creare pagine HTML? La realizzazione di pagine web non eccessivamente sofisticate è alla portata di tutti, basta

Dettagli

Lezioni di Laboratorio sui Data Base

Lezioni di Laboratorio sui Data Base Lezioni di Laboratorio sui Data Base Docente Tutor: Dott. Gianluigi Roveda Informatica per l'impresa Prima Parte: Open Office - Base PREMESSA Questo lavoro è stato realizzato a partire dalle slides del

Dettagli

Capitolo 13. Interrogare una base di dati

Capitolo 13. Interrogare una base di dati Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per

Dettagli

XML e Basi di Dati Corso di Basi di Dati 1. XML e basi di dati. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine

XML e Basi di Dati Corso di Basi di Dati 1. XML e basi di dati. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine XML e Basi di Dati Corso di Basi di Dati 1 XML e basi di dati Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine XML e Basi di Dati Corso di Basi di Dati 2 Cos è XML XML è l

Dettagli

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO Modulo 1: IL LINGUAGGIO HTML Formato degli oggetti utilizzati nel Web Elementi del linguaggio HTML: tag, e attributi

Dettagli

Protocolli applicativi: FTP

Protocolli applicativi: FTP Protocolli applicativi: FTP FTP: File Transfer Protocol. Implementa un meccanismo per il trasferimento di file tra due host. Prevede l accesso interattivo al file system remoto; Prevede un autenticazione

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

Una metodologia di progettazione di applicazioni web centrate sui dati

Una metodologia di progettazione di applicazioni web centrate sui dati Una metodologia di progettazione di applicazioni web centrate sui dati A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 1 / 2 0 1 2 Progettazione logica di un sito web centrato sui dati Si

Dettagli

Operazioni sui database

Operazioni sui database Operazioni sui database Le operazioni nel modello relazionale sono essenzialmente di due tipi: Operazioni di modifica della base di dati (update) Interrogazioni della base di dati per il recupero delle

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

Dettagli

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme

Dettagli

Guida all uso del web service SDMX

Guida all uso del web service SDMX Guida all uso del web service SDMX Introduzione L obiettivo di questo documento è l illustrazione sintetica degli step che tecnicamente bisogna compiere affinché un generico client sia in grado di interagire

Dettagli

Informatica per la comunicazione" - lezione 10 -

Informatica per la comunicazione - lezione 10 - Informatica per la comunicazione" - lezione 10 - Evoluzione del Web" Nell evoluzione del Web si distinguono oggi diverse fasi:" Web 1.0: la fase iniziale, dal 1991 ai primi anni del 2000" Web 2.0: dai

Dettagli

Manuale di realizzazione dei modelli di documento

Manuale di realizzazione dei modelli di documento MystiqueXML Manuale di realizzazione dei modelli di documento Indice 1 Le tabelle...5 1.1 Tabelle condizionali...5 1.2 Tabelle Multiple - un solo livello...5 1.3 Tabelle Multiple - a più livelli...5 2

Dettagli

Forniscono competenze che favoriscono l inserimento nel mondo del lavoro, danno un importante riconoscimento, in termini di crediti, in alcuni ambiti

Forniscono competenze che favoriscono l inserimento nel mondo del lavoro, danno un importante riconoscimento, in termini di crediti, in alcuni ambiti Forniscono competenze che favoriscono l inserimento nel mondo del lavoro, danno un importante riconoscimento, in termini di crediti, in alcuni ambiti universitari e sono di supporto nel progetto di orientamento

Dettagli

SVILUPPARE TEMPLATE CON ARIADNE WCM. Linguaggi e tecnologie per sviluppare siti web

SVILUPPARE TEMPLATE CON ARIADNE WCM. Linguaggi e tecnologie per sviluppare siti web SVILUPPARE TEMPLATE CON ARIADNE WCM Linguaggi e tecnologie per sviluppare siti web 1 Le componenti da considerare XML XSL + XPATH TEMPLATE REPOSITORY ACM 2 Sviluppare Template con Ariadne WCM 1. INTRODUZIONE

Dettagli

XQuery. è lo standard adottato dal W3C per la XML. - Consente di iterare sugli elementi di un documento - Consente di ristrutturare i contenuti XML

XQuery. è lo standard adottato dal W3C per la XML. - Consente di iterare sugli elementi di un documento - Consente di ristrutturare i contenuti XML ;4XHU\ XQuery Il linguaggio XQuery è lo standard adottato dal W3C per la manipolazione e ristrutturazione di documentid XML. - Consente di iterare sugli elementi di un documento - Consente di ristrutturare

Dettagli

Si formulino le seguenti interrogazioni tramite il linguaggio SQL:

Si formulino le seguenti interrogazioni tramite il linguaggio SQL: Informatica per le Scienze Umane - Corso di Laurea in Lettere Appello del 15.01.2009 - Docente: Massimo Coppola Modello Relazionale e SQL Si consideri la seguente base di dati relativa alla redazione di

Dettagli

Join in SQL (primo modo) Informatica. Tabella Dipartimento. Interrogazione 4a. Interrogazione 4b. Interrogazione 4a

Join in SQL (primo modo) Informatica. Tabella Dipartimento. Interrogazione 4a. Interrogazione 4b. Interrogazione 4a Join in SQL (primo modo) Informatica Lezione 7 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 09- Per formulare interrogazioni che coinvolgono

Dettagli

Comandi principali del linguaggio HTML (Hyper Text Markup Language)

Comandi principali del linguaggio HTML (Hyper Text Markup Language) Comandi principali del linguaggio HTML (Hyper Text Markup Language) Caratteristiche di HTML HTML è un linguaggio di formattazione (markup) di documenti ed è il linguaggio base per produrre documenti per

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

Dettagli

XML (extensible Markup Language)

XML (extensible Markup Language) Supporto On Line Allegato FAQ FAQ n.ro MAN-8HVCNU5634 Data ultima modifica 16/06/2011 Prodotto Dichiarazioni fiscali 2011 Modulo Generica DF Oggetto: Modello IRAP 2011 XML - XMLNotepad: Guida all uso e

Dettagli

Introduzione ai tipi di dato astratti: applicazione alle liste

Introduzione ai tipi di dato astratti: applicazione alle liste Universitàdegli Studi di L Aquila Facoltàdi Scienze M.F.N. Corso di Laurea in Informatica Corso di Laboratorio di Algoritmi e Strutture Dati A.A. 2005/2006 Introduzione ai tipi di dato astratti: applicazione

Dettagli

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: Il modello relazionale I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: 1. forniscono sistemi semplici ed efficienti per rappresentare

Dettagli

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

XML e standard connessi. XML, XML-Names, XSL, XPointer, XLink XML e standard connessi XML, XML-Names, XSL, XPointer, XLink 1 Sommario Introduzione XML 1.0 XML-Names XSL XPointer e XLink 2 XML XML (Extensible Markup Language [sic!]) è un meta-linguaggio di markup,

Dettagli

Simple & Efficient. www.quick-software-line.com

Simple & Efficient. www.quick-software-line.com Cosa è XML? extensible Markup Language Linguaggio è una definizione limitativa XML serve a descrivere con precisione qualsiasi informazione XML è estensibile. Ovvero non ha tag predefiniti come HTML XML

Dettagli

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.

Dettagli

I linguaggi di marcatura e XML per la codifica dei dati d archivio

I linguaggi di marcatura e XML per la codifica dei dati d archivio I linguaggi di marcatura e XML per la codifica dei dati d archivio Corso di formazione per l'apprendimento e l'utilizzo della piattaforma IBC-xDams Modena, 21 gennaio 2014 Mirella M. Plazzi e F.Ricci IBC

Dettagli

Linguaggi ed Applicazioni mul1mediali

Linguaggi ed Applicazioni mul1mediali Università degli Studi di Urbino "Carlo Bo" Linguaggi ed Applicazioni mul1mediali 06.01- Introduction to mark-up. 06.02- classification 06.03- SGML 06.04- XML Hypertext Maurizio Maffi ISTI Informa1on Science

Dettagli

Informatica. Prof. M. Colajanni Università di Modena Reggio Emilia

Informatica. Prof. M. Colajanni Università di Modena Reggio Emilia Informatica Prof. M. Colajanni Università di Modena Reggio Emilia PARTE 4 - World Wide Web WORLD WIDE WEB La killer application di Internet I motivi alla base del successo del Web ( perché è risultata

Dettagli

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Dettagli

Il linguaggio XML. Capitolo 3. 3.1 Introduzione al linguaggio XML

Il linguaggio XML. Capitolo 3. 3.1 Introduzione al linguaggio XML Capitolo 3 Il linguaggio XML 3.1 Introduzione al linguaggio XML Il linguaggio XML (extensible Markup Language) è stato sviluppato nel 1996 da XML Working Group, gruppo di lavoro organizzato dal World Wide

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

Working Draft 0.5 (Telefonia)

Working Draft 0.5 (Telefonia) Working Draft 0.5 (Telefonia) Abstract Lo scopo del progetto è lo sviluppo di un SCP (Semantic Collaborative Portal), cioè un sistema di visualizzazione di una banca dati documentaria di grandi dimensioni

Dettagli

TECN.PROG.SIST.INF. XML. Roberta Gerboni

TECN.PROG.SIST.INF. XML. Roberta Gerboni Roberta Gerboni Introduzione Lo sviluppo tecnologico relativo alle reti il crescente sviluppo della distribuzione di hardware per la comunicazione hanno reso necessaria Semantic Web significa un Web comprensibile

Dettagli