W3C home > Mailing lists > Public > public-rdf-shapes@w3.org > July 2014

Re: AW: Thoughts on validation requirements

From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
Date: Mon, 28 Jul 2014 07:54:48 -0700
Message-ID: <53D66438.6010602@gmail.com>
To: Eric Prud'hommeaux <eric@w3.org>
CC: public-rdf-shapes@w3.org, Dimitris Kontokostas <kontokostas@informatik.uni-leipzig.de>, "Bosch, Thomas" <Thomas.Bosch@gesis.org>
On 07/28/2014 02:20 AM, Eric Prud'hommeaux wrote:
> On Jul 28, 2014 12:08 AM, "Peter F. Patel-Schneider" <pfpschneider@gmail.com>
> wrote:
>>
>> On 07/27/2014 02:36 AM, Bosch, Thomas wrote:
>>>
>>> Hi Dimitris
>>>
>> [...]
>>
>>> Regarding ShEx:
>>>
>>> - I am also unconfortable with the un-typed validation but I also see
> the need
>>> to support it. Unless of course RDF somewhere specifies that every
> resource
>>> MUST have a rdf:type. This however should not be the primary focus of
> ShEx
>>> since it is not the common case.
>>
>>
>> [...]
>>
>>
>> I'm still trying to figure out how ShEx is supposed to be used for
> validation.  I could make some guesses, but I think that it would be better
> for someone how was involved with ShEx to tell me.
>
> I'm guessing here from your exploration of ShEx that you see how one
> can verify a node in an instance graph against a start rule in a
> schema but you are unclear on why and when one would want to.

Well, I can see that this is something that could be part of validation, but I 
don't see how this can be used as the sole basis of validation.

> My
> guess might be wrong so I'll just describe a use case at a high level
> and ask wait for you to ask specific questions.
>
> The XML world topically uses XML Schema and RelaxNG to communicate
> structural constraints which apply at a particular point in a
> process. A good example is WSDL which associates a service with a
> particular schema. This is used to generate code and validate the
> exchanged messages. LDP is a good analog of this in RDF-land. Resource
> Shapes uses oslc:resourceShape to tie an LDP service to a schema
> describing what graph shapes that service works with.
> <http://www.w3.org/Submission/2014/SUBM-shapes-20140211/#resourceShape>
> The ShEx semantics are an attempt to formalize the apparent behavior
> of Resource Shapes to clarify, e.g. verification WRT a value set
> <http://www.w3.org/mid/53C917E6.7020701@gmail.com>.

I can see how ShEx might be a specification of this.

> I may not have answered your question, but perhaps we can work from here.

I don't think that I can work from there to RDF validation in general.

XML is very, very different from RDF in so many ways.  In XML, one expects 
that a message/document contains a single something and that the consumer will 
work on that something.  This makes validation the process of determining 
whether that something meets some constraint.  An RDF document, on the other 
hand, almost invariably contains multiple somethings, very often not arranged 
in a tree, and sometimes even without any connection between them.  In RDF it 
is generally permissable to have any sort of information, whereas XML 
information is generally required to fit into what is expected.

Validation then should work differently in RDF than in XML.  My view of RDF 
validation is determining whether the instances of a type (not necessarily 
explicitly signalled by an rdf:type link) meet some constraint, and that RDF 
validation generally involves multiple types, often unrelated types.  I don't 
see how ShEx can do this, and thus my questions as to how ShEx can do RDF 
validation.


peter
Received on Monday, 28 July 2014 14:55:20 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:02:39 UTC