Cxpath
This presentation is the property of its rightful owner.
Sponsored Links
1 / 22

CXPath PowerPoint PPT Presentation


  • 67 Views
  • Uploaded on
  • Presentation posted in: General

CXPath. Do tazování nad heterogenními XML zdroji s pomocí konceptuálního schéma. Jan Vávra, 21. dubna 2004 jan.vavra @matfyz.cz. Heterogenní xml zdroje. stejná aplikační doména rozdílné schémata xml zdrojů využítí: sémantický web. Principy dotazování.

Download Presentation

CXPath

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Cxpath

CXPath

Dotazování nad heterogenními XML zdroji s pomocí konceptuálního schéma

Jan Vávra,

21. dubna 2004

[email protected]


Heterogenn xml zdroje

Heterogenní xml zdroje...

  • stejná aplikační doména

  • rozdílné schémata xml zdrojů

    využítí:

  • sémantický web


Principy dotazov n

Principy dotazování

  • globální (jednotná) reprezentace XML schémat

    • uživatel nemusí znát jednotlivá schémata pro formulaci dotazu

  • překlad globálního dotazu na dotazy odpovídající danému schématu

  • zpětné převedení výsledků tak, aby odpovídaly globálnímu shcématu


P eklad glob ln ho dotazu

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)


Pro ne xml schema relace vs hiearchie

Proč ne XML schema?Relace vs. hiearchie

<article>

<author/>

</article>

<author>

<article/>

</author>

  • rozdílné vyjádření N:Nvztahu

  • globální XML schéma schopno vyjádřit jen jednu z možností


Glob ln jazyk cxpath conceptual xpath

Globální jazyk – CXPathConceptual 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


Konceptu ln model

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


P klad orm niam modelu

Příklad ORM/NIAM modelu


Orm model vs er model

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.


Orm model vs xml model 1

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


Cxpath conceptual xpath

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” ]


Cxpath a xpath

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


K valifikovan naviga n oper tor n zev r ole

Kvalifikovaný navigační operátor – název role

/Person/{CurrentMarriage.husband}/Person/Name


Cxpath a xpath1

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“


Mapov n cxpath do xpath

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


P e klad cxpath na xpath

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


P klady p ekladu 1

Příklady překladu (1)

  • Title „→“ Heading:

  • Titleje relativní koncept

  • Article je kontextem

  • přelož relaci

  • Article → Title


P klady p ekladu 2

Příklady překladu (2)

  • prostor pro optimalizaci generovaných výrazů:

  • /references/paper/referee/..[email protected]


P klady p ekladu 3

Příklady překladu (3)


Z v r

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


Literatura

Literatura

  • 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

  • Object-Role Modeling (ORM/NIAM), T. Halpin, 1998,

    • http://www.orm.net/pdf/springer.pdf


  • Login