[oslc-core] Expressing oslc:valueType and/or oslc:range within RDFS

Steve K Speicher sspeiche at us.ibm.com
Wed May 16 09:51:23 EDT 2012


In thinking about best to define our vocabularies in a reusable way across 
other domains within OSLC and beyond, I think it would be good to be able 
to define each vocabulary term as:
Predicate QName -- Value Type QName -- Meaningful description string -- 
Some indication of its maturity [stable | learning | proposed]
It would also be desirable to use a normative way to express these 
vocabularies with RDF Schema/OWL or OSLC Resource Shapes. Then derive our 
human-readable versions from them (like we do today) and provide 
scenario-specific constraints such as read-only and occurs.

Take for example what we have in Core Common Properties [1] and Linked 
Data Basic Profile [2], it follows this pattern mostly.  With [1] we have 
some extra details and with [2] we possibly lump value types within the 
Range heading, implying rdfs:range perhaps wrongly.

It appears that RDFS doesn't provide a great way to indicate "Value Type 
QName" and need to determine if OWL plays a role here.  The usage of 
rdfs:range is limited to rdfs:Classes, so things like xsd:String are not a 
rdfs:Class.
So to better "explain" the common or expected value type, I'm suggesting 
we just reuse oslc:valueType within our RDFSs.  The valid choices for 
oslc:valueType will be same as defined in current Core V2 spec + 
rdf:Resource.
Additionally, we would create a predicate to indicate the term's maturity 
or use a recommended one.

Any feedback on this approach?  Suggestions on a better mechanism?

I looked around [3] for some best practices on this and appears to be a 
bit spotty on the usage, other than just simply a local defined rdfs:range 
object or using rdfs:Literal.

[1] - http://open-services.net/bin/view/Main/OSLCCoreSpecAppendixA
[2] - http://www.w3.org/Submission/ldbp/#bpr-prop
[3] - http://dublincore.org/schemas/rdfs/

Thanks,
Steve Speicher | IBM Rational Software | (919) 254-0645





More information about the Oslc-Core mailing list