SWRL (odvozování na míru) ISKM89 Organizace dat - sémantický web | podzim 2023 Zuzana Nevěřilová | Centrum zpracování přirozeného jazyka RDFS ● subClassOf, subPropertyOf, tranzitivita ● domain, range OWL ● symetrie ● disjoint, sameAs ● inverseOf ● klasifikace (union, intersection) Inference podle pojmenovaných pravidel http://www.ksl.stanford.edu/software/JTP/doc/owl-reasoning.html SWRL (Semantic Web Rule Language) - vychází z DATALOGu (něco jako Prolog) Každé pravidlo je implikace (Když A, tak B) ● A je antecedent (Body) ● B je konsekvent (Head) Antecedent i konsekvent jsou konjunkcí (AND) atomických tvrzení: ● C(x), P(x,y), sameAs(x,y), differentFrom(x,y) Inference podle vlastních pravidel friends(X,Y) :- likes(X,Y),likes(Y,X). antecedent. → konsekvent . a (head) : b1, b2, b3, … (body) a, bi - jsou atomy (atomická tvrzení) ● C(i) - i je typu C (C je třída) ● D(v) - hodnota v má Datatype D ● R(i,j) - i a j jsou v relaci R (R je ObjectProperty) ● U(i,v) - i má DatatypeProperty U s hodnotou v ● i = j nebo i ≠ j ● builtIn Syntax SWRL ● (OWL) instance jsou (SWRL) konstanty ● třídy jsou predikáty ● vlastnosti jsou predikáty Sémantika SWRL ● porovnávání - equal, notEqual, lessThan, lessThanOrEqual, greaterThan ● matematické operace - add, subtract, multiply, divide, mod, pow, abs, round, sin, cos ● booleovské funkce - booleanNot ● řetězce - stringEqualIgnoreCase, stringConcat, substring, stringLength, normalizeSpace, upperCase, lowerCase, contains, startsWith, endsWith, matches ● datum - date, time, yearMonthDuration, subtractDates, subtractTimes, … ● seznamy - listConcat, listIntersection, member, length, sublist, empty http://www.daml.org/2004/04/swrl/builtins.html SWRL builtIns hasParent(?x, ?y) ^ hasBrother(?y, ?z) -> hasUncle(?x, ?z) hasChild(?x, ?y) ^ yearOfBirth(?y, ?year) ^ swrlb:subtract(?year, 2023, ?age) -> hasChildOfAge(?x, ?age) Příklady SWRL