Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:miw:2009:miw09_owl_rules_1 [2009/05/12 20:15]
miw
pl:miw:2009:miw09_owl_rules_1 [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
-====== ​Opis ====== + 
-Wojciech Franczak, email: franczak@student.agh.edu.pl + 
-==== OWL_Rules ====+====== ​MIW 2009: OWL_Rules ​====== 
 + 
 +**Zrealizował:** [[franczak@student.agh.edu.pl|Wojciech Franczak]] 
 How decision rules can be represented,​ encoded in OWL rules in description logic, description logic programs, swrl?  How decision rules can be represented,​ encoded in OWL rules in description logic, description logic programs, swrl? 
 +
 +
  
 ====== Spotkania ====== ====== Spotkania ======
 +===== 20090513 ====
 +
 +proszę wskazać w których publ. które poodejścia są proponowane,​ jakie są ich
 +zalety i wady, jak się maja do formalizacji w DL.
 +
 ===== 20090409 ==== ===== 20090409 ====
  
Linia 58: Linia 68:
  | differentFrom '​('​ i-object i-object '​)'​  | differentFrom '​('​ i-object i-object '​)'​
  
 +Idea for Direct Model Theoretic Semantics is that we need to define bindings, extensions of OWL interpretations that also map variables to elements of the domain. The rule come true by an interpretation if every binding that satisfies the antecedent also satisfies the consequent. The semantic conditions relating to axioms and ontologies are unchanged, e.g., an interpretation satisfies an ontology iff it satisfies every axiom (including rules) and fact in the ontology. ​
  
 +Given an abstract OWL interpretation I, a binding B(I) is an abstract OWL interpretation that extends I such that function S maps i-variables to elements of R and d-variables to elements of LVT respectively. We recall that an Abstract OWL interpretation is a tuple of the form: I = <R, V, EC, ER, S>.
 +
 +^ Atom                ^ Condition on Interpretation ​   ^ 
 +| description(x) ​     | S(x) ∈ EC(description) ​       |
 +| property(x,​y) ​      | <​S(x),​S(y)>​ ∈ ER(property) ​   |
 +| sameAs(x,​y) ​        | S(x) = S(y))                   |
 +| differentFrom(x,​y) ​ | S(x) ≠ S(y)                    |
 +
 +binding B(I) satisfies an antecedent A iff A is empty or B(I) satisfies every atom in A. A binding B(I) satisfies a consequent C iff C is not empty and B(I) satisfies every atom in C. A rule is satisfied by an interpretation I iff for every binding B such that B(I) satisfies the antecedent, B(I) also satisfies the consequent. ​
 +
 +The semantic conditions relating to axioms and ontologies are unchanged. In particular, an interpretation satisfies an ontology iff it satisfies every axiom (including rules) and fact in the ontology; an ontology is consistent iff it is satisfied by at least one interpretation;​ an ontology O2 is entailed by an ontology O1 iff every interpretation that satisfies O1 also satisfies O2.
 +
 +Lot of XML encodings could be imagined, but the most obvious solution is to extend the existing OWL Web Ontology Language XML Presentation Syntax [OWL XML], which can be straightforwardly modified to deal with OWL Rules. This has several advantages:
 +
 +    * arbitrary OWL classes can be used as predicates in rules;
 +    * rules and ontology axioms can be freely mixed;
 +    * the existing XSLT stylesheet can easily be extended to provide a mapping to RDF graphs that extends the OWL RDF/XML exchange syntax.
 +
 +Below are more details:
 +
 +In the first place, the ontology root element is extended to include "​Rule"​ and "​Variable"​ axioms.
 +
 +  <​Ontology
 +  name = xsd:​anyURI ​
 +  >
 +  Content: (VersionInfo | PriorVersion | BackwardCompatibleWith | 
 +            IncompatibleWith | Imports | Annotation | 
 +            Class[axiom] | EnumeratedClass(D,​F) | 
 +            SubClassOf(D,​F) | EquivalentClasses | DisjointClasses(D,​F) | 
 +            DatatypeProperty | ObjectProperty | 
 +            SubPropertyOf | EquivalentProperties | 
 +            Individual[axiom] | SameIndividual | DifferentIndividuals |
 +            Rule[axiom] | Variable[axiom])* ​
 +  </​Ontology>​
 +
 +where name - refers to a name of this ontology, which is the base URI of this element. ​
 +
 +After it we need to add the relevant syntax for variables and rules. ​
 +
 +Variable axioms are statements about variables, indicating that the given URI is to be used as a variable, and adding any annotations.
 +
 +  <​Variable
 +  name = xsd:anyURI
 +  >
 +  Content: ( Annotation* ) 
 +  </​Variable>​
 +
 +where name - a reference to a name of this variable
 +and
 +
 +  <​Rule>​
 +  Content: ( Annotation*,​ antecedent, consequent )
 +  </​Rule>​
 +
 +where
 +
 +  <​antecedent>​
 +  Content: ( atom* )
 +  </​antecedent>​
 +
 +  <​consequent>​
 +  Content: ( atom* )
 +  </​consequent>​
 +
 +Atoms can be formed from unary predicates (classes), binary predicates (properties),​ equalities or inequalities.
 +
 +  Content: (classAtom | individualPropertyAtom | datavaluedPropertyAtom | 
 +            sameIndividualAtom | differentIndividualsAtom)
  
  
