1 XML •Az Extensible Markup Language (XML, kiterjeszthető leíró nyelv) a W3C által ajánlott általános célú leíró nyelv speciális célú leíró nyelvek létrehozására.

Slides:



Advertisements
Hasonló előadás
Tamás Kincső, OSZK, Analitikus Feldolgozó Osztály, osztályvezető A részdokumentumok szolgáltatása az ELDORADO-ban ELDORADO konferencia a partnerkönyvtárakkal.
Advertisements


Kamarai prezentáció sablon
Zenetár a webszerverünkön, avagy XML használata PHP 5 alatt. Ercsey Balázs (laze) – netpeople.hu.
Adatbázis gyakorlat 1. Szerző: Varga Zsuzsanna ELTE-IK (2004) Budapest
Weblap szerkesztés HTML oldal felépítése Nyitó tag Záró tag Nyitó tag Záró tag oldalfej tözs.
A társadalmi tényezők hatása a tanulásra
Programozás III STRING-XML.
Erőállóképesség mérése Találjanak teszteket az irodalomban
Felhasználói felületek és üzleti logika Bollobás Dávid ASP.NET
MATEMATIKA Év eleji felmérés 3. évfolyam
Document Type Definitions (DTD) XML séma
Humánkineziológia szak
Mellár János 5. óra Március 12. v
Extensible Markup Language
2010/2011.Huszár István1. dia Weboldalak tervezése II. (X)HTML.
6) 7) 8) 9) 10) Mennyi az x, y és z értéke? 11) 12) 13) 14) 15)
Elektromos mennyiségek mérése
Utófeszített vasbeton lemez statikai számítása Részletes számítás
A tételek eljuttatása az iskolákba
Előadás vázlat Az XML története és alkalmazási területe
Leírónyelvek: HTML és XHTML
Ember László XUBUNTU Linux (ami majdnem UBUNTU) Ötödik nekifutás 192 MB RAM és 3 GB HDD erőforrásokkal.
VÁLOGATÁS ISKOLÁNK ÉLETÉBŐL KÉPEKBEN.
Hernyák Zoltán XML validálás.
Védőgázas hegesztések
1. IS2PRI2 02/96 B.Könyv SIKER A KÖNYVELÉSHEZ. 2. IS2PRI2 02/96 Mi a B.Könyv KönyvelésMérlegEredményAdóAnalitikaForintDevizaKönyvelésMérlegEredményAdóAnalitikaForintDeviza.
XML alapok 2. XML hibaellenőrzés XML a böngészőkben XML parser
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
JSP és JavaBean JavaServer Pages és Java Beans Fabók Zsolt Általános Informatikai Tanszék Miskolci Egyetem.
ADATBÁZISOK
Master Informatique dr. Kiss AttilaFélig-strukturált adatmodell Félig-strukturált adatmodell (Semi-structured data model) dr. Kiss Attila.
Önleíró adatok: XML INFO ÉRA, Békéscsaba
Szerkezeti elemek teherbírásvizsgálata összetett terhelés esetén:
Sárgarépa piaca hasonlóságelemzéssel Gazdaság- és Társadalomtudományi kar Gazdasági és vidékfejlesztési agrármérnök I. évfolyam Fekete AlexanderKozma Richárd.
NOVÁK TAMÁS Nemzetközi Gazdaságtan
WEB Technológiák WEB-DB és XML ME Általános Informatikai Tsz. dr. Kovács László.
WEB Technológiák WEB-DB és XML ME Általános Informatikai Tsz. dr. Kovács László.
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
XML támogatás adatbázis-kezelő rendszerekben
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
Lineáris egyenletrendszerek (Az evolúciótól a megoldáshalmaz szerkezetéig) dr. Szalkai István Pannon Egyetem, Veszprém /' /
szakmérnök hallgatók számára
Logikai szita Izsó Tímea 9.B.
XHTML 1. óra. Miért térjünk át HTML-ről XHTML- re? HTML-szabványban tartalom és forma összemosódott HTML 4.0 szabványban stíluslapok használatát javasolták.
2007. május 22. Debrecen Digitalizálás és elektronikus hozzáférés 1 DEA: a Debreceni Egyetem elektronikus Archívuma Karácsony Gyöngyi DE Egyetemi és Nemzeti.
Weboldalak tervezése (X)HTML.
Hernyák Zoltán XML Schema sémadefiníció.
Hernyák Zoltán XSLT transzformációk.
Csurik Magda Országos Tisztifőorvosi Hivatal
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
QualcoDuna interkalibráció Talaj- és levegövizsgálati körmérések évi értékelése (2007.) Dr. Biliczkiné Gaál Piroska VITUKI Kht. Minőségbiztosítási és Ellenőrzési.
Adatbázis kezelés.
XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET.
XML adatkezelés 1. témakör Az XML szabvány.
Web Ontology Language OWL. RDF emlékeztető  Nagyon egyszerű ontológialeíró nyelv  Erőforrások közötti kapcsolatrendszer leírására  Jelentés a kapcsolatrendszerből.
XML Mi az XML?  Extensible Markup Language  Kiterjeszthető jelölő nyelv  Adatok, adatstruktúrák leírására szolgál  A HTML és az SGML tapasztalataira.
Objektum orientált programozás
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
Virtuális Méréstechnika Sub-VI és grafikonok 1 Makan Gergely, Vadai Gergely v
Mérés és adatgyűjtés laboratóriumi gyakorlat - levelező Sub-VI és grafikonok 1 Mingesz Róbert V
Webprogramozó tanfolyam
HTML ÉS PHP (Nagyon) rövid áttekintés. ADATBÁZISRENDSZEREK MŰKÖDÉSI SÉMÁJA Felh. interakció DB Connector MySQL ? A gyakorlaton:
Illés Zoltán ELTE Informatikai Kar
> aspnet_regiis -i 8 9 TIPP: Az „Alap” telepítés gyors, nem kérdez, de később korlátozhat.
A KÖVETKEZŐKBEN SZÁMOZOTT KÉRDÉSEKET VAGY KÉPEKET LÁT SZÁMOZOTT KÉPLETEKKEL. ÍRJA A SZÁMOZOTT KÉRDÉSRE ADOTT VÁLASZT, VAGY A SZÁMOZOTT KÉPLET NEVÉT A VÁLASZÍV.
Algoritmizálás, adatmodellezés
Az XML nyelv (Extensible Markup Language). XML  XML: leíró nyelv (metanyelv)  XML alkalmazás: egy megalkotott nyelv  XML dokumentum: egy új nyelv egy.
1 Az igazság ideát van? Montskó Éva, mtv. 2 Célcsoport Az alábbi célcsoportokra vonatkozóan mutatjuk be az adatokat: 4-12 évesek,1.
Automatikus fizikai tervezési javaslatok XML adatbázisokhoz Balogh Bernadett Kresz Marcell Cseh Tamás.
Előadás másolata:

