- From: Holger Knublauch <holger@topquadrant.com>
- Date: Thu, 28 Apr 2016 17:13:57 +1000
- To: public-data-shapes-wg@w3.org
(The old proposal was based on single-occurrence assumption, which is now outdated). My actual preference is to delete sh:directType altogether. It doesn't interact well with inferencing anyway, and a simple work-around is to use sh:valueShape on rdf:type with sh:hasValue ?directType. Holger On 28/04/2016 17:09, Peter F. Patel-Schneider wrote: > This would have the effect of disallowing repeated sh:class so I think that > this would be a step backward. > > Even without this problem the proposal just adds a hard-to-describe and > hard-to-use optional parameter. I don't see this as an advance. > > peter > > > On 02/28/2016 03:29 PM, RDF Data Shapes Working Group Issue Tracker wrote: >> shapes-ISSUE-123 (DirectType syntax): Shall we unify the syntax of sh:directType and sh:class? [SHACL - Core] >> >> http://www.w3.org/2014/data-shapes/track/issues/123 >> >> Raised by: Holger Knublauch >> On product: SHACL - Core >> >> The spec currently has sh:directType as a way to limit values to have the specified rdf:type only. In contrast to sh:class this will not walk into subclasses of that class. >> >> One issue here is that we currently have sh:classIn (for multiple classes) but no sh:directTypeIn. >> >> Another issue is that the distinction between sh:class and sh:directType is fairly small, and basically meaningless if inferencing has been activated. >> >> I think we should consider changing the syntax so that it becomes >> >> ex:MyShape >> sh:property [ >> sh:predicate ex:myProperty ; >> sh:class ex:Person ; >> sh:excludeSubclasses true ; >> ] . >> >> The sh:excludeSubclasses would serve as a flag to not walk into subclasses. It would also work for sh:classIn, solving the first issue without introducing yet another core construct. >> >> >>
Received on Thursday, 28 April 2016 07:14:30 UTC