Linia 65: Linia 144:
 ==== Examples ==== ==== Examples ====
  
-===== BIBTEX =====+Abstract OWL:
  
-Is a tool for formatting lists of references. The BibTeX tool is typically used together with the LaTeX document preparation system.+Combination ​of the '​hasParent'​ and '​hasBrother'​ properties implies the '​hasUncle property: 
 +Generic rule syntax: 
 +  hasParent(?​x1,?​x2) ∧ hasBrother(?​x2,?​x3) ⇒ hasUncle(?​x1,?​x3) 
 +Abstract OWL syntax: 
 +  Implies(Antecedent(hasParent(I-variable(x1) I-variable(x2)) 
 +    ​hasBrother(I-variable(x2) I-variable(x3))) 
 + Consequent(hasUncle(I-variable(x1) I-variable(x3))))
  
-code example:  +Assert that art objects inherit the style/​period of the artist that created them: 
-  ​@Book{abramowitz+stegun, +Generic rule syntax
-    author =    "​Milton Abramowitz and Irene A. Stegun"​+  ​Artist(?x) & artistStyle(?​x,?y) & Style(?y) & creator(?z,?x) ⇒ style/​period(?​z,?​y) 
-    title =     "​Handbook of Mathematical Functions with +Abstract OWL syntax: 
-                 Formulas, Graphs, and Mathematical Tables",​ +  ​Implies(Antecedent(Artist(I-variable(x)) ​ 
-    ​publisher = "​Dover",​ +    ​artistStyle(I-variable(x) I-variable(y)) 
-    year =      1964, +    ​Style(I-variable(y)) 
-    ​address =   "​New York",​ +    ​creator(I-variable(z) I-variable(x))) 
-    edition =   "​ninth Dover printing, tenth GPO printing"​ + Consequent(style/​period(I-variable(z) I-variable(y))))
-    }+
  
-Inclusion bibliography base in the file follow by after command '​bibliography'​+XML Concrete Syntax:
  
-example+The following ​example ​is due to Guus Schreiber, and is based on ontologies used in an image annotation demo.
  
