Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

WEB Technológiák WEB-DB és XML ME Általános Informatikai Tsz. dr. Kovács László.

Hasonló előadás


Az előadások a következő témára: "WEB Technológiák WEB-DB és XML ME Általános Informatikai Tsz. dr. Kovács László."— Előadás másolata:

1 WEB Technológiák WEB-DB és XML ME Általános Informatikai Tsz. dr. Kovács László

2 XSL K.L. A XML szabvány csak a tartalmat adja meg Nem tartalmaz megjelenítése vonatkozó elemeket XSL - stiluslap leíró nyelv XSLT - XSL átalakító nyelv CSS DSSSL DTD XML XSLT feldolgozó XSL XSLT

3 XSL K.L. XSL: formázó objektumok együttese XML jellegű formátum A formázás négyszögletes területekre bontottan történik XSL utasítás csoportok: - oldaltördelés, elrendezés - blokkok kezelése - soros elemek - táblázatok - listák - kapcsolatok XSL szabvány névtere: FO

4 XSL K.L. Előtte valami Itt a Minta szöveg Utána valami Előtte valami Utána valami itt a minta szöveg Kb. 50 elem és 300 attributum a leírás része

5 XSLT K.L. XSLT: az XML dokumentumok XSL, HTML formátumra való konverzióját írja le XSLT lehetőségei: - előtagokkal és utótagokkal kiegészíti a tartalmat - elemeket lehet elhagyni, átsorolni, sorba rndezni - új elemek létrehozatala - kijelöli az elemek osztályaira vonatkozó XSL formátumozó elemeket DTD1 XML XSLT feldolgozó stiluslapXML DTD2

6 XSLT K.L. Anni Anni Az XML dokumnetumban hivatkozni kell az alkalmazandó stiluslapra

7 XSLT K.L. GYOKER A stiluslap megadja a konverzió menetét

8 XSLT K.L. XSLT transzformációs elemek A feldolgozó felépíti a dokumentumhoz az elemek hierarchiáját, s s az illeszkedési minták alapján megkeresi mely elemeket hogyan kell átalakítania (átalakítás a gyökér elemmel kezdődik) Ügyelni a rekurzív folytatásra.....

9 XSLT K.L. XSLT transzformációs elemek Gyerek elemek feldolgozása: Itt a gyoker babak babak

