Razdvajanje vsebine in prikaza dokumentov s pomojo XMLa
Razdvajanje vsebine in prikaza dokumentov s pomočjo XML-a in XSLT-a Vjekoslav Nesek, dipl. ing. TIS d. o. o. tis@tis. hr http: //www. tis. hr 1 2/26/2021 TIS d. o. o.
XML l Univerzalen – – l l 2 ni vezan na aplikativno logiko Podprt na različnih platformah Strukturiran Podskupina SGML-a Prilagodljiv in razširljiv Zasnovan na Unicode standardu TIS d. o. o. 2/26/2021
Oblikovanje dokumentov (DTD) l Danes so vsebine na web-u najpogosteje v HTMLu – l l 3 HTML združuje oznake za prikaz, opis informacije in programsko logiko (na strežniku in odjemalcu, ASP, JSP, PHP) Modelirati moramo dokumente na osnovi domene problemov, ki jih rešujemo Ni potrebno pretiravati. Kjer je možno, uporabimo obstoječe DTD-e TIS d. o. o. 2/26/2021
Primer: HTML - XML <h 1> Vjekoslav Nesek </h 1> <p> Donje Svetice 31 </p> <p> 10000 Zagreb, Croatia </p> 4 <posjetnica> <ime>Vjekoslav</ime> <prezime>Nesek</prezime> <adresa> <ulica>Donje Svetice 31 </ulica> <grad>10000 Zagreb</grad> <država>Croatia</država> </adresa> </posjetnica> TIS d. o. o. 2/26/2021
Razdvajanje vsebine in prikaza Zakaj? – – – Pogosto jih razvijajo različne skupine ljudi Možnost računalniškega prikazovanja Vzdrževanje Zagotovilo za prihodnost Prikaz na različnih medijih (WML, HTML, Voice. XML, PDF…) Potrebujemo rešitev za transformacijo iz enega DTD-a v drugi DTD 5 TIS d. o. o. 2/26/2021
XSLT transformacije l l l Jezik za transformacijo XML dokumenov Deklarativen XSLT se zapisuje v XML-u Ni mogoče napraviti vseh transformacij Možnosti l l 6 Preslikovanje elementov in atributov Ustvarjanje in brisanje vsebine Sortiranja Uporabe funkcij TIS d. o. o. 2/26/2021
Primer: Posetnica 1: <? xml version="1. 0" encoding="ISO-8859 -2"? > 2: <xsl: stylesheet version="1. 0" xmlns: xsl="http: //www. w 3. org/1999/XSL/Transform"> 3: <xsl: output method="html" indent="yes"/> 4: <xsl: template match="posjetnica"> 5: 6: <h 1> <xsl: value-of select="ime"/> <xsl: value-of select="prezime"/> 7: </h 1> 8: <xsl: apply-templates select="adresa"/> 9: </xsl: template> 10: <xsl: template match="adresa"> 11: <p><xsl: value-of select="ulica"/></p> 12: <p> 13: 14: <xsl: value-of select="grad"/>, <xsl: value-of select="država"/> </p> 15: </xsl: template> 16: </xsl: stylesheet> 7 TIS d. o. o. 2/26/2021
XML + XSLT na strežniku l XSLT ni zadovoljivo podprt na odjemalcu – l Transformacije lahko opravimo na strežniku – l 8 Samo Internet Explorer 5. 0 (draft verzija) Velika izbira programske podpore Lahko uporabljamo različne “stylesheets” za različne vrste klientov ali različne poglede na iste podatke TIS d. o. o. 2/26/2021
Primer: Združevanje vsebine l l l Rich Site Summary – izmenjava kratkih vsebin med content-providerji Razvil Netscape za Netcenter portal Kanali informacij – – Meta podatki (avtor, opis, naslov…) Skupina postavk l l l 9 Naslov Hyper povezava Opis TIS d. o. o. 2/26/2021
Različni prikazi / ista vsebina HTML WML SQL 10 TIS d. o. o. BEGIN INSERT INTO channel(title, description, link) VALUES ( 'Latest Movie Epinions', 'The newest Movie Epinions from the members of Epinions. com. ', 'http: //www. epinions. com/mvie'); INSERT INTO item(channel, title, description, link) VALUES ('http: //www. epinions. com/mvie', 'Princess Bride: you dont happen to have six fingers on your right hand? ', … 2/26/2021
Zaključek l l HTML je omogučil revolucijo, vendar ni rešitev za vse probleme Moramo izdvojiti informacijo iz njenega prikaza … da bi vzpostavili relacije med dokumenti in deli dokumentov … Ena od poti k “semantičnemu web”-u Tim Berners Lee-a (W 3 C) 11 TIS d. o. o. 2/26/2021
- Slides: 11