-  \bibliography{file_name} - where '​file_name' ​is file with base.+The rule expresses the fact that, given knowledge about the AAT style of certain ULAN artists (e.g., van Gogh is an Impressionist painter), we can derive the style of an art object (represented ​with the VRA element "​style/​period"​) from the value of the creator of the art object (represented by the VRA element "​creator",​ a subproperty of dc:​creator): ​
  
 +  <​owlx:​Rule> ​
 +  <​owlx:​antecedent> ​
 +    <​owlx:​classAtom> ​
 +      <​owlx:​class="&​ulan;​Artist"​ />
 +      <​owlx:​Variable owlx:​name="​_x"​ />
 +    </​owlx:​classAtom> ​
 +    <​owlx:​classAtom> ​
 +      <​owlx:​class="&​aat;​Style"​ />
 +      <​owlx:​Variable owlx:​name="​_y"​ />
 +    </​owlx:​classAtom> ​
 +    <​owlx:​individualPropertyAtom ​ owlx:​property="&​aatulan;​artistStyle"> ​
 +      <​owlx:​Variable owlx:​name="​_x"​ />
 +      <​owlx:​Variable owlx:​name="​_y"​ />
 +    </​owlx:​individualPropertyAtom> ​
 +    <​owlx:​individualPropertyAtom ​ owlx:​property="&​vra;​creator"> ​
 +      <​owlx:​Variable owlx:​name="​_x"​ />
 +      <​owlx:​Variable owlx:​name="​_z"​ />
 +    </​owlx:​individualPropertyAtom> ​
 +  </​owlx:​antecedent> ​
 +  <​owlx:​consequent> ​
 +    <​owlx:​individualPropertyAtom ​ owlx:​property="&​vra;​style/​period"> ​
 +      <​owlx:​Variable owlx:​name="​_z"​ />
 +      <​owlx:​Variable owlx:​name="​_y"​ />
 +    </​owlx:​individualPropertyAtom> ​
 +  </​owlx:​consequent> ​
 +  </​owlx:​Rule>​
  
-====== Prezentacja ====== +Mapping to RDF Graphs:
-====== Materiały ======+
  
-http://​markmail.org/download.xqy?​id=2cfm7saakjheqrxl&​number=1+Rules have variables, so treating them as a semantic extension of RDF is very difficult. It is, however, still possible to provide an RDF syntax for rules it is just that the semantics of the resultant RDF graphs will not be an extension of the RDF SemanticsA mapping to RDF/XML is most easily created as an extension to the XSLT transformation for the OWL XML Presentation syntax
  
