La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

XML per documenti e applicazioni transazionali su Internet Alessio Saltarin Progetto XML Factory.

Presentazioni simili


Presentazione sul tema: "XML per documenti e applicazioni transazionali su Internet Alessio Saltarin Progetto XML Factory."— Transcript della presentazione:

1 XML per documenti e applicazioni transazionali su Internet Alessio Saltarin (alessios@docflow.it) Progetto XML Factory

2 PERCORSO ELEMENTI DI XML –Sintassi, DTD, Namespace, Schema XML PER DOCUMENTI –Gestione documentale –Lapproccio Microsoft XML PER DATI –Knowledge Management XML OGGI –Tecnologie correlate

3 Elementi di XML

4 Struttura e Sintassi Prologo: – Document Type Declaration (DTD) – Document Element (Root) –

5 Un primo esempio Acetaldeide ammoniaca RPE 15 mm 61,08 99% (alcalimetrico 95.0C1.5C Acetale RE 20 mm 118,17 98% (GLC) 20/4 = 0.8310.005 20/D = 1.3800.003 102.2C (b.r. 1.0C)

6 Nomi di tag XML è case-sensitive –,,, e sono tutti elementi diversi. Devono cominciare con una lettera, un underscore (_), o due punti (:) Possono includere lettere, numeri, punti (.), linee (-), underscore (_), o due punti (:) Non possono cominciare con XML

7 Primo esempio (reagenti.xml) Parsing in Internet Explorer 5.0 Parsing in Netscape (Mozilla Gecko) Editing con XML Spy

8 ELEMENTI Rappresentano la struttura LOGICA Libro Titolo Capitolo Paragrafo 1: Era una notte buia e tempestosa... Paragrafo 2: Loscurità portava con sé molti segreti...

9 ATTRIBUTI Gli elementi possono contenere: –Dati –Attributi A. Saltarin

10 Utilizzo di attributi Acetaldeide ammoniaca RPE 15 61,08 99% 95.0 Acetale RE 20 118,17 98% 0.8310.005 1.3800.003 102.2

11 ENTITA Rappresentano la struttura fisica Sono parti di testo che il processore XML inserisce dove sono referenziate Possono essere un solo carattere o un intero libro Possono essere immagini, animazioni, file PDF o record di database

12 Scrivete a: &MIOEMAIL; REFERENZA (reference): DICHIARAZIONE (entità parsabile):

13 Unparsed Entities e Notazioni Lentità MyImage è un file binario in notazione PNG: La notazione PNG è processata dal programma Viewer.exe:

14 Document Type Definition (DTD) Definisce Elementi, Attributi, Entità e Notazioni Dichiara quali di questi sono legali nel documento… …e in quale posto sono legali La conformità ad una DTD si dichiara nella sezione DOCTYPE del file XML

15 XML+DTD = ML DTD Mark-Up Language

16 Una semplice DTD <!ELEMENT Riga (descrizione+, pezzatura, qualifica, ps, massa_molec, titolo, titolint, densita*, idx_rifrazione*, punto_fusione*, punto_eboll*)>

17 TIPI FONDAMENTALI #PCDATA (Parsable Character Data) Sono caratteri che possono contenere tags e quindi vanno parsati (questo è anche il tipo di default). #CDATA (Character Data) Sono caratteri che in ogni caso il parser deve ignorare. EMPTY Questo elemento non può contenere dati. ANY Questo elemento può contenere qualsiasi tipo.

18 ATTRIBUTI GENERICI #REQUIRED Ogni elemento deve specificare il valore di questo attributo. #IMPLIED Attributo opzionale. #FIXED value Il valore value è lunico possibile per lattributo. Può essere implicito o esplicito. default Il valore default è assunto se il documento non ne specifica altri.

19 Una DTD per E-MAIL... <!ATTLIST EMAIL LANGUAGE (Western|Greek|Latin|Universal) "Western" ENCRYPTED CDATA #IMPLIED PRIORITY (NORMAL|LOW|HIGH) "NORMAL"> <!ATTLIST BCC HIDDEN CDATA #FIXED "TRUE">

20 … e rispettivo MarkUp Language <!DOCTYPE EMAIL SYSTEM email.dtd" [ ]> federico@docflow.com &SIGNATURE;@docflow.com cristiano@docflow.com alessio@docflow.com Utilizziamo il mark-up per le email Ciao da &SIGNATURE;. Ti saluto, -&SIGNATURE;

21 VALIDITA Documenti validi (valid): –Un documento valido rispetta strettamente le regole definite nella DTD Documenti ben formati (well formed): –Un documento ben formato rispetta completamente la specifica XML definita dallente standardizzatore (W3C)

22 PARSER VALIDANTI Lo sono quelli che non permettono di parsare documenti che non rispettino le regole contenute nella DTD (es.:MSXML, XMLSpy) Parser non validanti non effettuano alcun controllo di validità del documento (es.: IE5).

23 NAMESPACE Qualificano gli elementi in maniera unica su tutto il Web. Permettono agli sviluppatori di utilizzare mark-up provenienti da schema o DTD diverse. I componenti schema sono riutilizzabili.

24 Esempio di Namespace <ec:Order xmlns:ec="http://ecommerce.org/schema/ xmlns:dsig="http://digitalSignatures.org/schema/" xmlns:df=http://www.docflow.it/"> 80183589575795589189518915 Petti Carlo 15-06-99 <bk:BOOK xmlns:bk="http://books.org/schema/ TITLE="Number, the Language of Science" AUTHOR="Dantzig, Tobias"/> <bk:BOOK xmlns:bk="http://books.org/schema/ TITLE="Introduction to Objectivist Epistemology" AUTHOR="Rand, Ayn"/>

25 XML-Data (Schema) Cosa che cè che non va in DTD? Ha una sintassi difficile e non xml-like Non supporta i tipi (intero, stringa) Non supporta specificamente i Namespace Non permette lereditarietà fra componenti

26 Esempio di Schema <AttributeType name="type" dt:type="enumeration" dt:values="rain snow" default="rain"/>

27 XML per Documenti

28 FRAMEWORK ODB (RDB) XMLFactory File System LaTeX CSS/XSL PDF Carta Web CDROM

29 DocFlow XML Factory Lobiettivo è avere uno strumento in grado di: offrire rappresentazioni automatiche e molteplici di uno stesso flusso di dati (es: cataloghi elettronici, e-commerce, report aziendali) validare il dato prima di presentarlo creare on the fly cataloghi personalizzati su carta, su Web oppure su CDROM

30 Documenti Ricchi HTML è abbastanza potente per formattare pagine Web, ma non lo è per pagine da stampare su carta. Con XML e un appropriato foglio di stile possono essere definiti linguaggi di markup con riferimenti specifici alla carta.

31 Un esempio di markup per la carta Alice nel paese delle meraviglie Lewis Carrol <formato pagina=A4 vedove=sì orfani=no numpagina=basso a destra num_sulla_prima_pagina=no sillabazione=no margine_alto=15mm margine_basso=15mm margine_destro=20mm margine_sinistro=20mm rilegatura=no/>

32 Documenti XML su carta Documento XML Processore XML2TEX Processore XML2PS TEX PostScript

33 APPROCCIO MICROSOFT E possibile visualizzare un documento XML ben formato che contenga tag HTML in qualsiasi browser. Documenti che contengano tag XML di formattazione possono essere utilizzati da word-processor e visualizzati nel browser senza perdere informazioni, né di formato, né di contorno (autore, soggetto, data).

34 Linee guida Microsoft XML –E usata estensivamente nei siti MS (esempio) –E la tecnologia Web in Office2000 Parser XML –E implementato nativamente in IE5 Tecnologie supportate –XML attraverso W3C –XSL, Schema (CDF)

35 MS Word 2000 <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="-//W3C//DTD HTML 4.0//EN"> MS Word 2000 e XML Alessio Saltarin 1 23 1999-06-06T07:17:00Z 1 14

36 Output di Word 2000 Su carta –utilizza gli attributi definiti nelle tag xml e Su Web –utilizza CSS 2.0 standard

37 XML per i dati

38 Due Approcci... Ad oggetti –permette di mantenere la struttura gerarchica del dato e di associarvi contenuto attivo attraverso i metodi. Relazionale –compatibilità con lesistente –interoperabilità tra vari formati

39 … un solo obiettivo: far viaggiare i dati ODB (RDB) XML Factory LaeX PDF CDROM ODB (RDB)

40 Esempi Data Source Object (DSO) –XML come Access, SQL Server, Oracle… –Esempio: Booklist Ricercare dati –Data Scripting con Data Islands –Esempio: Datascripting

41 XML Oggi

42 Document Object Model (DOM) E un API per HTML e XML Definisce la struttura logica dei documenti (gerarchia) Definisce il modo in cui un documento è acceduto e manipolato XML presenta il dato… … e DOM lo manipola. E attualmente implementabile in Java, JavaScript e IDL. E concepito per essere cross-platform.

43 DOM: Utilizzo della metafora dei nodi // Iterazione fra tutti i nodi di un documento objThisNode.childNodes.reset(); objCurrentNode = objThisNode.childNodes.nextNode(); do { // Faccio qualcosa con il nodo corrente objCurrentNode = objThisNode.childNodes.nextNode(); } while (objCurrentNode != null);

44 XSL E usato per applicare stili a XML Discende direttamente da DSSSL Applica gli stili seguendo un pattern-matching Può contenere script Javascript - vantaggio rispetto alla soluzione CSS Difficile… esempi Pro: Microsoft, IBM, Adobe...

45 Contro XSL: CSS+DOM (Michael Leventhal - mozilla.org) XSL non aggiunge funzionalità che non siano già presenti nelle specifiche CSS e DOM Non supporta documenti interattivi XSL è difficile, contorto e non verrà accettato dalla comunità Web Contribuisce alla creazione di nuovi standard che minano quelli esistenti Docflow: a differenza di DSSSL non serve per andare su carta! Contro XSL: Netscape, Sun.

46 XLL (Xlink) Descrive i collegamenti tra diverse sorgenti XML Funzionalità –Collegamento con URL HTTP –Link semplici: di HTML –Link estesi: reverse linking, multipoint linking. XPointer : collega parti dello stesso documento.

47 XQL Query: //cliente Risultato: Wile E. Coyote, Death Valley, CA Camp Mertz

48 XML Data Islands XML in una pagina HTML Sono isole di XML ben formato in documenti HTML Devono istanziare un processore XML Sono identificate da un ID Esempio: Brian Travis Architag University

49 STRUMENTI Ecco una lista esauriente di strumenti disponibili sul mercato che rispettano completamente le direttive/proposte W3C: OraProssimo Futuro XSL0? XLink0? XQL0? DOM0? Namespace0? Schema0?

50 COSA FARE? Cominciare a strutturare i propri documenti Utilizzare XML Utilizzare le tecnologie di supporto standard (CSS) Scrivere le proprie applicazioni (utilizzando i comuni linguaggi: Basic, C++, Java)

51 RIFERIMENTI http://www.w3.org/TR/1998/REC-xml- 19980210 http://www.xml.com/xml/pub http://msdn.microsoft.com/xml/default.asp http://xmlu.com ( ) news://comp.text.xml http://www.alphaworks.ibm.com/tech http://www.ucc.ie/xml/ (faq)

52 BIBLIOGRAFIA ESSENZIALE Goldfarb-Prescod THE XML HANDBOOK (Prentice Hall) Homer XML IE5 (Wrox) Megginson STRUCTURING XML DOCUMENTS (Prentice Hall) Boumphrey - DiRenzo - Graf XML APPLICATIONS (Wrox) McGrath XML BY EXAMPLE (Prentice Hall)

53 Q&A alessios@docflow.it


Scaricare ppt "XML per documenti e applicazioni transazionali su Internet Alessio Saltarin Progetto XML Factory."

Presentazioni simili


Annunci Google