- From: Vassilis Christophides <christop@ics.forth.gr>
- Date: Mon, 17 Feb 2003 18:38:26 +0200 (EET)
- To: www-rdf-comments@w3.org
Dear all
I am sending you this mail to record FORTH comments w.r.t the RDF/S
specs. Our objections concerns the following aspects:
(a) RDF/S Metaclasses & Abstraction Layers
(b) RDF/S Properties Instantiation
(c) RDF/S Properties Domain/Range
(d) RDF/S Datatyping
(e) RDF/S Class Cycles
In the sequel you can find a section from our last journal publication
summarizing our critic w.r.t. the current RDF/S specs.
Best Regards
Vassilis
-------------------------------------------------------------------------
Abstraction Layers
In RDF/S and recently proposed RDF Semantics, the distinction of
abstraction layers (data, schema, metaschema) is not explicitly
stated. Even though these specifications do not assume the existence
of abstraction layers, they do not prohibit them. Thus, a class may
have instances from different layers, like other classes, properties
or resource URIs. Unlike well-known knowledge representation languages
like UML or Telos, all RDF/S information (i.e., tokens, classes and
metaclasses) is uniformly represented in the form of a graph. On the
other hand, in DAML+OIL and OWL, the metaschema is fixed and they do
not allow its extension with user-defined metaclasses (although the
RDF/S root metaclasses, rdfs:Class and rdf:Property, are refined to
define the DAML+OIL metamodel). As indicated in
http://139.91.183.30:9090/RDF/publications/iswc02.pdf, the above
flexibility may cause semantic inconsistency problems to application
developers. The RQL type system makes a clear distinction of the
different RDF/S abstraction layers while it provides appropriate
interpretation functions to pass from one layer to another.
Instantiation of properties
Furthermore, although the RDF/S specification claims that properties
are first-class citizens, properties are not treated as equally as
classes. In RDF/S, both a metaclass of classes and a metaclass of
properties is a class, in contrast to Telos, where a metaclass of
individuals is a class, but a metaclass of properties (metaproperty)
is a property. Hence, while in Telos a metaproperty can have domain
and range, in the RDF/S model it cannot. Furthermore, at the data
layer, a property cannot be of type property, as in the case of
resources and classes. This is attributed to the fact that the
rdf:type property is applicable only for classes and RDF/S does not
provide us with an instantiation mechanism for properties at the data
layer. The current version of the RQL data model preserves this kind
of asymmetry in the manipulation of properties.
Properties domain/range
Regarding the domain and range of properties, the RQL data model
enforces the constraint that the domain and range of a property must
always be defined and be unique. This constraint is opposed to the RDF
Semantics, which permits an optional declaration of multiple domains
and ranges, while considering a conjunctive (i.e., intersection)
semantics on endpoint classes of properties. However, a property with
undefined domain/range may have as values both resources and
literals. For instance, in the example of
http://139.91.183.30:9090/RDF/VRP/Examples/demo/rdf_graph.gif, if the
property technique has an undefined range, then the token
oil-on-canvas may be interpreted both as a string and a resource
URI. Since the intersection of the rdfs:Class and rdfs:Literal is
empty (i.e., the sets of resource URIs and literals), this freedom
lead to semantic inconsistencies: resources should be uniquely
identified by their URIs while literals by their values. Otherwise,
changing the literal value oil-on-canvas to aquarelle implies that all
properties with value oil-on-canvas will be updated with aquarelle as
a new value. Moreover, unlike the RQL data model, RDF Semantics
introduce rules to infer that the source node of a property is of type
domain and the target node is of type range. For instance, if a title
is attributed to &r2 then this resource will be automatically
classified under all the classes declared in the domain of title
(i.e., intersection semantics). However, classifying &r2 as Painting
and/or ExtResource should be under the entire responsibility of
application developers. In addition, in the above specifications,
specialized properties do not preserve set inclusion semantics of
their domain and range. For example, the subproperty sculpts of
creates may have as domain (range) a superclass of Artist
(Artifact). The semantics of properties become completely unclear when
subproperties are defined with multiple domains and ranges. We believe
that such representation flexibility combined with the previous
inference rules (so-called generative interpretation) impose serious
modeling and scalability limitations for real-scale Semantic Web
applications especially when numerous namespaces of interconnected
schemas are used (e.g., in semantic P2P systems).
Datatyping
With the schema datatype one can specify what type of data will make
sense in the context of a particular property. With the new
rdf:datatype (specifying the instance datatype) one can distinguee
between, e.g., a string "123" and the integer 123. However, when new
datatype definitions will arise there are some open issues. How we
can compare different datatype definitions in order to validate RDF/S
schemas or resource descriptions? How the schema datatype of a
property can be compared with the instance datatype of a resource
description? Is it easy enough that people will understand it and
will use it in the right way? Why the schema datatype of a property
is not sufficient to interpret its data value?
Class Cycles
Finally, contrary to the new RDFS specification and the RDF Semantics,
the RQL formal model forbids the existence of cycles in the
subsumption hierarchies. Cycles are also allowed in DAML+OIL and
OWL. According to these specifications if a resource is declared to be
an instance of one classes in a subsumption cycle, then it will also
be an instance of all the other classes of the cycle. In other words,
all classes participating in the cycle will have the same
extent. Thus, cycles in a subsumption hierarchy are mainly used to
provide different names for the same (meta)class or property. The
rationale behind this modeling choice is the inference of class
equivalence. However, the introduction of cycles may considerably
affect the semantics of already created RDF/S schemas and resource
descriptions, especially when the subclass declarations are provided
in many, different namespaces. Once more, declaring versus inferring
class equivalences is more preferable for developers mastering the
semantics of their applications. Note that DAML+OIL and OWL also
support explicit mechanisms for the declaration of equivalent classes
or properties with the use of the properties equivalentTo,
samePropertyAs and sameClassAs. The RQL type system can easily capture
such property types having as domain and range metaclasses.
-------------------------------------------------------------------------
Received on Monday, 17 February 2003 11:45:20 UTC