-http://osm.cs.byu.edu/CS652s04/ontologies/OWL/carads.owl+  <owlr:Variable rdf:​ID="​_airport"​/
 +  <​owlr:​Variable rdf:​ID="​_loc"​/
 +  <​owlr:​Variable rdf:​ID="​_name"​/
 +  <​owlr:​Variable rdf:​ID="​_lat"​/
 +  <​owlr:​Variable rdf:​ID="​_lon"​/
 +  <​owlr:​Rule>​  
 +  <​owlr:​antecedent rdf:​parseType="​Collection">​ 
 +    <​owlr:​classAtom>​  
 +      <​owlr:​classPredicate rdf:​about="&​airport-ont;​Airport"​/>  
 +      <​owlr:​argument1 rdf:​about="#​_airport"​ /> 
 +    </​owlr:​classAtom>​ 
 +    <​owlr:​individualPropertyAtom>​  
 +      <​owlr:​propertyPredicate rdf:​resource="#​location"/>​  
 +      <​owlr:​argument1 rdf:​about="#​_airport"​ /> 
 +      <​owlr:​argument2 rdf:​about="#​_loc"​ /> 
 +    </​owlr:​individualPropertyAtom>​ 
 +    <​owlr:​datavaluedPropertyAtom>​  
 +      <​owlr:​propertyPredicate rdf:​resource="#​latitude"/>​  
 +      <​owlr:​argument1 rdf:​about="#​_loc"​ /> 
 +      <​owlr:​argument2 rdf:​about="#​_lat"​ /> 
 +    </​owlr:​datavaluedPropertyAtom>​ 
 +    <​owlr:​datavaluedPropertyAtom>​  
 +      <​owlr:​propertyPredicate rdf:​resource="#​longitude"/>​  
 +      <​owlr:​argument1 rdf:​about="#​_loc"​ /> 
 +      <​owlr:​argument2 rdf:​about="#​_lon"​ /> 
 +    </​owlr:​datavaluedPropertyAtom>​ 
 +  </​owlr:​antecedent>​ 
 +  <​owlr:​consequent rdf:​parseType="​Collection">​  
 +    <​owlr:​classAtom>​  
 +      <​owlr:​classPredicate>​ 
 +        <owl:​Restriction>​ 
 +          <​owl:​onProperty rdf:​resource="#​sameLocation"/>​ 
 +          <​owl:​someValuesFrom>​ 
 +            <​owl:​intersectionOf rdf:​parseType="​Collection">​ 
 +              <​owl:​Class rdf:​about="&​map;​Location"/>​ 
 +              <​owl:​Restriction>​ 
 +                <​owl:​onProperty rdf:​resource="&​map;​isLocationOf"/>​ 
 +                <​owl:​someValuesFrom>​ 
 +                  <​owl:​intersectionOf rdf:​parseType="​Collection">​ 
 +                    <​owl:​Class rdf:​about="&​map;​Point"/>​ 
 +                    <​owl:​Restriction>​ 
 +                      <​owl:​onProperty rdf:​resource="&​map;​isObjectOf"/>​ 
 +                      <​owl:​someValuesFrom>​ 
 +                        <​owl:​oneOf rdf:​parseType="​Collection">​ 
 +                          <​owl:​Item rdf:​resource="#​layer"/>​ 
 +                        </​owl:​oneOf>​ 
 +                      </​owl:​someValuesFrom>​ 
 +                    </​owl:​Restriction>​ 
 +                  </​owl:​intersectionOf rdf:​parseType="​Collection">​ 
 +                </​owl:​someValuesFrom>​ 
 +              </​owl:​Restriction>​ 
 +            </​owl:​intersectionOf rdf:​parseType="​Collection">​ 
 +          </​owl:​someValuesFrom>​ 
 +        </​owl:​Restriction>​ 
 +      </​owlr:​classPredicate>​  
 +      <​owlr:​argument1 rdf:​about="​_airport"​ /> 
 +    </​owlr:​classAtom>​ 
 +  </​owlr:​consequent>​  
 +  </​owlr:​Rule> ​
  
-http://​www-ksl.stanford.edu/​projects/​wine/​explanation.html+==== Summary ====
  
-http://​ftp.informatik.rwth-aachen.de/​Publications/​CEUR-WS/​Vol-196/​alpsws2006-poster5.pdf+Abstract Syntax:
  
-http://www.webont.org/owled/2008dc/papers/owled2008dc_paper_18.pdf+Based on http://www.cs.man.ac.uk/~horrocks/DAML/Rules/#2.1:
  
-http://www.daml.org/​2003/​11/​swrl/​rdfsyntax.html+The abstract syntax is specified by means of a version of Extended BNF, very similar to the EBNF notation used for XMLTerminals are quoted; non-terminals are bold and not quotedAlternatives are either separated by vertical bars (|) or are given in different productions. Components that can occur at most once are enclosed in square brackets ([…]); components that can occur any number of times (including zero) are enclosed in braces ({…}). Whitespace is ignored in the productions here.
  
-http://​www.daml.org/​rules/​proposal/​+XML Concrete Syntax
  
-http://www.w3.org/TR/owl-semantics/​examples.html +Based on http://ect.bell-labs.com/who/​pfps/​publications/owl-rules-proposal.pdf:
---------- +
-RDFhttp://​en.wikipedia.org/​wiki/​Resource_Description_Framework+
  
-SWRL: https://ai.ia.agh.edu.pl/wiki/doku.php?​id=pl:​miw:​miw08_hml_rules:​owl+Many possible XML encodings could be imagined (e.g., a RuleML based syntax), but the most obvious solution is to extend the existing OWL Web Ontology Language XML Presentation Syntax , which can be straightforwardly modified to deal with ORLThis has several advantages:​ 
 +  * arbitrary OWL classes (e.g., descriptions) can be used as predicates in rules; 
 +  * rules and ontology axioms can be freely mixed; 
 +  * the existing XSLT stylesheet can easily be extended to provide a mapping to RDF graphs that extends the OWL RDF/XML exchange syntax.
  