10 XSLT K.L. XSLT transzformációs elemek A rekurziós feldolgozási lépések szűkítése bizonyos elemekre: A szelekciós feltétel XPATH szabványban adott XPATH feltételek enev enev1/enev2 enev1/*/enev2 enev[felt]

11 XSLT K.L. XSLT transzformációs elemek Elem értékének kiiratása: Elemek rendezése

12 XSLT K.L. XSLT transzformációs elemek Új elem létrehozása:...

13 XSLT K.L. XSLT transzformációs elemek AA

14 XSLT K.L. XSLT transzformációs elemek AA

15 XSLT K.L. XSLT transzformációs elemek Feltételes végrehajtás:..... Változó létrehozás: érték

16 SAX K.L. Az XML dokumentumok feldolgozó felülete SAX = Simple API for XML Az értelmező szekvenciálisan feldolgozza az XML dokumentumot, s minden fontosabb eseményről értesíti a kezelő programot callback mechanizmussal XML SAX feldolgozó Kezelő program startElement endElement

17 SAX K.L. A feldolgozó biztosít egy osztálykönyvtárt, melyen keresztül lehet definiálni és elérhetővé tenni a callback kezelő függvényeket. Java minta környezet Fontosabb lépések: - dokumentum olvasó létrehozása - tartalomkezelő keret létrehozása - az eseménykezelő metódusok létrehozása - hibakezelő metódusok létrehozása

18 SAX K.L. SAX kapcsolódási felületei: - Parser - DocumentHandler - AttributeList - ErrorHandler - Entity Resolver - Locator - DTDHandler A Parser az eldődleges felület, rajta keresztül lehet megadni a többi kezelő elemet Előre definiált osztályok

19 SAX K.L. import org.xml.sax.XMLReader; import org.apache.xerces.parsers.SAXParser ;.. public class SAXERT { public void kezelo(String URI) {... XMLReader parser = new SAXParser(); ….. } public static void main(String[] args) { SAXERT pdemo = new SAXERT(); pdemo.kezelo(”...uri…”); } Dokumentum olvasó létrehozása

20 SAX K.L. Dokumentum értelmezési folyamatának elindítása import org.xml.sax.SAXException;.. public void kezelo(String URI) { … try { XMLReader parser = new SAXParser(); parser.parse(); } catch (SAXException e) { }

21 SAX K.L. Tartalom kezelő keret létrehozása import org.xml.sax.Attributes; import org.xml.sax.ContentHandler; import org.xml.sax.Locator;... Class Skezelo implements ContentHandler{ …kezelo metodusok } public void kezelo(String URI) { XMLReader parser = new SAXParser(); Skezelo Shand = new Skezelo(); parser.setContentHandler(Shand); parser.parse(uri); }

22 SAX K.L. Esemény kezelő metódusok létrehozása Class Skezelo implements ContentHandler{ public void startDocument() {... } throws SAXException (); public void endDocument() {... } throws SAXException (); public void startElement() {... } throws SAXException ();... }

23 SAX K.L. Esemény kezelő metódusok létrehozása - dokumentumban aktuális pozíció - dokumentum kezdete - dokumentum vége - elem kezdete - elem vége - prefix feldolgozás - karakter rész elérés - entity rész - direktivák - névterek - attributumok void startElement(String name, AttributeList atts)

24 DOM K.L. Az XML jellegű dokumentumok feldolgozó felülete DOM = Document Object Model Az értelmező előállít egy olyan objektumot, amely az XML dokumentumot tartalmazza. A kezelő ezen objektum tulajdonságain, metódusain keresztül tud dokumentumkezelést végezni XML DOM feldolgozó Kezelő program dokumentum objektum

25 DOM K.L. A feldolgozó biztosít egy osztálykönyvtárt, melyen keresztül lehet létrehozni és elérhetővé tenni a dokumentum objektumot Java minta környezet Fontosabb lépések: - dokumentum olvasó létrehozása - objektum létrehozása - dokumentum tagelemek elérése - dokumentum metódusok meghívása

26 DOM K.L. import org.apache.xerces.parsers.DOMParser;.. public class DOMERT { public void kezelo(String URI) {... DOMParser parser = new DOMParser(); ….. } public static void main(String[] args) { DOMERT pdemo = new DOMERT(); pdemo.kezelo(”...uri…”); } Dokumentum olvasó létrehozása

27 DOM K.L. Dokumentum objektum létrehozása import org.apache.xerces.parsers.DOMParser;.. public void kezelo(String URI) { … DOMparser parser = new DOMParser(); try { parser.parse(uri); Document doc = parser.getDocument() } catch (Exception e) { }

28 DOM K.L. Dokumentum objektum létrehozása Alap DOM interface: - DocumentFragment - Document - CharaterData- Text - Comment - Attr -Node- Element - DocumentType - Notation - Entity - Entitreference - ProcessingInstruction

29 DOM K.L. Node elemek metódusai Navigációs műveletek - getFirstChild()- getNodeType() - getLastChild()- getNodeName() - getNextSibling()- getNodeValue() - getPreviousSibling()- getAttributes() - getParentNode()- getChildNodes() - getChildNodes()... Műveletek - removeChild()- createElement() - insertBefore()- createTextNode() - appendChild()- createAttribute() - replaceChild()...

30 DOM K.L. String name = node.getNodeName(); System.out.print(”<” + name); NamedNodeMape atts = node.getAttributes(); for (int i=0; i

31 DOM K.L. function ellenoriz(){ var xDoc = new ActiveXObject(”Microsoft.XMLDOM”); xDoc.async = ”false”; xDoc.validateOnParse = ”true”; xDoc.load (this.beolv.xmlurl.value); if (xDoc.parseError.errorCode != 0 ){ document.write(”Feldolgozási hiba”+ xDoc.parseError.ErorCode); } else { window.open(this.beolv.xmlurl.value); }


Letölteni ppt "WEB Technológiák WEB-DB és XML ME Általános Informatikai Tsz. dr. Kovács László."

Hasonló előadás


Google Hirdetések