1 XML •Az Extensible Markup Language (XML, kiterjeszthető leíró nyelv) a W3C által ajánlott általános célú leíró nyelv speciális célú leíró nyelvek létrehozására. •Előzménye: –GML (1969) Generalized Markup Language –SGML (1986) Standard Generalized Markup Language –HTML (1989) HyperText Markup Language •Jelenleg két XML verzió létezik. •Az XML 1.0-t 1998-ban definiálták. •Jelenleg a február 4-én publikált harmadik kiadás az aktuális. •Ezzel egy időben adták ki az XML 1.1-et. •Magyar XML összefoglaló, és Oracle XML összefoglaló található az alábbi címen:

2 XML •Az XML jellegzetességei: –az XML dokumentum önleíró szöveges információ, –az XML dokumentumok könnyen reprezentálhatók címkézett, irányított gráfokkal, –lekérdező nyelvek a gráfokban keresnek meghatározott mintára illeszkedő útvonalakat (XPath), –a különböző funkciójú nyelvek (XQuery, XSLT, XLink, XPointer) közös része az XPath, –az adatbázis-kezelők (pl. Oracle) támogatják az XML típus kezelését, –szabványos adatcsere formátumként segít az adatintegráció megoldásában.

3 XML •Az adatintegráció promlémája: –különböző helyeken tárolt, különböző formátumú adatbázisokat szeretnénk egységes formátumú, egy adatbázisban látni, illetve kezelni. •A különbözőség többféle lehet: –eltérő adatmodell (relációs, objektumorientált), –különböző sémákban reprezentálhatják akár ugyanazt az információt is, –más elnevezéseket használnak (név, ügyfélnév, vevő), –más skálákat használnak (forint, euro, dollár). •Például képzeljük el különböző sörözők nyilvántartásait: –egyik helyen használnak adatbázis-kezelőt, a másik helyen meg szöveges fájlokban tárolják az információt, –egyik helyen sörös üvegeket számolnak, a másik helyen sörös ládákat, –az egyik helyen tárolják a szállító telefonszámát, a másik helyen nem, –az egyik helyen megkülönböztetik a világos és barna söröket, a másik helyen nem.

