This document is also available as a non-normative single HTML file.
Copyright © 2009 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
The Delivery Context Ontology provides a formal model of the characteristics of the environment in which devices interact with the Web or other services. The Delivery Context includes the characteristics of the Device, the software used to access the service and the Network providing the connection among others.
The Delivery Context is an important source of information that can be exploited to create context-aware applications, thus providing a compelling user experience.
The ontology is formally specified in the Web Ontology Language [OWL]. This document describes the ontology and gives details of each term that it contains.
The normative definition of the ontology terms is generated automatically from the OWL file.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This is a Last Call Working Draft of a possible future W3C Recommendation, following the Second Public working draft published on April 15th 2008 (see the changes since the previous publication). As such the UWA WG considers the present draft sufficiently stable and mature. Nonetheless, it is expected to be complementary to the work being done on other aspects of the Delivery Context, namely Personalization. The Working Group maintains a Frequently Asked Questions document about the DCO, which may aid the reader.
Comments on this Last Call Working Draft are accepted until 7 July 2009, please send comments to the public public-uwa@w3.org mailing list (archived at http://lists.w3.org/Archives/Public/public-uwa/).
This document is published as part of the W3C Ubiquitous Web Applications Activity by the Ubiquitous Web Applications Working Group. It is a deliverable as defined in the Charter of that group.
This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
1 Introduction
1.1 Overview
1.2 Motivation
1.3 Understanding the Delivery Context Ontology
1.4 Scope
2 Reading the Recommendation
2.1 Normative and Informative Parts
2.2 Normative Language for Conformance Requirements
2.3 CURIE Prefix Bindings
2.4 Reading Term Descriptions
2.4.1 Class Description Specific Fields
2.4.2 Property Description Specific Fields
2.4.3 Instance Description Specific Fields
2.5 Class Disjointness
2.6 Normative Instance Disjointness
3 The Ontology
3.1 Definition
3.2 URI
3.3 Namespaces
3.4 Term Groups
3.4.1 Common
3.4.3 Hardware
3.4.4 Java
3.4.5 Location
3.4.2 Main
3.4.6 Network
3.4.7 Push
3.4.8 Software
3.4.9 Web Browsing
3.5 Measurement Units Representation
3.6 Instances
4 Conformance
A Class Hierarchy Summary
B Property Hierarchy Summary
C Summary of Changes since the Second Public Working Draft
C.1 Deleted Classes
C.2 Added Classes
C.3 Deleted Properties
C.4 Added Properties
D Ontology Resources (Non Normative)
E Acknowledgements (Non Normative)
This section is informative.
The DeliveryContext Ontology provides a formal model of the characteristics of the environment in which devices interact with the Web or other services. The Delivery Context includes the characteristics of the Device, the software used to access the service and the Network providing the connection among others.
The Ontology captures the Context of Use in which a user is interacting with a particular computing platform in a given physical environment in order to achieve an interactive task.
The Ontology is formally specified in the Web Ontology Language [OWL]. It defines a normative vocabulary of terms (classes, properties and instances) that models the different Properties, Aspects and Components (Aspect instances) of a Delivery Context.
The Delivery Context is an important source of information that can be exploited to create context-aware applications, thus providing a compelling user experience. Particularly, it can be used to adapt web content & applications to make them useable on a wide range of different devices with different capabilities.
The Ontology represents a normative, common understanding about the Delivery Context. As such it can be used as a normative reference to create specific Vocabularies, while at the same time enabling the interoperability between them.
The Delivery Context Ontology itself constitutes a vocabulary of terms and can be used in conjunction with generic APIs for retrieving Context Properties, such as [DCCI].
It is recommended to be familiar with RDF, OWL and ontologies in general before reading this specification. The [RDF-Primer] and the [OWL-Guide] are two documents which might be helpful for this purpose.
The model represented by the ontology is essentially hierarchical. At the top of the hierarchy is the
DeliveryContext
class, which gives access to the current UserAgent
, NetworkBearer
, Device
, RuntimeEnvironment
and pysical Environment
, which are the essential elements of any Delivery Context. Each of these elements are represented by classes which have different properties that model their specific characteristics and Components.
There are a number of generic properties which domain and / or range has been left deliberately open in order to maximize reuse and genericity. For example, the Object Property common:supports
, is devoted to convey what it is supported (formats, fonts, features, etc.) by any Delivery Context Entity. As such it can be used with both entities that are currently modelled within the Ontology or new entities that might appear in the future (Ontology extensions).
The UWA Working Group intends to publish tutorial materials related to this specification, containing at least:
The Delivery Context Ontology is aimed at providing a formal and universally accepted model of the Delivery Context. As such it is not intended to model properties which can be application or domain dependent. For instance, there are a number of properties that can be derived from the properties explicitly modelled by the Ontology.
On the other hand it is noteworthy to remark that certain facets of the Context of Use are not covered by this specification. Specific examples are the User Context or a full description of the physical environment (temperature, noise, light ...). It is expected that such descriptions will be included in future versions of this specification.
This section is normative.
The normative and informative parts of this specification are identified by use of labels within various sections. Generally, everything in the specification is considered to be normative, apart from the examples.
Individual conformance requirements or testable statements are identified by the use of specific key words. In particular, the key words must, must not, required, shall, shall not, should, should not, recommended, may, and optional in this specification are to be interpreted as described in [IETF RFC 2119].
This specification makes use of [CURIEs] as an abbreviated syntax for expressing URIs. The following CURIE prefix bindings are defined:
CURIE Prefix | Value |
---|---|
common |
http://www.w3.org/2007/uwa/context/common.owl# |
dcn |
http://www.w3.org/2007/uwa/context/deliveryContext.owl# |
hard |
http://www.w3.org/2007/uwa/context/hardware.owl# |
java |
http://www.w3.org/2007/uwa/context/java.owl# |
loc |
http://www.w3.org/2007/uwa/context/location.owl# |
net |
http://www.w3.org/2007/uwa/context/network.owl# |
push |
http://www.w3.org/2007/uwa/context/push.owl# |
soft |
http://www.w3.org/2007/uwa/context/software.owl# |
web |
http://www.w3.org/2007/uwa/context/web.owl# |
rdf |
http://www.w3.org/1999/02/22-rdf-syntax-ns# |
rdfs |
http://www.w3.org/2000/01/rdf-schema# |
xsd |
http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/# |
owl |
http://www.w3.org/2002/07/owl# |
Each term (class, property, normative instance) is documented in an specific section within this document. In addition there are cross references that link related terms between them.
A term description is composed by the following fields:
rdfs:label
) and full text (rdfs:comment
).It contains a list of normative references that describe precisely the intended meaning of the ontology term.
It is a list of informative references that clarifies the meaning of the ontology term.
The fields used in a class description are described as follows:
This field contains a list of all those ontology classes for which the described class is
a subclass (rdfs:subClassOf
axiom).
This field contains a list of all those ontology classes defined as a subclass (rdfs:subClassOf
axiom) of the described class.
This field contains a list of all those ontology properties whose domain includes the class.
This field contains a list of all those ontology properties whose range includes the class.
This field contains the property restrictions for the class. Property restrictions are documented in accordance with the OWL Abstract Syntax.
This field is a list of CURIEs with the normative instances (if any) for the class.
This field indicates the property type and characteristics.
This field indicates the property domain. If it does not appear it means that the property domain can be any class (owl:thing
).
This field denotes the property range. The range of a Datatype property is expressed in terms of an XML Schema datatype [XMLSCHEMA-2] or as a datarange, which enumerates the list of allowed property values. The range of an Object property is a list of classes. When the range does not appear it means that it can be anything.
This field contains a list of all those ontology properties for which the described property is
a subproperty (rdfs:subPropertyOf
axiom).
This field contains a list of all those ontology properties defined as a subproperty of (rdfs:subPropertyOf
axiom) the described property.
This field is a list that represents the class membership of the instance.
This field is composed by a list that represents the property values (represented as RDF Typed Literals) that must have the described instance.
The disjointness between classes is detailed in specific sections. For compactness reasons the syntax used is the DisjointClasses
axiom which allows to define sets of classes which are pairwise disjoint.
All the normative instances defined by this specification are pairwise disjoint.
This section is normative.
The ontology is formally specified in OWL [OWL]. The documentation of the different ontology terms has been automatically generated from the OWL file.
The ontology conforms to the OWL-DL expressivity. This allows it to be used within appropriately written reasoning systems.
This section is normative.
The ontology URI is http://www.w3.org/2007/uwa/context/deliveryContext.owl
.
This section is normative.
The table below describes the different namespace URIs defined by the Ontology. Namespaces allow to create groups of terms.
Namespace URI | Purpose |
---|---|
http://www.w3.org/2007/uwa/context/common.owl# |
The Namespace for General Purpose terms |
http://www.w3.org/2007/uwa/context/deliveryContext.owl# |
The Namespace for the Main Delivery Context terms |
http://www.w3.org/2007/uwa/context/hardware.owl# |
Used for Hardware related terms |
http://www.w3.org/2007/uwa/context/java.owl# |
Used for Java related terms |
http://www.w3.org/2007/uwa/context/location.owl# |
Used for Location terms |
http://www.w3.org/2007/uwa/context/network.owl# |
Used for Network terms |
http://www.w3.org/2007/uwa/context/push.owl# |
Used for Push Technology terms |
http://www.w3.org/2007/uwa/context/software.owl# |
Used for terms related to the software facets of the Delivery Context |
http://www.w3.org/2007/uwa/context/web.owl# |
The Namespace for terms devoted to Web Technologies |
This section is normative.
For modularity reasons, the Ontology has been splitted into the following groups of terms:
This section is informative.
A number of properties in the Ontology represent physical magnitudes. The same magnitude, for instance "length", can be measured using different units ("meters", "inches", "feet", "milimeters", etc), yielding to different numeric values depending on the unit used. However, from a conceptual point of view, all of these values are (or should be) actually equivalent.
RDF nor OWL supports to tag a literal value with its measurement unit. In other words, RDF literal nodes can represent discrete numeric values, such as "10" or "9.81", but a literal node does not capture the unit used to express the value. On the other hand, the problem of ontological modelling of measurement units is still open to debate and goes beyond the scope of this specification. For example, the [MUO Ontology] is a recent proposal for modelling measurement units using OWL.
In this version of the Ontology, each Property that represents a magnitude has to be expressed normatively in a single unit. This solution is simple and at the same time maximizes interoperability. However, it is also recognized that this approach might not be suitable in all scenarios, due to both practical (some scales are more conveniently captured using certain units) and cultural reasons. Therefore, it is expected that, once a Measurement Units Ontology is widely adopted (and standardized), future versions of this specification will allow to represent magnitudes using different units.
This section is informative.
Only a minimum set of instances has been declared as normative in this specification. This has been done for simplicity and maintainability reasons. On the other hand it is important to remark that Vocabularies based on the Ontology may define their own normative instances for representing specific values within their respective domains. For example, the [DDR Core Vocabulary] enumerates different instances for image formats or markup languages.
Nonetheless, the main OWL file (distributed as a companion resource), contains a number of utility instances that can come in handy for Ontology users or implementors. Instances for character sets, MIME Types, network technologies and formats, among others, are included.
In addition, example instances (under the http://www.example.org
namespace) are also distributed with the only purpose of illustrating how the Ontology works in practice.
This section is normative.
A conforming implementation of this Recommendation must implement all the normative sections of this document.
This section is informative.
To improve the readability of the specification a Class Hierarchy Summary has been automatically generated from the ontology itself.
This section is informative.
A graphical representation of the Datatype Property Hierarchy and the Object Property Hierarchy has been automatically generated from the Ontology itself.
This section is informative.
A summary of changes has been created in order to enumerate:
The editors wish to acknowledge the contributions of members of the UWA WG.
The editors wish to acknowledge the specific written contributions of: