enginyeria del software iii - repositori.udl.cat
TRANSCRIPT
CONTINGUTS DEL TEMA X
ML. P
resentació
2
Introducció Eines per treballar amb XML Elaboració de documents
XML Documents XML ben formats i
documents XML vàlids DTDs Namespaces
Fulls d’estil per documents XML DSSSL CSS XSL, XSLT y XPath XSL-FO: objectes de formateig
XHTML 1.0 Diferencies amb HTML Convertir HTML a XHTML
manualment i automàticament Visualitzar XHTML en els
navegadors actuals
WML (Wireles Markup Language)
XML en els navegadors CSS, XSLT, DOM y Javascript
Enllaços en XML El futur de XML
GENERALITATS
XML es el format i el model per intercanviar informació entre components, aplicacions, i empreses a través d’Internet
Microsoft, IBM, Sun, etc., estan apostant fortament per aquesta tecnologia
XML és un estàndard obert a Internet (W3C) XML habilita una nova generació d’aplicacions a
Internet
3
XM
L. Presentació
ORÍGENS
SGML (Standarized Generalized Markup Language) estàndard ISO 8879 en 1986 estàndard internacional per la definició de l’estructura
i el contingut de diferents tipus de documents electrònics
Problema: complexitat de l'estàndard
4
XM
L. Presentació
ORÍGENS
HTML (HyperText Markup Language) basat en: ASCII: qualsevol processador el pot llegir i guardar Basat en SGML:
Per donar format al text ASCII Només un subcongunt de SGML,
simplicitat
5
XM
L. Presentació
ORÍGENS
Problemes de HTML: Pensat per a mostrar-se en un navegador però no per
impressió o disseny Número d’etiquetes limitades NO pot mostrar contingut dinàmic Estructura i disseny estan barrejats (dades + presentació) NO força la bona estructura de la pàgina
Ex.: poden deixar-se etiquetes sense tancar Complica el processament per ordinador La seva interpretació depèn del software utilitzat
Proposta: XML
6
XM
L. Presentació
ORÍGENS
Que NO ÉS XML XML no és HTML++
No és una versió millorada de HTML
XML no és un llenguatge per fer millors pàgines web XML no està limitat a la web
7
XM
L. Presentació
ORÍGENS
Que ÉS XML Una versió abreujada de SGML,
optimitzada per Internet XML ofereix el 80% dels avantatges de SGML
amb un 20% de la seva complexitat [R. Ligth] Especificació XML 30 pàg., SGML 500 !!
Estàndard obert, sense llicències Internacionalitzable (I18N) Basat en text pla, no binari Modular i ampliable Permet definir tipus de documents propis
XHTML, ODT, DOCX,...
8
XM
L. Presentació
SGML
XML HTML
ORÍGENS
XML és un llenguatge utilitzat per estructurar i descriure dades de forma que puguin ser enteses o interpretades per
diferents aplicacions Suport per qualsevol llenguatge i/o sistema operatiu XML és un meta-llenguatge
Permet definir llenguatges de marcat, adequats a usos determinats
XML és un estàndard d’Internet, aprovat pel W3C Original:
http://www.w3.org/TR/REC-xml Traducció castellà:
http://www.sidar.org/recur/desdi/traduc/es/xml/xml1
9
XM
L. Presentació
SGML
XML HTML
XML I OPENOFFICE
10
XM
L. Presentació
11
XM
L. Presentació
XML I MICROSOFT OFFICE
El format del arxius de les darreres versió del MS Office és en XML .DOCX, .PPTX, .XSLX,... Anomenats MS Office Open XML Formats
http://es.wikipedia.org/wiki/Office_Open_XML Motius:
Formats d’arxiu compacte i robust Millor interoperabilitat de dades Formats oberts i sense “royalties” Compatibilitat i suport per a clients i partners
12
XM
L. Presentació
XML I MICROSOFT OFFICE
13
XM
L. Presentació
Tirant.docx
XML I MICROSOFT OFFICE
14
XM
L. Presentació
Tirant.docx
document.xml
renombrar .ZIP
HTML VS XML
15
XM
L. Presentació
HTML està centrat en la presentació, i és menys estructurat
Les etiquetes i atributs són fixes
És possible oblidar el tancament d’alguna etiqueta
…
XML es centra sobre dades, i és molt estructurat
Les etiquetes i atributs són extensibles
Es força a tenir una estructura consistent
…
XM
L. Presentació
16
xml
html
AVANTATGES
17
XM
L. Presentació
AVANTATGES
18
XM
L. Presentació
Fulls d’estil per telèfons
Fulls d’estil per pantalles
d’ordindor
Fulls d’estil de servidor
AVANTATGES
19
XM
L. Presentació
AVANTATGES
Fàcil de processar/entendre per software o per les persones Pensat per a ser utilitzat en qualsevol idioma Separa radicalment la informació o contingut de la seva
presentació o format Format ideal para transaccions B2B (business to business) Facilita tècniques d’extracció i cerca d’informació
(XSL y XPATH) Al tenir regles per a la composició d’un document XML molt
estrictes és molt fàcil fer l’anàlisi sintàctic A diferencia de HTML, XML és “case sensitive”
(diferencia majúscules i minúscules)
20
XM
L. Presentació
INCONVENIENTS
Pot requerir massa espai Redueix velocitat de transmissió i de processament Molta informació redundant
Es bo per text però molt dolent per dades binaries
Poc eficient com llenguatge d’emmagatzemament de dades
És una sintaxi de document, NO un llenguatge de programació
Es possible crear format i vocabularis ... ... pot fomentar la proliferació poc controlada de vocabularis
21
XM
L. Presentació
EINES
Free XML tools de Lars Marius Garshol. http://www.garshol.priv.no/download/xmltools/
Navegadors Explorer 5+ Netscape 6.x Mozilla 1.5+ Firefox 1.0+ ...
22
XM
L. Presentació
EINES
Parsers XML, permeten: validar un document XML manipular (crear, modificar, llegir) documents XML
(mitjançant APIs estàndard DOM i SAX)
IBM: http://alphaworks.ibm.com/xml Microsoft: http://msdn.microsoft.com/xml Sun: http://java.sun.com/xml Oracle: http://otn.oracle.com/tech/xml Saxon: http://saxon.sourceforge.net ...
23
XM
L. Presentació
EINES
Editors: Editor de text XMetaL, http://na.justsystems.com/content-xmetal XMLwriter http://xmlwriter.net XMLSpy http://www.altova.com XML Copy Editor, http://xml-copy-editor.sourceforge.net ... (http://en.wikipedia.org/wiki/List_of_XML_editors)
Processadors XSLT Transformar un document XML en un altre XML (per ex. HTML)
mitjançant una XSLT XT de James Clark http://www.blnz.com/xt/index.html Saxon de Michael Kay. http://saxon.sourceforge.net Xalan del projecte XML Apache http://xml.apache.org/xalan-j/index.html
24
XM
L. Presentació
EINES
Altres eines Conversors de XML a PDF, RTF, etc. i a l’inrevés Aplicacions que permeten cercar en documents XML Utilitats per treballar amb XML i BBDD
Exist, http://exist.sourceforge.net
Per treballar amb enllaços entre documents XML. etc.,...
25
XM
L. Presentació
SINTAXI XML
Elements Tot document XML es composa d’un o més elements Poden ...
tenir contingut (text, valors, etc.): <a>text</a> contenir altres etiquetes o atributs: <a atr=“val”><b><b/></a> els dos anteriors a la vegada: <a atr=“val”>text<b><b/></a> estar buits: <a/>
Atributs Propietats que ofereixen informació de l’element Sempre van marcats amb cometes simples o dobles, i se
situen com un valor addicional a una etiqueta <a atribut=“valor_atribut”/>
26
XM
L. Presentació
SINTAXI XML
Pròleg Declaració XML:
Informació sobre la versió de XML Informació sobre el tipus de codificació de caràcters que estem
utilitzant. El XML suporta els següents esquemes de codificació: o UTF-8, UTF-16, ISO-10646-UCS-2, ISO-10646-UCS-4,
ISO-8859-1 a -9, ISO-2022-JP, Shift_JIS, EUC-JP,...
o <?xml version="1.0" encoding="ISO-8859-1"?>
Declaració “opcional” del tipus de document
27
XM
L. Presentació
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE documento SYSTEM "ejemplo.dtd">
SINTAXI XML
Element arrel Obligatori i únic
28
XM
L. Presentació
<llibres> <llibre> <titol>Mecanoscrit del segon origen</titol> <autor>Manuel de Pedrolo</autor> <editorial>Edicions 62</editorial> <preu moneda=“Euro”>6,61</preu> </llibre>
</llibres>
SINTAXI XML
<!-- Això és un comentari -->
En XML v1.0 existeixen 5 entitats predefinides, per representar caràcters especials, i que no se interpreten com marques pel processador XML. D’aquesta forma podem utilitzar per exemple el caràcter < , > , & , ‘ , “
Entitats predefinides
29
XM
L. Presentació Entitat Caràcter
& &
< <
> >
' ‘
" “
XM
L. Presentació
30
SINTAXI XML
Seccions CDATA Permeten integrar text en un document en XML, que
d’una altra forma seria interpretat como a etiqueta. <![CDATA[ Aquí puc posar el que vulgui. ]]>
31
XM
L. Presentació
<ejemplo> <HTML> <BODY> Documento html dentro de uno XML </BODY> </HTML> </ejemplo>
<ejemplo> <![CDATA[ <HTML>; <BODY> Documento html dentro de uno XML </BODY> </HTML> ]]> </ejemplo>
DISSENY DE VOCABULARIS
Representació de propietats
32
XM
L. Presentació
<pizza nombre=“margarita” precio=“6”/>
<pizza> <nombre>margarita</nombre> <precio>6</precio> </pizza>
? atributs elements
DISSENY DE VOCABULARIS
Representació de propietats
33
XM
L. Presentació
<pizza nombre=“margarita” precio=“6”/>
<pizza> <nombre>margarita</nombre> <precio>6</precio> </pizza>
? atributs elements
VOCABULARIS ESPECÍFICS DE XML
MathML: visualització d’equacions matemàtiques. SVG: gràfics vectorials. SMIL: presentacions multimèdia. P3P: descripció característiques de privacitat. WML: semblant a HTML per a telèfons mòbils. VoiceML: portals basats en veu. XML Signature: per signar recursos web. XKMS: signatures i criptografia. XML query: consultes a documents (BBDD). XBRL: específic per a comptabilitat. ebXML: e-business. SyncXML: sincronització de dispositius. UPnP: Plug ‘n’ Play universal. ... 34
XM
L. Presentació
SINTAXI XML
Documents Ben formats (well-formed)
No tenen necessariament associada una definició de tipus de dades (DTD), però segueixen les regles de XML
Vàlids segueixen les regles d’una definició del tipus de dades DTD
35
XM
L. Presentació
DOCUMENT “BEN FORMAT” XML
Compleix la regla denominada “document”: Conté un o més elements. Hi ha exactament un element, denominat arrel o element
document, del qual cap part apareix en el contingut de cap altre element.
Per la resta d’elements, si l’etiqueta d’inici esta en el contingut d’algun altre element, l’etiqueta de fi esta en el contingut del mateix element. És a dir, els elements delimitats per etiquetes de principi i final estan niats de forma adequada
Respecta totes las restriccions de bona formació donades en l’especificació
Cada una de las entitats analitzades a que es fa referència directa o indirectament en el document esta ben formada
36
XM
L. Presentació
DOCUMENTS “BEN FORMATS” XML
Miscel·lània d’errors:
<?xml version="1.0"?> <document>
<p>El meu Primer <destacar importancia=1>document XML</destacar></p] <p>Inici amb la etiqueta <document></p> <p>Seguidament tenim un element sense contingut</P> <imatge fitxer="imatge.gif">
</document>
37
XM
L. Presentació
VALIDAR (PARSER XML)
Parser d’IBM: xml4j_1_1_14.zip (a Sakai) Versió antiga però serveix perfectament per a les nostres
necessitats Descomprimir el ZIP:
xml4j_1_1_14.jar, que conté el parser pròpiament dit xml4jSamples_1_1_14.jar, que conté uns exemples de com
utilitzar-lo Crida:
Windows: o java –cp xml4j_1_1_14.jar;xml4jSamples_1_1_14.jar
samples.XJParse.XJParse Linux
o java –cp xml4j_1_1_14.jar:xml4jSamples_1_1_14.jar samples.XJParse.XJParse
Exemple: el ZIP conté l’exemple “ExpenseReport.xml” o java –cp xml4j_1_1_14.jar;xml4jSamples_1_1_14.jar
samples.XJParse.XJParse ExpenseReport.xml 38
XM
L. Presentació
BIBLIOGRAFIA ÚTIL
Cauldwell, P.; Charla, R.; Chopra, V. (2002). Servicios Web XML. Anaya Multimedia.
Harold, E. R.; Jeans, W. S. (2001). XML in a Nutshell: A Desktop Quick Referente. O. Reilly.
Morrison, M. (2000). XML al descubierto. Ed. Prentice Hall.
McLaughlin, B. (2001). Java y XML. Ed. Anaya Multimedia.
39
XM
L. Presentació