[oslc-core] Comments on OSLC Core Specification - DRAFT

Arthur Ryman ryman at ca.ibm.com
Fri Feb 26 10:56:53 EST 2010


Her are my comments on [1]:

Resources: 

The definition "Resource: A network data object or service that can be 
identified by a URI. Resources may be available in multiple 
representations (e.g. multiple languages, data formats, size, resolutions) 
or vary in other ways. (HTTP/1.1) " gives the HTTP view of a resource. 
However, this is not the same as the RDF view. In RDF a resource is 
anything. Some resources are information resources on the network. Other 
resource are real world objects, e.g. the person Dave Johnson, or the 
number 42. RDF resources may be identified either by URI references or 
literals, and a given resource may have many identifiers. I think it's 
important to explain this since it could cause confusion when we talk 
about data models (it confused me for a long time).

Query: 

We should expand the notion of query to apply to any resource, not just 
special Query resources that have type oslc:Query. We should be able to 
append query parameters on to any resource and GET a modified 
representation. If the resource has members then we can search for members 
that satisfy conditions, and get some data about the members of the result 
set.

OSLC Resource and Defined Resource:

We should pick better terms to distinguish between types and instances. 
e.g.: An OSLC Resource is an instance of an OSLC Resource Type. An OSLC 
Defined Resource is an OSLC Resource Type. Or is an OSLC Resource a type 
defined in a non-core spec?

OSLC Defined Resources
 The relation between QName and Type URI  is that the QName is the compact 
form of the Type URI, e.g. concatenating the namespace and local name of 
the QName gives the Type URI (this is part of RDF).

URI Query Parameters 
The oslc.properties query parameter is conceptual similar to the other 
Query query parameters and we should treat them the same. Also, we support 
inlining properties and nested property names.

RDF Properties 

rdf:about is not really a property. It defines the subject of triples who 
predicates and others follow in the XML. 

Rules for forming an RDF/XML representation 
The following rule is incorrect: If the property value is a URI, then put 
the URI In the rdf:about attribute of the XML element  
The rdf:resource attribute should be used here since that is used to 
specify the object of a triple.

OSLC Service Resource 
The example should be change to indicate that the URIs are not just string 
values, i.e. they are resources:

<oslc:Service rdf:about="http://example.com/services">
   <dc:title>OSLC Service: Change Management</dc:title>
   <oslc:type rdf:resource="http://open-services.net/xmlns/" />
   <oslc:creationResource rdf:resource="http://example.com/create-cr" />
   <oslc:queryResource rdf:resource="http://example.com/create-cr" />
   <oslc:resourceShapeResource 
rdf:resource="http://example.com/defectShape" />
   <oslc:resourceShapeResource rdf:resource="http://example.com/taskShape" 
/>
   <oslc:resourceShapeResource 
rdf:resource="http://example.com/improvementShape" />
   <!-- other properties here... -->
</oslc:Service> 

OSLC Query Resource 

The use of oslc:Query to represent the result of a query that returns 
multiple resources of possibly different types is essentially the same as 
the rdf:RDF element so we should use that since it's part of RDF/XML. We 
could put <oslc:Query> instead <rdf:RDF> to include information about the 
query, e.g. the query URL, the timestamp, the next page, etc.

HTML

We should include HTML and XHTML as useful, optional, representation 
formats and recommend the use of RDFa to include the same machine readable 
triples as would be found in RDF/XML.

[1] http://open-services.net/bin/view/Main/OSLCCoreSpecDRAFT
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://open-services.net/pipermail/oslc-core_open-services.net/attachments/20100226/00367188/attachment-0003.html>


More information about the Oslc-Core mailing list