Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

CXPath Dotazování nad heterogenními XML zdroji s pomocí konceptuálního schéma Jan Vávra, 21. dubna 2004

Podobné prezentace


Prezentace na téma: "CXPath Dotazování nad heterogenními XML zdroji s pomocí konceptuálního schéma Jan Vávra, 21. dubna 2004"— Transkript prezentace:

1 CXPath Dotazování nad heterogenními XML zdroji s pomocí konceptuálního schéma Jan Vávra, 21. dubna 2004 jan.vavra@matfyz.cz

2 Heterogenní xml zdroje... stejná aplikační doména rozdílné schémata xml zdrojů využítí: sémantický web

3 Principy dotazování 1. globální (jednotná) reprezentace XML schémat uživatel nemusí znát jednotlivá schémata pro formulaci dotazu 2. překlad globálního dotazu na dotazy odpovídající danému schématu 3. zpětné převedení výsledků tak, aby odpovídaly globálnímu shcématu

4 Překlad globálního dotazu máme globální schéma (konceptuální) překládáme dotaz nad globálním schématem do každého jednotlivého lokálního XML schématu za pomoci mapování (globál. → lokál. schéma)

5 Proč ne XML schema? Relace vs. hiearchie rozdílné vyjádření N:N vztahu globální XML schéma schopno vyjádřit jen jednu z možností

6 Globální jazyk – CXPath Conceptual XPath Na čem založit globální jazyk? operace spojení – relační algebra, SQL výraz cesty – OQL, Lorel, XPath Byl zvolen XPath 1.0 XPath vs. CXPath hierchické vztahy vs. vztahy bez hierchií kořenový element vs. dotazování se odkudkoliv

7 Konceptuální model založen na ORM / NIAM (Object Role Modeling / Natural language Information Analysis Method) varianta ER modelu definuje: koncept lexikální... #PCDATA nelexikální … elementy vztahy mezi koncepty

8 Příklad ORM/NIAM modelu

9 ORM model vs. ER model ER atribut × ORM entita, relace pro některé dotazy je třeba, aby atribut byl entita. není třeba definovat integritní omezení zvláštˇ pro atributy a relace.

10 ORM model vs. XML model (1) název konceptu vs. název elementu elementů stejného jména může být více na různých úrovních a mohou mít tak jiný význam koncept stejného jména může být jen jeden název konceptu = { synonyma, překlady elementů } kořenový element v XML modelu ORM nemá kořenový koncept v ORM lze se dotazovat na libovolný koncept

11 CXPath ( Conceptual Xpath ) jazyk pro dotazování nad ORM modelem navigační operátor (/) XPath: book/... „vyber potomky elementu book“ CXPath: book/... „vyber koncepty v relaci s book“ příklad: Vyber instance konceptu Title, které jsou v relaci instacemi konceptu Article, které jsou vztaženy k instacím konceptu Year s hodnotou 2004 / Article [Year = “2004” ] / Title / Title / Article [ Year = “2004” ]

12 CXPath a XPath... kvalifikovaný navigační operátor – název relace př.: mezi Article a Person definovány dvě relace co znamená Article / Person ? => ‘/’ se musí upřesnit – kvalifikovat názvem relace Article /{author} Person kvalifikovaný navigační operátor – název role někdy je ještě potřeba vyjádřit směr u relace mezi instancemi téhož konceptu

13 Kvalifikovaný navigační operátor – název role /Person/{CurrentMarriage.husband}/Person/Name

14 CXPath a XPath... hiearchické operátory.., // nejsou v CXPath definovány pozn. operátor / zachován, pozměněn význam z “otec-syn” na “vztažen“

15 Mapování CXPath do XPath je potřeba mít mapování mezi konceptuálním a XML schematem mapovací katalog pohledy pro každý konstrukt v konceptu definován XPath výraz, který vrací odpovídající množinu elementů XPath výraz je definován pro:  koncept  každý směr relace

16 Koncept / relaceMapování do XML 1Mapování do XML 2 Article/references/paper/publications/author/article Koncept / relaceMapování do XML 1Mapování do XML 2 Person/references/paper/*[local- name(.)=‘author’ or local- name(.)=‘referee’ /publications/author Koncept / relaceMapování do XML 1Mapování do XML 2 Article {author} →Personauthor.. Koncept / relaceMapování do XML 1Mapování do XML 2 Article← {author} Person[local-name(.)=“author”]/..article

17 Překlad CXPath na XPath přepisovací strategie: vstup je analyzován zleva doprava první / vynecháno první koncept... odpovídající XPath výraz každý další koncept je relativní je třeba před něj vypsat XPath výraz pro příslušnou relaci pozn. takových relací může být více – kvalifikované relace

18 Příklady překladu (1) Title „→“ Heading: Title je relativní koncept Article je kontextem přelož relaci Article → Title

19 Příklady překladu (2) prostor pro optimalizaci generovaných výrazů: /references/paper/referee/../@title

20 Příklady překladu (3)

21 Závěr CXPath je jazyk založený na Xpath dotazuje se nad abstrakcí několika heterogenních XML zdrojů CXPath se mapuje do výrazů jazyka XPath výsledné výrazy by se daly optimalizovat

22 Literatura 1. Querying Heterogenous XML Sources through a Conceptual Schema, S.D. Camillo, 2003, LNCS 2813, p. 186-199, http://www.firmar.com.br/sandro/paper254.pdf 2. Object-Role Modeling (ORM/NIAM), T. Halpin, 1998, http://www.orm.net/pdf/springer.pdf


Stáhnout ppt "CXPath Dotazování nad heterogenními XML zdroji s pomocí konceptuálního schéma Jan Vávra, 21. dubna 2004"

Podobné prezentace


Reklamy Google