4 XML •Az adatintegráció kétféle megoldása: 1.Adattárház építése (warehousing): - egy közös sémájú adatbázisba napi, heti rendszerességgel betöltjük (szükség esetén transzformáljuk) a feldolgozáshoz szükséges adatokat. Adattárház (Warehouse) Burkoló (Wrapper) Adatforrás

5 XML 2.Közvetítő használata (mediation): - az adatforrásokból egy közös nézetet (virtuális adatbázist) definiálunk, - a virtuális adatbázishoz intézett lekérdezéseket át kell fordítani az eredeti adatforrások lekérdezéseivé, és a lekérdezések eredményeit vissza kell integrálni. Közvetítő Burkoló Adatforrás Kérdés Alkérdés Kérdés Alválasz Válasz Alválasz Válasz

6 XML •Az információ integráció megoldásához új adatmodellt vezetünk be, a félig (vagy részben) strukturált adatmodellt. •Az XML a félig strukturált adatmodell szabványos leíró nyelve. •A félig strukturált adatok irányított, címkézett gráffal reprezentálhatók: •Csúcsok (elemek, gyökér): objektumok, •Élek (szülő-gyerek kapcsolatok): objektumok közti kapcsolatok, •Címkék az éleken vagy csúcsokon: attribútumok, kapcsolatnevek, •Levelek (text csúcsok): atomi értéket tartalmaznak. •Megjegyzés: Az élcímkézett és csúcscímkézett modellek megfeleltethetők egymásnak. •Az adatmodell általánosítása a DOM (Document Object Model, ).

7 XML Szűz Soproni kerRing Ászok sör kocsma gyártó kapható név cím díj évhelyezés gyökér Kocsma objektum Sör objektum

8 XML •Helyesen formázott XML dokumentumok •Egy XML dokumentum szövegből áll. •Egy helyesen formázott XML dokumentumnak többek között a következő szabályoknak kell megfelelnie: •Egyetlen gyökér elem lehet egy dokumentumban. Az XML deklaráció, feldolgozó utasítások és megjegyzések megelőzhetik a gyökér elemet. Ezt a részt prológusnak, az utána következő részt dokumentumpéldánynak hívjuk. •Az elemeket mind nyitó, mind záró címkének, tag- eknek kell határolni. •A tag-ek egymásba ágyazhatók, de nem lehetnek átfedők. Mindegyik nem gyökér elemet másik elemnek kell magában foglalnia.

9 XML

10 XML

11 XML Tea Citromlé Forrald fel a vizet és tedd bele a teát! Tedd bele a citromlevet, majd keverd össze!

12 XML Tea 1 tasak Tea 1 kanál Citromlé Receptek Recept 5 perc Név Idő Összetevő Utasítások lépés Forrald fel a vizet és tedd bele a teát! Tedd bele a citromlevet, majd keverd össze! mennyi egység Élcímkézett reprezentálás

13 lépés XML Tea Citromlé Receptek Recept Név Idő Összetevő Utasítások lépés Forrald fel a vizet és tedd bele a teát! Tedd bele a citromlevet, majd keverd össze! mennyi egység Tea 5 perc 1tasak kanál 1 Gyökér Csúcscímkézett reprezentálás Csúcs: Attribútum: Attribútumérték: Szöveg:

