To jest stara wersja strony!
Opis
Spotkania
Projekt
Part 1. Attributes representation in different markup languages
To start with...
While talking about attribute-based languages we can recognize the following types of logic:
AAL – Attributive Logic, i.e. attributive logic with atomic values of attributes only
SAL – Set Attributive Logic, i.e. attributive logic with set values of attributes
VAAL – Variable Atomic Attributive Logic, i.e.attributive logic with atomic values of attributes incorporating variables
VSAL - Variable Set Attributive Logic, i.e.attributive logic with set values of attributes incorporating variables
The alphabet and the crucial question:What is an attribute?
Let there be the following, pairwise disjoint
sets of symbols:
O – a set of object name symbols
A – a set of attribute names
D – a set of attribute values names (the domains)
V – a set of variable symbols (variables)
If the set of attributes is finite and given as
then
,
where Di is the domain of attribute Ai , i=1, 2, …,n.
Attributes in AAL and VAAL
An attribute Ai is a function (or partial function) of the form:
![:pl:miw:atrybut-def.png :pl:miw:atrybut-def.png](/_media/pl:miw:atrybut-def.png)
An attribute can be a partial function, since not all the attributes must be defined for all the objects.
Generalized attributes in SAL and VSAL
A generalized attribute Ai is a function (or partial function) of the form
![:pl:miw:atrybut-def2.png :pl:miw:atrybut-def2.png](/_media/pl:miw:atrybut-def2.png)
RDF - Resource Description Framework
RDF identifies things using Web identifiers (URIs)
RDF is written in XML. The language is called RDF/XML.
The main elements of RDF are the root element, <RDF>, and the <Description> element, which identifies a resource.
<rdf:RDF> is the root element of an RDF document. It defines the XML document to be an RDF document. It also contains a reference to the RDF namespace. <rdf:RDF xmlns:rdf=„
http://www.w3.org/1999/02/22-rdf-syntax-ns#”
The <rdf:Description> element identifies a resource with the rdf:about attribute. This element contains elements that describe the resource.
Attributes representation
„RDF is based on the idea that the things being described have properties which have values, and that resources can be described by making statements that specify those properties and values. RDF uses a particular terminology for talking about the various parts of statements.” (W3C RDF Primer)
Attributes are represented in RDF in a form of RDF Triples (subject, predicate, object) where subject denote the resource being described, predicate indicate the name of the attribute and object points to the attribute (predicate) value. RDF statements (triples) consist of subject, predicate and object which all are identified by URIs.
Part of an RDF triple | Can be |
Subject | URI, blank node |
Predicate | URI |
Object | URI, literal (constant values, plain or typed), blank node |
RDF uses VSAL
http://www.w3.org/TR/rdf-concepts/#dfn-blank-node
sets of attributes cannot be defined in a single RDF triple, because attributes in RDF are represented as binary predicates only. However, it is possible to do that using RDF Container Elements (<rdf:Bag> and <rdf:Seq>) or RDF Collections. To define sets of attributes we create a new resource (which may either be a blank node or a resource with a URIref). The resource is given an rdf:type property whose value is one of the predefined resources rdf:Bag, rdf:Seq, or rdf:Alt . Then the members of the container can be described by defining a container membership property for each member with the container resource as its subject and the member as its object.
http://www.w3.org/TR/rdf-primer/#containers
RDF/XML notation
Triples of the Data Model (an example from W3Schools.):
To avoid using URI all around we use namespaces which we define as follows: xmlns:si=„http://www.recshop.fake/siteinfo#”
In RDF/XML attributes (properties of subjects) can be defined in three ways:
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" <!-- rdf namespace -->
xmlns:si="http://www.recshop.fake/siteinfo#"><!-- other namespace (eg. Our own website's)>
<rdf:Description rdf:about="http://www.w3schools.com/RDF"> <!-- subject identifed with a resource by rdf:about attribute -->
<si:author>Jan Egil Refsnes</si:author> <!-- property and its value -->
<si:homepage>http://www.w3schools.com</si:homepage> <!-- another property and its value -->
</rdf:Description>
</rdf:RDF>
When you parse the example above with a RDF Validator, the result will look something like this
Properties as attributes
Properties as resources
Do powyższych podpunktów nie mogłam dołączyć kodu - otrzymuje błąd, że metoda POST jest niezaimplementowana
prawdopodobnie sekcja tekstu jest za długa. — Weronika Furmańska 2008/05/21 22:35
ERDF - Extended RDF
Attribute representation
Partial Logic allows to distinguish between properties and classes that are completely represented in a knowledge base and those that are not. It is to the owner of the database to classify whether for a given property there is a complete information or not.
On completely represented properties (which are by design treated as partial ones) the close-world assumption can be applied and the entailment of
allows to derive
. However, we can declare a property to be total. If we do so, the property can be both true or false under some interpretation and the rule „
derives
” is not applicable. There has to be an explicit negative information about a total property to infer negated statements about it.
ERDF let us define if a property or a class as total (or partial by default) and therefore support both close-world and open-world reasoning.
ERDF extends RDF and RDFSchema in a couple of ways.
First, RDF triples are extended with the inclusion of strong negation, so one can specify a predicate which is explicitly negative.
<ex:likes erdf:negationMode="Sneg" rdf:resource="#Pork"/>
RDFS vocabulary (which let one define classes and properties) are extended so that we can declare a property or class to be total (and thus enable open-world reasoning on them).
There can be a plain literal in the place of ERDF triple subject. So now it looks as follows:
Part of an ERDF triple | can be |
Subject | URI or literal (plain or typed) or a variable |
Predicate | URI |
Object | URI or literal (plain or typed) or a variable |
ERDF/XML notation
ERDF/XML syntax folllows the RDF/XML one and extends it in a suitable way.
RDFS is extended with the terms erdf:TotalClass and erdf:TotalProperty. We can define a property p or a class c to be total using
rdf:type(p,erdf:TotalProperty)
and
rdf:type(c,erdf:TotalClass)
statements.
Example of a regular (partial by design) property:
<rdf:Property rdf:about="#likes">
<rdfs:domain rdf:resource="#Person"/>
</rdf:Property>
Example of a total property:
<erdf:TotalProperty rdf:about="#authorOf">
<rdfs:domain rdf:resource="#Person/">
<rdfs:range rdf:resource="#Book"/>
</erdf:TotalProperty>
ERDF triples (and sets of ERDF triples sharing the same subject term) are encoded by means of the erdf:Description element, which has a non-empty list of (possibly negated) property-value slots about the subject term. The following rules apply:
OWL - Web Ontology Language
OWL Web Ontologoy Language - a language for defining and instantiating Web ontologies.
Ontology is a term borrowed from philosophy that refers to the science of describing the kinds of entities in the world and how they are related.
An OWL ontology may include descriptions of classes, properties and their instances.
Given such an ontology, the OWL formal semantics specifies how to derive its logical consequences, i.e. facts not literally present in the ontology, but entailed by the semantics.
These entailments may be based on a single document or multiple distributed documents that have been combined using defined OWL mechanisms. (from OWL Guide)
Three sublanguages of OWL
OWL provides three increasingly expressive sublanguages designed for use by specific communities of implementers and users.
supports those users primarily needing a classification hierarchy and simple constraints
it should be simpler to provide tool support for OWL Lite than its more expressive relatives
provides a quick migration path for thesauri and other taxonomies
has a lower formal complexity than OWL DL
supports those users who want the maximum expressiveness while retaining computational completeness (all conclusions are guaranteed to be computable) and decidability (all computations will finish in finite time)
includes all OWL language constructs, but they can be used only under certain restrictions
-
is meant for users who want maximum expressiveness and the syntactic freedom of RDF with no computational guarantees
allows an ontology to augment the meaning of the pre-defined (RDF or OWL) vocabulary
it is unlikely that any reasoning software will be able to support complete reasoning for every feature of OWL Full.
Each of these sublanguages is an extension of its simpler predecessor, both in what can be legally expressed and in what can be validly concluded.
Sprawozdanie
Materiały