Ajánlott irodalom:
>> Ullman-Widom: Adatbázisrendszerek.
Alapvetés, Panem, 2008.
Második,
átdolgozott kiadás (megjelent: 2008.
november. ÚJ!!!)
-- 11. fejezet A
félig-struktúrált adatmodell. XML.
-- 12. fejezet
Programozási nyelvek az XML-hez. XPath. XQuery.
>> Oracle
XML DB Developer's Guide10g (10.2) HTMLPDF
(ez
például 852 oldalas doksi,
781-800.o.>> B Appendix XPath)
>> W3C ajánlás XML: http://www.w3.org/XML/
XPath 2.0: http://www.w3.org/TR/xpath20/
XQuery & XPath Data Model: http://www.w3.org/TR/xpath-datamodel/
>> W3Schools XML Tutorial: W3Schools
TutorialXML Tutorial
XPath Tutorial:
XPath
Tutorial XQuery
Tutorial: XQuery
Tutorial Segédanyagok: Nikovits
Tibor összefoglalói és kidolgozott
példái
>> XML dokumentum, XMLTYPE, adatok
lekérdezése: xml_alapok.txt
>> A példák alapjául
szolgáló XML dokumentum itt: xml_dok_pelda.txt
>> XPath nyelv, lokációs
lépések, XPath kifejezések: xpath_alapok.txt
Feladatok:
-- XPath kifejezések
építőköveinek bemutatása: xpath
examples (www.zvon.org)
-- XPath példák (feladatok
megoldásokkal) xpath_feladatok.txt
A példák
alapjául szolgáló XML dokumentum itt
található: xml_dok_pelda.txt
(Ezt nyomtassátok ki, mert
fontos a csomópontok nevében a kis/nagybetű!)
-- 1.) Adjuk meg a teljes dokumentumot
-- 2.) Adjuk meg az összes csúcsot (az összes
létező részfát)
-- 3.) Adjuk meg az összes második csúcsot
(az összes létező részfák 2.
csúcsait)
-- 4.) Adjuk meg az első kölcsönző nevét.
-- 5.) Adjuk meg azokat a csomópontokat, amelyeknek van 'ar'
attribútuma
-- 6.) Adjuk meg a DVD csomópontok szöveges
tartalmát nyitó és
záró tagek nélkül
-- 7.) Adjuk meg az összes előadót
-- 8.) Adjuk meg a 2600-nál olcsóbb vagy
3800-nál drágább DVD-ket
-- 9.) Adjuk meg azokat a csomópontokat, amelyeknek van 'eloado'
vagy 'szerzo' attributuma
-- 10.) Adjuk meg azokat a csomópontokat, amelyeknek van 'cim'
és 'szerzo' attributuma
-- 11.) Adjuk meg azokat a csomópontokat, amelyeknek nincs
attribútuma
-- 12.) Adjuk meg a Shrek DVD csomópontját
-- 13.) Adjuk meg a 'Szep Holnap' című CD
árát
-- 14.) Adjuk meg azoknak a CD-knek a címeit, amelyeknek
ára legalább 3000
-- 15.) Adjuk meg a 'Shrek' DVD árát
-- 16.) Adjuk meg a Gipsz Jakab által
kölcsönzött konyvek szerzőit
-- 17.) Adjuk meg azoknak a CD-knek az előadóit, amelyeket nem
Gipsz Jakab kölcsönzött
-- 18.) Adjuk meg azoknak a nevét, akik
kölcsönöztek Zorán CD-t
-- 19.) Adjuk meg azok nevét, akik
kölcsönöztek könyvet
-- 20.) Adjuk meg azok nevét, akik
kölcsönöztek könyvet vagy CD-t
-- 21.) Adjuk meg a Gipsz Jakab utáni
kölcsönzők nevét
-- 22.) Adjuk meg a Gipsz Jakab utáni kölcsönző
nevét
-- 23.) Adjuk meg az utolsó kölcsönző
nevét
-- 24.) Kik azok, akik 2 könyvet
kölcsönöztek
-- 25.) Kik azok, akik csak 1 féle dolgot
kölcsönöztek
-- 26.) Mely csomópontok nevében van 'r' betű?
-- 27.) Mely csomópontnevek hossza 2? HF+
Házi
feladat (beadandó
+pontért). Beküldése,
lásd
Beadandók
beküldése
-- 1.) Adjuk meg azoknak a CD-knek a címeit, amelyek
előadójának neve 'Z' betűvel kezdődik.
-- 2.) Adjuk meg a CD-t is kölcsönző
kölcsönzők közül az
utolsónak a nevét.
-- 3.) Adjuk meg az utolsó kölcsönző
nevét, feltéve, hogy ő
kölcsönzött CD-t.
(Ha nem kölcsönzött,
akkor üres eredmény)
-- 4.) Adjuk meg azok nevét, akikre igaz, hogy az
általuk
kölcsönzött CD-k árainak
összege
több mint 3000.
-- 5.) Adjuk meg azok nevét, akikre igaz, hogy az
általuk
kölcsönzött összes dolog
árainak összege
kevesebb mint 8000.
-- 6.) Adjuk meg azok nevét, akikre igaz, hogy az
általuk
kölcsönzött CD-k
átlagára több mint
2600. _____________________________________________________ 13. gyak. (2008.XII.02/04)
- XML - XQuery 8.2.
További XPath feladatok (papíron)
Segédanyagok: Nikovits
Tibor összefoglalói és kidolgozott
példái
>> XML dokumentum, XMLTYPE, adatok
lekérdezése: xml_alapok.txt
>> A példák alapjául
szolgáló XML dokumentum itt: xml_dok_pelda.txt
>> XPath nyelv, lokációs
lépések, XPath kifejezések: xpath_alapok.txt
Feladatok:
>> Adott egy XML dokumentum xml_dok_pelda.txt
(kolcsonzes tábla azon=1 sorában).
(Ezt nyomtassátok ki a ZH-ra, mert
fontos a csomópontok nevében a kis/nagybetű!)
>> Adjuk meg papíron, hogy az
alábbi XPath kifejezések milyen
eredményt szolgáltatnak.
--
'descendant-or-self::Kolcsonzo[self::*/descendant::CD/@eloado="Zoran"]/@nev'
-- '//Kolcsonzo[.//CD/@eloado="Zoran"]/@nev'
-- '//Kolcsonzo[//CD/@eloado="Zoran"]/@nev'
-- '//CD[@eloado="Zoran"]/ancestor::*/@nev'
-- '//Kolcsonzo[@nev="Gipsz Jakab"]/following-sibling::*[1]/@nev' 8.3.
Oracle 10.2g XQuery alapismeretek Ajánlott irodalom:
>> Ullman-Widom: Adatbázisrendszerek.
Alapvetés, Panem, 2008.
Második,
átdolgozott kiadás (megjelent: 2008.
november. ÚJ!!!)
-- 11. fejezet A
félig-struktúrált adatmodell. XML.
-- 12. fejezet
Programozási nyelvek az XML-hez. XPath. XQuery.
>> Oracle
XML DB Developer's Guide10g (10.2) HTMLPDF
(ez
például 852 oldalas doksi,
781-800.o.>> B Appendix XPath)
>> W3C ajánlás XML: http://www.w3.org/XML/
XPath 2.0: http://www.w3.org/TR/xpath20/
XQuery & XPath Data Model: http://www.w3.org/TR/xpath-datamodel/
>> W3Schools XML Tutorial: W3Schools
TutorialXML Tutorial
XPath Tutorial:
XPath
Tutorial XQuery
Tutorial: XQuery
Tutorial
Segédanyagok: Nikovits
Tibor összefoglalói és kidolgozott
példái
>> A példák alapjául
szolgáló XML dokumentum itt: xml_dok_pelda.txt
>> XQuery, FLWOR kifejezés: xquery_alapok.txt
Feladatok:
-- 1.) Igaz-e, hogy minden Kolcsonzo
kölcsönzött DVD-t?
-- 2.) Hány kölcsönző van?
Valójában a neveiket számoljuk meg.
-- 3.) Adjuk meg a kölcsönzők nevét
és az
általuk kölcsönzött CD-k
árának
összegét!
(XML formátumban)
-- 4.) Mely CD-ket kölcsönözte ki Kis Virag?
-- 5.) Igaz-e, hogy minden kölcsönző
kölcsönzött CD-t? (az eredmény
igen vagy nem legyen)
-- 6.) Mennyi a kölcsönzött DVD-k
árának
összege? (string nélkül
csúnyán
írja ki)
-- 7.) Mennyi a legolcsóbb CD ára?
-- 8.) Adjuk meg az alábbi formában, hogy ki hány darab dolgot kölcsönzött.
OSZLOP
----------------------------------------
<Kolcsonzo nev="Gipsz Jakab" darab="4"/>
<Kolcsonzo nev="Kis Virag" darab="3"/>
<Kolcsonzo nev="Nagy Pal" darab="1"/>
-- 9.) Adjuk meg az alábbi formában, hogy ki milyen
összértékű dolgokat kölcsönzött.
OSZLOP
-------------------------------------------
<Kolcsonzo nev="Gipsz Jakab" össz="11500"/>
<Kolcsonzo nev="Kis Virag" össz="8700"/>
<Kolcsonzo nev="Nagy Pal" össz="2500"/>