Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Fejlett Programozási Technikák 2.
7/2
2
A mai előadás tartalma:
CSS XML DTD XSLT WEBdav SyncML WAP WML
3
Problémák Tartalom, formázás egyveleg HTML formázó készlet szegényes
HTML a dokumentum szerkezetét adja A böngészőre volt bízva a megjelenítés Netscape, IE, új elemek Egységes megoldás CSS
4
Előnyei Tartalom, formázás elkülönül Nyílt szabvány
Sok böngésző támogatja Stílust definiál Megkönnyíti a munkát
5
Definiálható HTML elemen belül HTML dokumentum fejrészében
Külső css fájlban Több külső css fájlban
6
Érvényesítési sorrend
Böngésző alapértelmezett css Külső css Fejrész css Egyes elemekben definiált
7
A CSS bejegyzés felépítése
Választó Tulajdonság Érték
8
Példa Body { color:yellow } p { font-family:”sans serif” } P
text-align: center; color: black; font-family: arial h1, h2, h3, h4, h5, h6 { color: green}
9
Hivatkozások: Class p.jobb {text-align: right}
p.kozep {text-align: center} … <p class=”jobb”>Ez a bekezdés jobbra lesz igazítva<p> <p class=”bal”>Ez a bekezdés jobbra lesz igazítva<p>
10
Hivatkozások: Általános
.kozep {text-align: center} <input type=”text” class=”kozep”> <p class=”kozep”>Középre igazítva</p>
11
Hivatkozások: id #intro { font-size:110%; font-weight:bold;
color:#0000ff; background-color:transparent } p#intro
12
Definiálás Külső oldal: Fejrészben: Az adott elemnél: <head>
<link rel="stylesheet" type="text/css" href="mina.css" /> </head> Fejrészben: <style type="text/css"> hr {color: sienna} p {margin-left: 20px} body {background-image: url("images/back40.gif")} </style> Az adott elemnél: <p style="color: sienna; margin-left: 20px"> Ez egy bekezdés</p>
13
Formázási lehetőségek
Háttér Szöveg Betű Keretvonal Margó Padding Listák
21
XML SGML (bonyolult) HTML Előre definiált elemkészlet
Csak megjelenítés Hibakezelés (<li>, 30%)
22
XML nyelvcsalád XML Adatleíró nyelv XSL, XSLT Xpath XML Shema XQL …
23
XML Nincs nyelvtana Nincs elemkészlete Tetszőleges nyelvtan
Tetszőleges elemkészlet Nagyon rugalmas
24
Példa <Feladat sorszam="14">
<vegrahajto>Kardos Katalin</vegrahajto> <megbizo>Nagy Emese</megbizo> <hatarido> </hatarido> </Feladat>
25
Szabályok Jelölőelemeket használ Minden kezdőelemhez tartozik záró
Az elemek egymásba ágyazhatóak Nem metszhetik egymást az elem párok US-ASCII kódolás, ha nem azt jelezni kell Érzékeny a kis és nagy betűkre Nem kötelező de jó ha van hozzá DTD és azt betartja Jól formázott Érvényes
26
Szerkezet PI DTD Fejléc Törzs <?xml version="1.0"?>
<!DOCTYPE Feladat SYSTEM "DTD\feladat.dtd"> <Feladat sorszam="14"> <vegrahajto>Kardos Katalin</vegrahajto> <megbizo>Nagy Emese</megbizo> <hatarido> </hatarido> </Feladat> DTD Fejléc Gyökér elem Törzs
27
Elemek <elem tulajdonság=”valami”> érték </elem>
Nem célszerű tulajdonságot használni Nyitó elem Záró elem
28
Névtér URI xmlns <?xml version="1.0"?>
<!DOCTYPE Feladat SYSTEM "DTD\feladat.dtd"> <Pelda1:Feladat xmlns:Pelda1=" :8080/cocoon/pelda1.xml"> <Pelda1:vegrahajto>Kardos Katalin</Pelda1:vegrahajto> <Pelda1:megbizo>Nagy Emese</Pelda1:megbizo> <Pelda1:hatarido> </Pelda1:hatarido> </Pelda1:Feladat>
29
DTD Öndokumentálás Nyeltan Elemkészlet Hibajavítás (B2B)
30
Példa <!ELEMENT Pelda1:Feladat (Pelda1:vegrehajto, Pelda1:megbizo,
Pelda1:hatarido)> <!ELEMENT Pelda1:vegrehajto (#PCDATA)> <!ELEMENT Pelda1:megbizo (#PCDATA)> <!ELEMENT Pelda1:hatarido (#PCDATA)>
31
Ismétlődés operátorok
Nincs Pontosan egyszer kell szerepelnie ? Egyszer vagy egyszer sem + Legalább egyszer * Akárhányszor (0 is) <!ELEMENT Pelda1:Feladat ((Pelda1:vegrehajto, Pelda1:hatarido))+, Pelda1:megbizo)>
32
Tulajdonságok <!ATTLIST feladat munkahely (irinyi|arpadter)>
Módosító: #IMPLIED -- Nem feltétlenül szükséges. #REQUIRED -- Szükséges. #FIXED -- Kötelező a jelenléte és az értéke egyaránt. ”alapértelmezett érték”
33
XSLT
34
Felépítése XSLT egy XML dokumentum; melynek névtere ( A legtöbb stíluslap önálló Gyökere <xsl:stylesheet> vagy <xsl:transform>
35
Példa <xsl:stylesheet xmlns:xsl=" xmlns:Pelda1=" cocoon/xslp1.xml"> <xsl:template match="Pelda1:Feladat"> ez kerül az adott elem helyére </xsl:template> </xsl:stylesheet>
36
Eszközök IE 6.0 Cocoon Java Servlet XML formátum XSLT feldolgozó
Utófeldolgozó HTML, XHTML, WML, PDF, XSL:FO
37
Példa(XML) <?xml version="1.0" encoding="ISO-8859-2"?>
<oldal> <cim>Hello</cim> <tartalom> <para>Ez egy bekezdés</para> </tartalom> </oldal>
38
Példa(XSLT) <?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="oldal"> <html> <head> <title><xsl:value-of select="cim" /></title> </head> <body> <xsl:apply-templates /> </body> </html> </xsl:template> </xsl:stylesheet>
39
For-each <?xml version="1.0" encoding="ISO-8859-2"?>
<oldal> <munkatársak> <név> <vezetéknév>Nagy</vezetéknév> <keresztnév>Tamás</keresztnév> </név> <vezetéknév>Szép</vezetéknév> <keresztnév>Ilona</keresztnév> <vezetéknév>Kiss</vezetéknév> <keresztnév>Tihamér</keresztnév> </munkatársak> </oldal>
40
For-each <?xml version="1.0" encoding="ISO-8859-2"?>
<xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="munkatársak"> <html> <head> </head> <body> <table border="1" cellspacing="0" cellpadding="8"> <tr> <td><b>Vezetéknév</b></td> <td><b>Keresztnév</b></td> </tr> <xsl:for-each select="név" > <td><xsl:value-of select="vezetéknév" /></td> <td><xsl:value-of select="keresztnév" /></td> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
41
Eredmény
42
Sorbarendezés <?xml version="1.0" encoding="ISO-8859-2"?>
<xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="munkatársak"> <ul> <xsl:apply-templates select="név"> <xsl:sort select="vezetéknév"/> <xsl:sort select="keresztnév"/> </xsl:apply-templates> </ul> </xsl:template> <xsl:template match="név"> <li> <xsl:value-of select="vezetéknév"/> <xsl:text> </xsl:text> <xsl:value-of select="keresztnév"/> </li> </xsl:stylesheet>
43
Sorszámozás <?xml version="1.0" encoding="ISO-8859-2"?>
<xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="munkatársak"> <xsl:for-each select="név"> <xsl:sort select="vezetéknév"/> <xsl:sort select="keresztnév"/> <p> <xsl:number value="position()" format="1. "/> <xsl:value-of select="."/> </p> </xsl:for-each> </xsl:template> </xsl:stylesheet>
44
if <?xml version="1.0" encoding="ISO-8859-2"?>
<xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:template match="oldal"> <table> <xsl:apply-templates/> </table> </xsl:template> <xsl:template match="név"> <tr> <td> <xsl:if test="keresztnév='Ilona'">---></xsl:if> </td> </tr> </xsl:stylesheet>
45
WEBdav Közös munka elősegítése Kompatíbilis a HTTP-vel Azonosítás
Zárolás Tulajdonság kezelés Hierarchia kezelés Kompatíbilis a HTTP-vel
46
Metódusok PROPFIND -- lekérdezi az URI segítségével megcímezett erőforrás általunk megadott paramétereit. PROPPATCH -- manipulálja URI segítségével megcímezett erőforrás általunk megadott paramétereit. MKCOL -- segítségével tudunk új erőforrásokat, erőforráshalmazokat létrehozni GET, HEAD -- változatlan POST -- változatlan DELETE -- erőforrások, vagy erőforrások halmazának törlése, ha egyszerre többet szeretnénk törölni és egyet vagy többet nem tudunk törölni akkor egyet sem fog törölni. PUT -- erőforrásokat tölthetünk fel a szerverre, ha a megfelelő hierarchia már lére van hozva a MKCOL által COPY -- erőforrások, erőforráshalmazok másolását biztosítja beállítható mélységben MOVE -- hasonló mint a COPY csak törli az erőforrást LOCK – zárolás UNLOCK -- zárolás feloldása
47
Zárolás Shared Exclusive XML kód Paraméter továbbítás
48
Példa PROPPATCH /bar.html HTTP/1.1 Host: www.foo.com
Content-Type: text/xml; charset="utf-8„ Content-Length: xxxx <?xml version="1.0" encoding="utf-8" ?> <D:propertyupdate xmlns:D="DAV:" xmlns:Z=" <D:set> <D:prop> <Z:authors> <Z:Author>Jim Whitehead</Z:Author> <Z:Author>Roy Fielding</Z:Author> </Z:authors> </D:prop> </D:set> <D:remove> <D:prop><Z:Copyright-Owner/></D:prop> </D:remove> </D:propertyupdate>
49
SyncML Tartalom szinkronizálás HTTP protokollra épül XML alapú
Klines-szerver
50
Függvények <Add> adat hozzáadás <Alert> értesíti a célt
<Atomic> együtt kell végrehajtani <Copy> adatok másolása <Delete> adat törlése <Exec> program futtatása <Get> adat letöltése <Map>két adatkészlet közötti kapcsolat frissítése <Put> felmásolás <Replace> felülírás <Search> keresés <Sequence> a programok sorban hajtódjonak végre <Sync> két adathalmazt szinkronizál
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.