Re: Shapes - sub-classes / sub-properties

In my opinion it is better to separate the tasks of a reasoner and the
tasks of a shape checking service. A reasoner takes a graph and inserts
more triples in the graph, while a shape checking service takes a snapshot
of a graph and checks its shape. The snapshot could be taken before the
reasoning stage or after.

I think that mixing the semantics of both can add more complexity to the
shape cheking service than necessary. As I previously said, the goal of
Shape Expressions is to be a simple language that can describe and validate
the shape of RDF graphs having RDF graphs as the domain of discourse,
instead of the domain concepts that are the domain of discourse of

In my opinion, this simplicity is a good design choice with a lot of
potential. Of course, this is not to say that it will cover all the use
cases of RDF validation. But most of those use cases could be covered in
combination with the Shape Expressions language.

Best regards, Jose Labra

On Wed, Jul 16, 2014 at 11:30 PM, Simon Spero <> wrote:

> How would you compare the semantics of this to those of ICV?
> Thanks,
> Simon
> On Wed, Jul 16, 2014 at 10:12 AM, Jose Emilio Labra Gayo <
>> wrote:
>> If I understand your question, I think what you are asking is out of the
>> current ShEx scope but it can be handled by other tools or it could be
>> added to ShEx processors also.
>> I mean, ShEx just checks the shape of an RDF graph...that graph can be
>> the original graph or it can be the result of applying a reasoner to the
>> original graph, in which case, it would check the original graph plus the
>> inferred triples.
>> An implementation of ShEx could do RDF Schema or OWL inference before
>> applying ShEx so it could check the shape of the inferred graph instead of
>> the original one. At this moment, I didn't incorporate it in Shexcala but
>> it would not be difficult to add a flag to do it.
>> Best regards, Jose Labra
>> On Wed, Jul 16, 2014 at 3:38 PM, Dimitris Kontokostas <
>>> wrote:
>>> Hi all,
>>> I noticed that at the moment you do not handle sub-classes &
>>> sub-properties.
>>> In a previous thread you mentioned that ShEx want to stand somewhere
>>> like one step above syntactic validation so is this something out of the
>>> ShEx scope?
>>> This can be easily achieved with SPARQL1.1 and property paths - when the
>>> shape is evaluated in SPARQL (to be clear).
>>> However, it needs the schema to get the relations.
>>> Ideally this could be enabled by default in ShEx and a special directive
>>> could point to the schema(s)
>>> Or a special notation could mark if we want to match strictly <Issue> or
>>> any subclass
>>> such as: <CodingIssue> a owl:Class; rdfs:subClassOf <Issue> .
>>> Any thoughts, comments on this?
>>> Best,
>>> Dimtiris
>>> --
>>> Dimitris Kontokostas
>>> Department of Computer Science, University of Leipzig
>>> Research Group:
>>> Homepage:
>> --
>> Saludos, Labra

Saludos, Labra

Received on Thursday, 17 July 2014 02:46:05 UTC