-SWRLhttp://​www.w3.org/​Submission/​SWRL/​+Mapping to RDF Graphs:
  
-BibTeX: ​http://pl.wikipedia.org/wiki/BibTeX+Based on http://www.daml.org/2003/10/​pi-meeting/​OWL-Rules/​all.htm
  
-DL: https://​ai.ia.agh.edu.pl/​wiki/​hekate:​semweb:​dl_intro+  * Rules have variables, so treating them as a semantic extension of RDF is very difficult  
 +  * Possible to provide an RDF syntax for rules but the semantics of the resultant RDF graphs will not be an extension of the RDF Semantics 
 +  * Mapping to RDF/XML is most easily created as an extension to the XSLT transformation for the OWL XML Presentation syntax
  
-OWL: http://​www.w3.org/​2004/​12/​rules-ws/​paper/​42/​ 
  
-OWLhttp://​www.w3.org/​TR/​owl-semantics/​syntax.html#​2.1+Usage Suggestions:
  
-OWL rules: http://www.cs.man.ac.uk/​~horrocks/​DAML/​Rules/#​2.1+Users may want to restrict the form or expressiveness of the rules they employ, in order to increase interoperability,​ reusability,​ extensibility,​ computational scaleability,​ or ease of implementation
  
-*http://​en.wikipedia.org/​wiki/​Description_logic+A useful restriction in the form of the rules is to limit antecedent and consequent classAtoms to be named classes, where the classes are defined purely in OWL (in the same document or in external OWL documents). Adhering to this format makes it easier to translate rules to or from existing (or future) rule systems, including
  
-*http://​www2003.org/​cdrom/​papers/​refereed/​p117/​p117-grosof.html+1.Prolog; 
 +2.production rules (descended from OPS5); 
 +3.event-condition-action rules; and 
 +4.SQL (where views, queries, and facts are all rules). 
 +Adhering to this form also maximises reuse and interoperability of the ontology knowledge in the rules with other OWL-speaking systems that do not necessarily support OWL Rules
  
-*http://​arxiv.org/abs/0711.3419+Users also may want to restrict the expressiveness of the OWL classes and descriptions appearing in rulesOne useful restriction on expressivity is Description Logic Programs which, e.g., prohibits existentially-quantified knowledge in consequents. Suitably-restricted OWL Rules can be straightforwardly extended to enable procedural attachments and/or nonmonotonic reasoning (negation-as-failure and/or prioritised conflict handling) of the kinds supported in CCI rule systems and in RuleML which facilitates interoperability between those CCI rule systems. Such adherence may thus facilitate combining OWL Rules knowledge with knowledge from those other rules languages. Suitable restrictions can also improve the empirical tractability of reasoning with rules.
  
-*http://​www.mindswap.org/​2005/​OWLWorkshop/​sub22.pdf+===== BIBTEX =====
  
-*http://www.co-ode.org/​resources/​tutorials/​ProtegeOWLTutorial.pdf+Is a tool for formatting lists of referencesThe BibTeX tool is typically used together with the LaTeX document preparation system.
  
-*http://korrekt.org/​page/​Description_Logic_Rules+code example 
 +  @Book{abramowitz+stegun,​ 
 +    author =    "​Milton Abramowitz and Irene AStegun",​ 
 +    title =     "​Handbook of Mathematical Functions with 
 +                 ​Formulas,​ Graphs, and Mathematical Tables",​ 
 +    publisher = "​Dover",​ 
 +    year =      1964, 
 +    address =   "​New York",​ 
 +    edition =   "​ninth Dover printing, tenth GPO printing"​ 
 +    }
  
-*http://​www.cs.put.poznan.pl/​alawrynowicz/​sem20060328.pdf+Inclusion bibliography base in the file follow by after command '​bibliography'​
  
-*http://​www.semanticweb.gr/​TheaOWLLib/​+example
  
