Interlinked shapes (was: Shapes vs Classes (in LDOM))

Thanks for your examples. I will create separate email sub-threads for 
the specific problems that you desribe.

On 1/24/15, 3:53 PM, Jose Emilio Labra Gayo wrote:
> 1.- It is not clear to me if you can represent inter-linked shapes? As 
> an example, you could define "Course" and "Student" where a Course 
> shape contains a property :student whose values must have the Shape 
> Student, and a Student could contain a property :course whose nodes 
> have the shape of Course. I think this is similar to Peter's example 
> of recursive shapes.

Why can't you just make them classes?

ex:Course
     a rdfs:Class ;
     rdfs:subClassOf rdfs:Resource ;
     ldom:property [
         ldom:predicate ex:student ;
         ldom:valueType ex:Student ;
     ] .

ex:Student
     a rdfs:Class ;
     rdfs:subClassOf rdfs:Resource ;
     ldom:property [
         ldom:predicate ex:course ;
         ldom:valueType ex:Course ;
     ] .

I must be missing something...

Perhaps you meant that there is an inverse property relationship here? 
Then, it could become

ex:Student
     a rdfs:Class ;
     rdfs:subClassOf rdfs:Resource ;
     ldom:inverseProperty [
         ldom:predicate ex:student ;
         ldom:valueType ex:Course ;
         rdfs:label "course" ;
     ] .

Holger

Received on Saturday, 24 January 2015 08:52:43 UTC