14 XML •Érvényes XML dokumentumok •Egy helyesen formázott XML dokumentum érvényes, ha megfelel egy adott sémának. •Egy XML séma az XML dokumentum típusának, szerkezeti szabályainak leírása. •Kétféle séma használatos: •DTD (Document Type Definition) •XSD (XML Scheme Definition)

15 XML XMLSpy - (30 napos próbaverzió), - ellenőrzi a helyesen formázottságot, érvényességet, sémát generál.

16 XML <!DOCTYPE Receptek [ ]> Tea Citromlé Forrald fel a vizet és tedd bele a teát! Tedd bele a citromlevet, majd keverd össze!

17 XML •Egy XML dokumentumpéldányhoz visszafele is le lehet generálni a sémáját, de ez erre a példányra fog legjobban illeszkedni: –az aktuális értékeket tekinti az összes lehetséges értéknek, –az értékekből határozza meg a típust, és a számosságot, –így várhatóan nem lesz elég általános. <!ATTLIST összetevő egység (tasak | kanál) #REQUIRED mennyi CDATA #FIXED "1" > <!ATTLIST Recept idő CDATA #FIXED "5 perc" név CDATA #FIXED "tea" >

18 XML •A DTD sémát külön fájlban is lehet tárolni: Tea Citromlé Forrald fel a vizet és tedd bele a teát! Tedd bele a citromlevet, majd keverd össze!

19 XML •Az XML fájl böngészővel is megnyitható, és az alstruktúrák kinyithatók a – jelekre kattintva, illetve összecsukhatók még egy kattintással. •A konyha.xml fájlt Internet Explorerrel megnyitva: - Tea Citromlé - Forrald fel a vizet és tedd bele a teát! Tedd bele a citromlevet, majd keverd össze!

20 XML •Az XSD sokkal részletesebb, mint a DTD. •A generált Konyha.xsd 73 sor, a Konyha.dtd 15 sor. •A Konyha.xsd első pár sora: ?xml version="1.0" encoding="UTF-8"?> s.t.b.

21 XML •A sémát is gráffal lehet reprezentálni. •A konyha.png tartalma:

