270 likes | 442 Views
Převod ER schémat do ERL Deskripční logiky. Mgr. Marek Vajgl. Přehled. Úvod do problematiky ER-model Deskrip ční logika Požadavky na transformaci Realizace transformace Transformace entit Transformace omezení. Minimum Deskripční logiky. Reprezentace pomocí konceptů a rolí
E N D
Převod ER schémat do ERL Deskripční logiky Mgr. Marek Vajgl
Přehled • Úvod do problematiky • ER-model • Deskripční logika • Požadavky na transformaci • Realizace transformace • Transformace entit • Transformace omezení
Minimum Deskripční logiky • Reprezentace pomocí konceptů a rolí • Reprezentace entit pomocí konceptů • Binární reprezentace vztahů pomocí rolí • Předpoklad otevřeného světa • Není apriorní vymezení nad/pod třídy, ale užívá se subsumce • Automatická tvorba taxonomie
Výhody ERL proti ER-modelům • Jasná reprezentace kvantifikátorů ve vztazích • Předpoklad otevřeného světa • Odvozovatelnost • Kontrolovatelnost dotazů – validace nad ontologií i daty, efektivní vyhodnocování
Definice užitého ER modelu • Reprezentace entit a vazeb mezi nimi s možností určit kardinalitu • ISA spojení, disjunktní omezení • Vícehodnotové atributy kardinalita atributů a možnost užití nepovinných atributů
Požadavky na ERL • Modelování omezení: • Základní • Explicitní • Implicitní • Splnění implicitních vlastností asociací: • Explicitní reprezentace vztahů • Ověření smysluplnosti vztahů, jejich jedinečnost
Požadavky na transformaci • Nutným předpokladem je zachování informační kapacity obou schémat • Je třeba vytvořit zobrazení zachovávající ekvivalenci mezi platnými stavy obou schémat • Toto zobrazení zachová ekvivalenci obou schémat • Vytvoření validního schématu v ERL DL
Transformace struktury Transformace základní domény Transformace tříd entit Transformace vazebních tříd Transformace EA-rolí Transformace atributů Transformace omezení Transformace kardinalitních omezení Transformace ISA omezení Transformace disjunktních omezení Postup transformace
Transformace základní domény Jedná se o transformaci základních domén, tj. zpravidla datových typů Existuje zde shoda mezi ER a ERL τ1 (String) = String τ1 (D) = D ∈B
Transformace tříd entit Transformace spojuje třídy entit s koncepty entit Nezahrnuje transformaci atributů 2(E) ⊑ ⊤e 2 (Zaměstnanec) ⊑ ⊤e
Transformace vazebních tříd • Transformace svazuje vazební třídy s vazebními koncepty • Pro: L (R) = [U1:E1, U2:E2, … Un:En] • 3 (R) ≐ ⊤r ⊓ ( =1 (4 (U1))-1) ⊓ … ⊓ ( =1 (4 (Un))-1) ⊓ AR • 4 (Ui) ⊑ Domain(2 (Ei)) ⊓ Range (3 (R))
Transformace vazebních tříd Platí: L (Pracuje) = [PracujeV: Zaměstnanec, Zaměstnává: Organizace] • Pro: L (R) = [U1:E1, U2:E2, … Un:En]
Transformace vazebních tříd 3(Pracuje) ≐ Tr ⊓ (=1 (4 (PracujeV))-1 ⊓ (=1 (4 (Zaměstnává))-1 ⊓ APracuje • Platí: L (Pracuje) = [PracujeV: Zaměstnanec, Zaměstnává: Organizace]
Transformace vazebních tříd 4 (PracujeV) ⊑ Domain (2 (Zaměstnanec)) ⊓Range (2 (Pracuje)) 4 (Zaměstnává) ⊑ Domain (2 (Organizace)) ⊓ Range (2 (Pracuje)). • 4 (Ui) ⊑ Domain(2 (Ei)) ⊓ Range (3 (R))
Transformace vazebních tříd • 4 (PracujeV) ⊑ Domain (2 (Zaměstnanec)) ⊓ Range (2 (Pracuje)) • 4 (Zaměstnává) ⊑ Domain (2 (Organizace)) ⊓ Range (2 (Pracuje)). • 3(Pracuje) ≐ Tr ⊓ (=1 (4 (PracujeV))-1 ⊓ (=1 (4 (Zaměstnává))-1 ⊓ APracuje
Transformace atributů Transformace atributů entit Každý atribut je zobrazen do role, kde doménou je koncept a příslušný obor hodnot 5 (Ai) ⊑ Domain (2,3 (C)) ⊓ Range (1 (Di)) 5 (ZaměstnanecID) ⊑ Domain (2 (Zaměstnanec)) ⊓ Range (1 (Integer))
Transformace kardinalitních omezení • Transformuje kardinalitní omezení na vztazích entit do ERL • Pro vazbu:La (E, R, U) = (m, M) a Lv (E, A) = (m, M) a vazební třídu R : De (R) = [A1:D1, A2:D2, …, An:Dn] • Pro La: card (E) ⊑ (≽m 4 (U)) ⊓(≼M 4 (U)) • Pro Lv: card (E) ⊑ (≽m 5 (A)) ⊓(≼M 5(A)) • Pro Ar: (≽m 5 (A)) ⊓(≼M 5 (A))
Transformace vazebních tříd Lv (Testování, Datum) = (1,5) • La (E, R, U) = (m, M) a Lv (E, A) = (m, M)
Transformace kardinalitních omezení • 3(Testování) ≐ Tr ⊓ (=1 (4 (Zkouší na))-1 ⊓ (=1 (4 (Je užíván))-1 ⊓ (≽1 5 (Datum)) ⊓ (≼5 5 (Datum))
Transformace ISA omezení • Mezi třídami entit: • Transformace dvou nevazebních tříd. • Pro ((E, E‘) ISA) • 2 (E) ⊑ 2 (E‘) • Mezi vazebními třídami: • Máme-li 2 vazební třídy R a R‘ v ISA hierarchii, stačí pouze nadefinovat ISA hierarchii rolí, hierarchie vztahů je zřejmá • 4 (U1) ⊑ 4 (U‘1) …4 (Un) ⊑ 4 (U‘n)
Transformace ISA omezení • 4 (Učí) ⊑ 4 (PracujeV),4 (Užívá) ⊑ 4 (Zaměstnává) • Zjevně:3 (Přiřazení) ⊑3 (Pracuje) • 2 (Učitel) ⊑ 2 (Zaměstnanec)
Transformace DISJ omezení Transformuje disjunktní omezení mezi dvěma entitami Pro: ((E, E‘) DISJ) 2 (E) ⊑ 2 (E‘) 2 (Učitel) ⊑ 2(Student)
Vlastnosti transformace • Korektní terminologie ERL • Alespoň stejná informační kapacita • Asociace reprezentovány explicitně pomocí vazebních konceptů • Vazební koncepty zachycují všechny implicitní vlastnosti asociací • Omezení přesně jeden • Různé instance vazeb neurčují stejnou vazbu
Možnosti dalšího užití • Tato definice schémat lze užít pro tvorbu T-Boxu v dalších reprezentacích deskripční logiky • 2 (Učitel) ⊑ 2 (Zaměstnanec) • 3(Testování) ≐ Tr ⊓ (=1 (4 (Zkouší na))-1 ⊓ (=1 (4 (Je užíván))-1 ⊓ (≽1 5 (Datum)) ⊓ (≼5 5 (Datum)) • (define-primitive-concept t2Učitel t2Zaměstnanec) • (define-concept t3Testovani (and *top* (exactly InvZkousiNa) (exactly InvJeUzivan) (at-least 1 t5Datum) (at-most 5 t5Datum)))
Užité zdroje • The Racer Systém –http://www.sts.tu-harburg.de/~r.f.moeller/racer/download.html • HACID Mohand-Said, PETIT Jean-Marc, TOURMANI Farouk: Representing and Reasoning on Database Conceptual Schemas. Knowl. Inf. Syst. 3(1): s. 52-80 (2001) –www.springerlink.com/index/H2GTG2H4M24ED3XD.pdf • FRANCONI Ernico: Description Logics – Description Logics and Databases – http://www.inf.unibz.it/~franconi/dl/course/2002/slides/db/db.pdf