-*http://​arxiv.org/​ftp/​arxiv/​papers/​0711/​0711.3419.pdf+  \bibliography{file_name} - where '​file_name'​ is file with base. 
 + 
 + 
 + 
 + 
 +====== Materiały ======
  
 +  - [[https://​ai.ia.agh.edu.pl/​wiki/​hekate:​semweb:​dl_intro|Description Logics and OWL in the Semantic Web]]
 +  - [[http://​example.com|External Link]]
 +  - [[http://​owl.man.ac.uk/​2003/​why/​latest/​ |OWL Reasoning Examples]]
 +  - [[http://​ect.bell-labs.com/​who/​pfps/​publications/​owl-rules-proposal.pdf|A Proposal for an OWL Rules Language 1]]
 +  - [[http://​204.178.16.26/​who/​pfps/​talks/​rules/​index.html#​(1)|A Proposal for an OWL Rules Language 2]]
 +  - [[http://​www.cs.man.ac.uk/​~horrocks/​DAML/​Rules/#​2.1|A Proposal for an OWL Rules Language 3]]
 +  - [[http://​osm.cs.byu.edu/​CS652s04/​ontologies/​OWL/​carads.owl|First OWL ontology example: Car Advistisement Ontology]]
 +  - [[http://​www-ksl.stanford.edu/​projects/​wine/​explanation.html|How does it work?]]
 +  - [[http://​ftp.informatik.rwth-aachen.de/​Publications/​CEUR-WS/​Vol-196/​alpsws2006-poster5.pdf|Applying Prolog to Semantic Web Ontologies & Rules]]
 +  - [[http://​www.webont.org/​owled/​2008dc/​papers/​owled2008dc_paper_18.pdf|Safe Rules for OWL 1.1]]
 +  - [[http://​www.daml.org/​2003/​11/​swrl/​rdfsyntax.html|RDF Concrete Syntax]]
 +  - [[http://​www.daml.org/​rules/​proposal/​|SWRL:​ A Semantic Web Rule Language Combining OWL and RuleML 1]]
 +  - [[http://​www.w3.org/​Submission/​SWRL/​|SWRL:​ A Semantic Web Rule Language Combining OWL and RuleML 2]]
 +  - [[http://​www.w3.org/​TR/​owl-semantics/​examples.html|OWL Web Ontology Language Semantics and Abstract Syntax 1]]
 +  - [[http://​www.w3.org/​TR/​owl-semantics/​syntax.html#​2.1|OWL Web Ontology Language Semantics and Abstract Syntax 2]]
 +  - [[http://​example.com|External Link]]  ​
 +  - [[http://​en.wikipedia.org/​wiki/​Resource_Description_Framework|Resource Description Framework]]
 +  - [[https://​ai.ia.agh.edu.pl/​wiki/​doku.php?​id=pl:​miw:​miw08_hml_rules:​owl|OWL - Web Ontology Language]]
 +  - [[http://​example.com|External Link]]
 +  - [[http://​www.w3.org/​2004/​12/​rules-ws/​paper/​42/​|OWL Rules]]
 +  - [[http://​en.wikipedia.org/​wiki/​Description_logic|Description logic]]
 +  - [[http://​www2003.org/​cdrom/​papers/​refereed/​p117/​p117-grosof.html|Description Logic Programs]]
 +  - [[http://​arxiv.org/​abs/​0711.3419|Translating OWL and Semantic Web Rules into Prolog]]
 +  - [[http://​korrekt.org/​page/​Description_Logic_Rules|Description Logic Rules]]
 +  - [[http://​www.semanticweb.gr/​TheaOWLLib/​|An OWL library for [SWI] Prolog]]
 +  - [[http://​arxiv.org/​ftp/​arxiv/​papers/​0711/​0711.3419.pdf|Translating OWL and Semantic Web Rules into Prolog]]
 +  - [[http://​pl.wikipedia.org/​wiki/​BibTeX|BibTeX]]
pl/miw/2009/miw09_owl_rules_1.1242152137.txt.gz · ostatnio zmienione: 2019/06/27 15:57 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0