22 XML •Az XPath ( lekérdezőnyelv reguláris kifejezésekre illeszkedő útvonalakat keres. •Példák: •1999-ben készült az 1.0 verzió. •2007. januárban jelent meg a 2.0 verzió. •A reguláris kifejezésben használt fontosabb jelölések: /gyökér csúcs //az aktuális csúcs leszármazottjai.aktuális csúcs..az aktuális csúcs közvetlen szülője csúcsnévaz adott nevű *tetszőleges csúcs |két lekérdezés eredményének egyesítése [ ]feltétel megadása

23 XML eredménye: név attribútum, értéke: tea eredménye: összetevő csúcs, értéke: Tea összetevő csúcs, értéke: Citromlé •/Receptek/Recept/Utasítások/* eredménye: lépés csúcs, értéke: Forrald fel a vizet... lépés csúcs, értéke: Tedd bele a citromlevet...

24 XML •//Utasítások | /Receptek/Recept eredménye: Recept csúcs Utasítások csúcs -- létezik a csúcsnak mennyi attribútuma -- eredménye: összetevő csúcs, értéke: Tea összetevő csúcs, értéke: Citromlé •//Utasítások/lépés[2] – a 2. lépés csúcs – eredménye: lépés csúcs, értéke: Tedd bele a citromlevet... and összetevő="Citromlé"]//lépés eredménye: lépés csúcs, értéke: Forrald fel a vizet... lépés csúcs, értéke: Tedd bele a citromlevet...

25 XML •/*/* eredménye: Recept csúcs •/*/*/* eredménye: összetevő csúcs, értéke: Tea összetevő csúcs, értéke: Citromlé Utasítások csúcs •/*/*/*/parent::* -- az aktuális csúcs szülője -- eredménye: Recept csúcs •Fontosabb tengelyek (axes): childgyerek parentszülő descendantösszes leszármazott ancestorösszes ős selfaktuális csúcs attributeösszes attribútum following- sibling következő testvér preceding- sibling előző testvér precedingnyitó tag előtti összes csúcs followingzáró tag utáni összes csúcs

26 XML •Az XPath lekérdezésekben függvények is használhatók: Fontosabb függvényosztályok: •Accessor Például: /Receptek/Recept/node-name(.) Eredménye: xs:QName, értéke: Recept •Numeric Például: Eredménye: xs: Double, értéke:4 •String Például: Eredménye: xs: Integer, értéke:8 Másik példa: Eredménye: xs: string, értéke: TEA

27 XML •AnyURI Például: /resolve-uri(".\Példa") Eredménye: xs: anyURI, értéke: C:\TMP\Példa •Boolean Például: and false() Eredménye: xs: boolean, értéke false •Duration/Date/Time Például: //lépés/current-date() Eredménye (-- időzónával együtt --): xs: date, értéke: :00 •QName (qualified name) Például: //Recept/namespace-uri(.) Eredménye: xs: anyURI, értéke üres

28 XML •Node Például: Például: //Recept/namespace-uri(.) Eredménye: xs: string, értéke "összetevő" xs: string, értéke "Utasítások" További függvényosztályok: •Sequence •Context •Error and Trace •Elnevezéseket névterek segítségével lehet egyedivé tenni. A névterek után : jelet teszünk. Előre deklarált névterek: 1.xml = 2.xs = 3.xsi = 4.fn = 5.local =

29 XML •Az XQuery lekérdező nyelv: –SQL-hez hasonló: •FLOWR kifejezések: •FOR, LET, WHERE, ORDER BY, RETURN. –XML-ben az adatelérést XPath kifejezéssel lehet megadni, –az XQuery január 23 óta W3C ajánlás –az adatbázis-kezelők (pl. Oracle) támogatják •Alkalmazási területek: –információ kinyerése XML fájlokból, –jelentések készítése, –XML adatok átalakítása XHTML formátumra, –weben publikált adatokon keresés –web service alkalmazások megvalósítása.

30 XML •Változók használata: –$változó •Például: •xquery version "1.0"; for $x in doc("konyha.xml")//összetevő order by return $x Eredménye XML dokumentum: Citromlé Tea

31 XML •HTML dokumentum is generálható a segítségével Például a konyha.xq fájl legyen a következő: xquery version "1.0"; Összetevők { for $x in doc("konyha.xml")//összetevő let $valami :="kanál" where return {$x/text()} }

32 XML •Az előbbi XQuery eredménye: Összetevők Citromlé Az eredményt elmentve Konyha.html fájlba és böngészővel megnyitva:

33 XML •Ha a lekérdezés eredménye több elemet tartalmaz, külön sorokba jeleníthetjük meg az elemeket, és rendezhetjük is: xquery version "1.0"; Összetevők { for $x in doc("konyha.xml")//összetevő order by return {$x/text()} }

34 XML •Az előbbi XQuery eredménye: Összetevők Citromlé Tea •Böngészővel megnyitva:

35 XML •Az XPath összes függvénye mellett más beépített függvények is használhatók, és új függvényeket is meg lehet adni. •Például a eredménye 2. •A következő rekurzív függvény kiszámolja a megadott XML dokumentum gráfjának mélységét. xquery version "1.0"; declare function local:depth($e as node()) as xs:integer { (: Ha nincs gyereke egy csúcsnak, akkor a mélysége 1 :) (: Különben 1-gyel nagyobb a mélysége, mint a gyerekei mélységeinek maximuma :) if (fn:empty($e/*)) then 1 else fn:max(for $c in $e/* return local:depth($c)) + 1 }; local:depth(fn:doc("Konyha.xml")) •Eredménye: 5 •A local:depth(fn:doc("Konyha.xml")/Receptek/Recept/Utasítások/lépés[1]) Eredménye: 1

36 XML •Az Oracle adatbázis-kezelő különböző verziói egyre bővülő XML támogatást nyújtanak. •A legfontosabb fogalmak összefoglalva (a címke, vagy tag jelentik a gráf egy csúcsát):

37 XML

38 XML

39 XML

40 XML

41 XML

42 XML

43 XML

44 XML

45 XML

46 XML

47 XML

48 XML

49 XML

50 XML

51 XML

52 XML

53 XML

54 XML

55 XML

56 XML

57 XML FLOWR kifejezés

58 XML

59 XML

60 XML

61 XML

62 XML

63 XML