180 likes | 359 Views
OWL (Ontology Web Language and Applications). Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education. Content. Origins of OWL Purposes of OWL Three Different Species of OWL Class Hierarchies Using OWL to Define Classes OWL: Thing
E N D
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education
Content • Origins of OWL • Purposes of OWL • Three Different Species of OWL • Class Hierarchies • Using OWL to Define Classes • OWL: Thing • Using OWL to Define Properties • Syntax for indicating that a property is symmetric • Reasoning on the Web • SPARQL: a Simple Protocol And Resource description framework Query Language - Some other OWL Tools • Some Typical OWL Applications - Conclusions
Origins of OWL DAML OIL RDF All were influenced by RDF DAML = DARPA Agent Markup Language OIL = Ontology Inference Layer RDF = Resource Description Framework DAML+OIL OWL OWL is now on track to become a W3C Recommendation!
OWL and RDF Schema enables machine-processable semantics OWL Semantics RDF Schema XML/DTD/XML Schemas Syntax OWL= RDFS +more
Purposes of OWL • The purpose of OWL is identical to RDF Schemas - to provide an XML vocabulary to define classes, their properties and their relationships among classes. • RDF Schema enables you to express very rudimentary relationships and has limited inferencing capability. • OWL enables you to express much richer relationships, thus yielding a much enhanced inferencing capability. • A benefit of OWL is that it facilitates a much greater degree of inference making than you get with RDF Schemas.
Purposes of OWL • OWL gives you an XML syntax to express statements about properties and classes, above and beyond what you can make with RDF Schema. • Using OWL to define classes. • Using OWL to define properties. • Using OWL to define relationships. • OWL statements that you can incorporate into your instance documents.
Three Different Species of OWL • OWL Lite: based on a fragment of FOL (First-Order Logic) • OWL DL (Description Language): based on the description logic SHION , a larger fragment of FOL, decidable for many applications, but it has a rather high worst-case time complexity (Exponential Time) • OWL Full: combination of OWL DL with all features of RDFS, and undecidability
Class Hierarchies Taxonomy (Class Hierarchy): Class1 Properties: property1: Type1 property2: Type2 ... These are the properties of Class1. The name of the property is shown (e.g., property1), and its range is shown in italics (e.g., Type1). Class2 Class3 Class2 and Class3 are subclasses of Class1. Class1 Venn Diagram: Properties: property1: Type1 property2: Type2 ... Class2 An alternate notation to the above class hierarchy is to use a Venn diagram, as shown here. Class3
Using OWL to Define Classes OWL gives you the ability to construct classes using the following set operators: • IntersectionOf • UnionOf • ComplementOf • Construct a class by enumerating it instances • Specify a class that is equivalent to (or disjoint from) another class
OWL: Thing • OWL: Thing is a predefined OWL class. All instances are members of owl:Thing, Thing class is the root of all classes. • <owl:Class rdf:ID=“River”> • <rdfs:subClassOf rdf:resource=“#Stream”/> • <rdfs:subClassOf rdf:resource=http://www.w3.org/2010/07/owl#Thing/”> • </owl:Class>
Using OWL to Define Properties Property Characteristics: • Range: indicate the possible values for a property • Domain: associate a property with a class • subPropertyOf: specialize a property • Symmetric Property • Transitive Property • Functional Property • Inverse Property • ObjectProperty: relates a resource to another resource • DataProperty: relates a resource to a Literal or an XML schema datatype
Syntax for indicating that a property is symmetric <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#" xml:base="http://www.geodesy.org/water/naturally-occurring"> <owl:ObjectProperty rdf:ID="connectsTo"> <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#SymmetricProperty"/> <rdfs:domain rdf:resource="#NaturallyOccurringWaterSource"/> <rdfs:range rdf:resource="#NaturallyOccurringWaterSource"/> </owl:ObjectProperty> ... </rdf:RDF>
Reasoning on the Web • Class membership: If x is an instance of class c, and c is a subclass of D, then we can infer that x is an instance of D. • Equivalence of classes: if c is equivalent to D, and D to E, then C is equivalent to E. • Consistency(concept satisfiability): if x is an instance of C, and if C is a subclass of intersection of D and E, with D and F are incompatible, then there must exist an inconsistency, and the class C shoud be empty. • Classification(instance checking): if certain property-value pairs have been declared as sufficient conditions for membership to a class C, then if an individual x satisfies such conditions, it can be concludes that x is an instance of C.
Concept subsumption: is concept C more general than D? • Knowledge base satisfiability: is the combined knowledge of Tbox (Terminology box) and Abox (Assertion box) free of contradictions? • Knowledge correctness : if knowledge base are sound and complete? • Some reasoners: *KAON *Pellet *FACT * RacePro
SPARQL: a Simple Protocol And Resource description framework Query Language Three alternative kinds of query: -ASK: Tests query pattern, return yes/no result. -CONSTRUCT : Extract part or whole graphs from knowledge base, Transforming from one representation into another. -DESCRIBE: Return RDF graph that describes set of resources, useful for constructing RDF graphs from non-RDF data sources.
Some other OWL Tools • -D2RQ: A server converts relational database to RDF. • CORESE: A search engine for RDF dataset and provides • SPARQL interface. • Jena: A semantic web framework for JAVA environment. • SeWeSe: A semantic web server 1
Some Typical OWL Applications: -Social network analysis: degree centrality, betweenness centrality -FOAF (Friends of A Friend) ontology -Semantic WIKI -Relational databases semantic integration -Web services integration
Conclusions • Advantages of using OWL to define an ontology: • Extensible: much easier to add new properties • Portable: much easier to move an OWL document than to move a database • Reasoning support: can generate implicit data from explicit data • Web 3.0 foundation