Re: using Shape Expressions to validate RDF graphs

Another way to look at this is that the domain of shape expressions is RDF Graph.  Shape expressions have (almost) nothing to do with people, spouses, etc.  They make assertions about triples — the target of anything that appears as the subject of a triple with a predicate “spouse” will be the subject of another triple whose predicate is rdf:type and target is foaf:person.

While it would be useful if this were compatible with an OWL or other assertion about marriage being strictly being between humans (vs. humans and automobiles, for instance), ShEx is strictly about  the graph itself — not its interpretation.  It allows an external user to know what assumptions can be made about the contents — that every subject with rdf:type foaf:person will always be the subject of an rdf:name triple as well.


From: Jose Emilio Labra Gayo <jelabra@gmail.com<mailto:jelabra@gmail.com>>
Date: Friday, July 11, 2014 at 1:39 PM
To: "kcoyle@kcoyle.net<mailto:kcoyle@kcoyle.net>" <kcoyle@kcoyle.net<mailto:kcoyle@kcoyle.net>>
Cc: "public-rdf-shapes@w3.org<mailto:public-rdf-shapes@w3.org>" <public-rdf-shapes@w3.org<mailto:public-rdf-shapes@w3.org>>
Subject: Re: using Shape Expressions to validate RDF graphs
Resent-From: <public-rdf-shapes@w3.org<mailto:public-rdf-shapes@w3.org>>
Resent-Date: Friday, July 11, 2014 at 1:40 PM

On Fri, Jul 11, 2014 at 7:02 PM, Karen Coyle <kcoyle@kcoyle.net<mailto:kcoyle@kcoyle.net>> wrote:


On 7/11/14, 9:31 AM, Jose Emilio Labra Gayo wrote:
I mean, OWL and Shape Expressions have different goals...with OWL you
model an ontology of concepts, while with Shape Expressions you just
describe the shapes of RDF graphs.

Jose, do you see them as complementary, perhaps working together? In other words, is a solution needed that checks both OWL(-type) inferences AND the shapes of the graphs? (I'm trying to get at the overall scope of the need.)

Yes, definitely.

In my point of view, OWL is very good at semantic level while Shape Expressions are more suited for the syntactic level or data integration level.

Peter's example: "the spouse of every person is a person" seems for me more at the semantic or domain model level...and I would probably model it in OWL.

In practice, if you have information like:

:john :spouse :mary .

and the previous declaration in OWL, the system could infer that :mary is a Person and if there were some declarations saying that mary is not a person, the system would detect an inconsistency.

Apart from that, if you have a data portal about people, you may be interested to say that a resource has the shape of a Person and has some properties, like ":spouse", "foaf:name", etc. In this case, you are describing the RDF graph that you are publishing or that someone can consume from your data portal...

I think the motivations for declaring the Shape Expressions of a data portal are very pragmatic and I have found that they cover a need for RDF data publication, consumption and integration...but of course, they are complementary with having OWL ontologies.

Best regards, Jose Labra


kc

--
Karen Coyle
kcoyle@kcoyle.net<mailto:kcoyle@kcoyle.net> http://kcoyle.net
m: 1-510-435-8234<tel:1-510-435-8234>
skype: kcoylenet




--
Saludos, Labra

Received on Friday, 11 July 2014 20:08:01 UTC