ISSUE-192: Should filter shapes be of type sh:Shape? if not, then what?
Are filter shapes shapes?
Should filter shapes be of type sh:Shape? if not, then what?
- State:
- CLOSED
- Product:
- Raised by:
- Karen Coyle
- Opened on:
- 2016-10-19
- Description:
- Filter shapes are currently defined as a subclass of sh:Shape and are referred to in the document as shapes.
REVISION: Filter shapes are defined in the RDF as type sh:Constraint, but referred to in the document as type sh:Shape. Their range is sh:Shape.
In the abstract syntax, this looks like:
Shape := label:IRI|BNode, targets:Set[Target], filters:Set[Shape],
constraints:Set[Test]
Given that sh:filterShape has a range of sh:Shape, the logical conclusion here is that a filter can theoretically have targets, filters, and constraints.
However, the document says this in 2.1 Targets:
"Targets are ignored when a shape is processed as a referenced shape in parameters of shape-based constraint components (i.e. sh:shape), logical constraint components (i.e. sh:or), filter shapes (sh:filterShape) or, for SHACL Full, in the evaluation of the sh:hasShape SPARQL function."
I interpret this as meaning that range of sh:filterShape does not have the same qualities as the class sh:Shape. If this is the case then this doesn't follow the RDF definition of class membership.
Holger said this in an email:
"In general I do have concerns about the concept of filter shapes. They
are a nice-to-have syntactic short cut, esp to manipulate existing shape
definitions, but otherwise their effect can be achieved via sh:and
already. The thing that I dislike about filter shapes is that they
introduce a non-monotonic construct where subclasses can have fewer
constraints than superclasses. This makes the whole language quite
unpredictable."
https://lists.w3.org/Archives/Public/public-data-shapes-wg/2016Oct/0085.html
Karen suggested that filters could be retained as their own "beast" by defining a new class (sh:Filter) type sh:Filter would take only constraints as an object.
https://lists.w3.org/Archives/Public/public-data-shapes-wg/2016Oct/0072.html
However, now that sh:Shape is a subclass of sh:Constraint, the range of sh:Constraint is pretty much everything, so there isn't a class that can be used in a more narrow sense.
Irene said:
"<In terms of predictability, having a filter shape able to include
shapes, targets, and filters is less predictable than having a filter
constraint that cannot also have shapes, targets and filters. One avoid
the potential for a kind of infinite churning of shapes within shapes
within shapes.>"
https://lists.w3.org/Archives/Public/public-data-shapes-wg/2016Oct/0082.html - Related Actions Items:
- No related actions
- Related emails:
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from holger@topquadrant.com on 2016-11-08)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from kcoyle@kcoyle.net on 2016-11-07)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from holger@topquadrant.com on 2016-11-07)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from kcoyle@kcoyle.net on 2016-11-05)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from holger@topquadrant.com on 2016-11-04)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from kcoyle@kcoyle.net on 2016-11-03)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from holger@topquadrant.com on 2016-11-03)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from holger@topquadrant.com on 2016-11-03)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from kcoyle@kcoyle.net on 2016-11-02)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from kcoyle@kcoyle.net on 2016-11-02)
- shapes-ACTION-45: Propose text for issue-192 (from sysbot+tracker@w3.org on 2016-11-02)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from irene@topquadrant.com on 2016-10-28)
- Re: shapes-ISSUE-192 (Are filters shapes?) - final questions (from kcoyle@kcoyle.net on 2016-10-28)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from kcoyle@kcoyle.net on 2016-10-28)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from irene@topquadrant.com on 2016-10-26)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from kcoyle@kcoyle.net on 2016-10-26)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from irene@topquadrant.com on 2016-10-26)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from holger@topquadrant.com on 2016-10-26)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from kcoyle@kcoyle.net on 2016-10-25)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from holger@topquadrant.com on 2016-10-25)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from kcoyle@kcoyle.net on 2016-10-24)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from kontokostas@informatik.uni-leipzig.de on 2016-10-21)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from holger@topquadrant.com on 2016-10-21)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from kcoyle@kcoyle.net on 2016-10-20)
- Re: shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from holger@topquadrant.com on 2016-10-20)
- shapes-ISSUE-192 (Are focus nodes shapes?): Should focus nodes be of type sh:Shape? if not, then what? (from sysbot+tracker@w3.org on 2016-10-19)
Related notes:
RESOLUTION: Close ISSUE-185 and ISSUE-192 as now irrelevant
See https://www.w3.org/2016/11/16-shapes-minutes.html#resolution04
Display change log