05: RDF Continued Flashcards
Basic Ideas of RDF Schema
- RDF is a universal language that lets users describe resources in their own vocabularies by using:
- Classes and properties
- Class hierarchies and inheritance
- Property hierarchies
- Does not assume/define semantics
Instances
- Individual objects that belong to a class are instances of that class
- Relationship between instances and classes in RDF is though rdf:type
Why are classes useful?
- Classes impose restrictions on what can be stated in an RDF document using the schema
- Disallows nonsense
Class Hierarchies
- A is a subclass of B if every instance of A is also an instance of B
- Therefore, B is a superclass of A
- A subclass graph need not be a tree
- A class may have multiple superclasses

Inheritance in Class Hierarchies
- Holds a range restriction, i.e. Courses must be taught by academic staff members only
“Michael Maher is a professor.”
- Michael Maher inherits the ability to teach from the class of academic staff members
- This is achieved in an RDF schema by fixing the semantics of “is a subclass of”
Hierarchical Relationships for Properties
e.g. “is taught by” is a sub-property of “involves”
- If a course C is taught by an academic staff member A, then C also involves A
- Converse is not necessarily true
- P is a sub-property of Q, if Q(x,y) is true whenever P(x,y) is true.
RDF Layer vs RDF Schema Layer
- Schema is written in a formal language using expressions like subClassOf, Class, Property, subPropertyOf, Resource, etc.
- Think: relational database schema (RDF Schema Layer) vs. actual instances of class relations (RDF Layer)

The modeling primitives of RDF Schema are defined using _______ and _______.
The modeling primitives of RDF Schema are defined using resources and properties.
Core Classes
- rdfs:Resources, class of all resources
- rdfs:Class, class of all classes
- rdfs:Literal, class of all literals (strings)
- rdfs:Property, class of all properties
- rdfs:Statement, class of all reified statements
Core Properties
- rdf:type, which relates a resource to its class (resource is declared to be an instance of that class)
- rdfs:subClassOf, which relates a class to one of its superclasses (all instances of a class are instances of its superclass)
- rdfs:subPropertyOf, elates a property to one of its superproperties
-
rdfs:domain, which specifies the domain of a property P
- Class of those resources that may appear as subjects in a triple with predicate P
- If the domain is not specified, then any resource can be the subject
-
rdfs:range, which specifies the range of a property P
- Class of those resources that may appear as values in a triple with predicate P

rdfs:subClassOf and rdfs:subPropertyOf are _____, by definition.
rdfs:subClassOf and rdfs:subPropertyOf are transitive, by definition.

Reification and Containers
- rdf:subject, relates a reified statement to its subject
- rdf:predicate, relates a reified statement to its predicate
- rdf:object, relates a reified statement to its object
- rdf:Bag, the class of bags
- rdf:Seq, the class of sequences
- rdf:Alt, the class of alternatives
- rdfs:Container, which is a superclass of all container classes, including the three above
Utility Properties
- rdfs:seeAlso relates a resource to another resource that explains it
- rdfs:isDefinedBy is a subproperty of rdfs:seeAlso and relates a resource to the place where its definition, typically an RDF schema.
- rdfs:comment. Comments, typically longer text, can be associated with a resource
- rdfs:label. A human-friendly label (name) is associated with a resource
Three Purposes of Axiomatic Semantics
- Formalizing the meaning of the modeling primitives of RDF and RDF Schema by translating them into first-order logic
- Making the semantics unambiguous and machine accessible
- Providing a basis for reasoning support by automated reasoners manipulating logical formulas
First Order Logic
- AKA predicate logic
- Collection of formal systems used in mathematics, philosophy, linguistics, and computer science
- Uses quantified variables over non-logical objects and allows the use of sentences that contain variables
- There are predicates having predicates or functions as arguments, or in which one or both of predicate quantifiers or function quantifiers are permitted

Function Symbols
(An Auxiliary Axiomatisation of Lists)
- nil - empty list
- cons(x,l) - adds an element to the front of the list
- first(l) - returns the first element
- rest(l) - returns the rest of the list
Predicate Symbols
(An Auxiliary Axiomatisation of Lists)
- item(x,l) - tests if an element occurs in the list
- list(l) - tests whether l is a list
Basic Predicates
-
PropVal(P,R,V)
- A predicate with 3 arguments, which is used to represent an RDF statement with resource R, property P and value V
- An RDF statement (triple) (P,R,V) is represented as PropVal(P,R,V)
-
Type(R,T)
- Short for PropVal(type,R,T)
- Specifies that the resource R has the type T
- Type(?r,?t) <–> PropVal(type,?r,?t)
Biconditional
if and only if; iff
A <–> B
e.g. either both A and B are correct or both are wrong
Implication
if, then
A –> B
e.g. if A is correct, then B is correct
By using the implication symbol, write an implication formula for the following statement in the image.

(Hint: complete the following PropVal(domain,?p,?d) –> ???)

By using the implication symbol, write an implication formula for the following statement in the image.

(Hint: complete the following PropVal(range,?p,?r) –> ???)

By using the biconditional symbol, write an implication formula for the following statement in the image.

(Hint: complete the following PropVal(subPropertyOf,?p,?p’) ???)

Semantics Based on Inference Rules
- Semantics in terms of RDF Triples instead of restating RDF in terms of first-order logic
- Sound and complete inference systems
Inference System Rules
IF E contains certain triples, THEN add to E certain additional triples

(where E is an arbitrary set of RDF triples)