Re: ISSUE-87: Turtle file - SHACL vs RDFS vs OWL, or all?

All,

Good discussion. Holger only voted -0.5 on the straw poll and seems
willing to look at a concrete example vocabulary if someone produces
one. I will take that as an action for SHACL.

fyi, Here is the last vocabulary I wrote at IBM in Turtle [1] and HTML
[2]. These are served up with content negotiation when you dereference
the vocabulary IRI http://jazz.net/ns/process#.

The Turtle file is hand-written source. The HTML is generated from the
Turtle using Jena to convert the Turtle to non-abbreviated RDF/XML,
and then an XSLT to transform the RDF/XML to HTML. If we like this
general approach then I would re-implement it to fit in with ReSpec.
Probably convert the Turtle to JSON-LD and then generate the HTML
using JavaScript in a ReSpec plugin.

[1] https://jazz.net/wiki/pub/LinkedData/JazzProcessVocabulary/process-vocabulary.ttl
[2] https://jazz.net/wiki/bin/view/LinkedData/JazzProcessVocabulary

-- Arthur

On Wed, Nov 4, 2015 at 6:06 PM, Holger Knublauch <holger@topquadrant.com> wrote:
> FYI I have contacted (my former colleague) Matthew Horridge on the OWL
> API/Protege issues and will report back on his findings. As these issues
> appear to be general problems with the handling of RDFS files, I hope they
> can be addressed generically by their implementation. Regardless, we may
> still consider publishing an (alternative) OWL version of the SHACL
> namespace, to optimize the interaction with such tools. We all want to lower
> the barriers of adoption.
>
> Holger
>
>
>
> On 11/4/2015 6:30, Peter F. Patel-Schneider wrote:
>>
>> I agree that it is not exactly an OWL problem, but several OWL tools are
>> quite
>> expansive in what they can reasonably handle and it seems to me that
>> property
>> punning should be easy to handle even without typing statements.  I'm
>> trying
>> to see what can be done to improve the tools involved.
>>
>> I also do not understand the resistance to RDFS so I can't help you there.
>>
>> peter
>>
>>
>> On 11/03/2015 12:11 PM, Karen Coyle wrote:
>>>
>>> Peter, I actually do not see this as purely a OWL problem, nor do I think
>>> that
>>> the tools that function well with RDFS and OWL need to change. It would
>>> be
>>> convenient in many circumstances to have ranges, and perhaps also
>>> domains,
>>> defined for the properties in SHACL, since both humans and software do
>>> frequently make use of that information. Perhaps someone can explain the
>>> resistance against this?
>>>
>>> kc
>>>
>>> On 11/3/15 9:04 AM, Peter F. Patel-Schneider wrote:
>>>>
>>>> If you ask for
>>>>
>>>> https://github.com/TopQuadrant/shacl/blob/master/src/main/resources/etc/shacl.ttl
>>>>
>>>> without content negotiation you will get back an HTML document.  If you
>>>> ask
>>>> for this document in text/turtle, you get back a 406 error.  So it is
>>>> not
>>>> surprising that when you try to load the document into Protege there are
>>>> complaints.
>>>>
>>>> If you ask for
>>>>
>>>> https://raw.githubusercontent.com/TopQuadrant/shacl/master/src/main/resources/etc/shacl.ttl
>>>>
>>>> you get something that can be loaded into Protege.  However, there
>>>> appears to
>>>> be some problem with whatever is converting the document into OWL and
>>>> the
>>>> properties that are also individuals are not being handled nicely.
>>>>
>>>> Note that the document is not an OWL 2 DL document so the tools that are
>>>> loading it are trying to determine what changes are needed to turn it
>>>> into OWL
>>>> 2 DL.  It appears that one of these tools isn't doing something that it
>>>> seems
>>>> would be quite easy.
>>>>
>>>> peter
>>>>
>>>>
>>>> On 11/03/2015 07:47 AM, Karen Coyle wrote:
>>>>>
>>>>> I am able to load the file into Protege, but not directly from the IRI
>>>>> (which
>>>>> gives an error - probably some github thing). I can load a saved
>>>>> version.
>>>>> However, that saved version appears to lack all of the properties that
>>>>> are
>>>>> listed at the bottom of the ttl file -- and, of course, those are
>>>>> exactly what
>>>>> I am hoping to work with to create a SHACL document.
>>>>>
>>>>> I expected those properties to be treated as OWL annotation properties
>>>>> because
>>>>> they do not have domains or ranges defined. (That is what happens to
>>>>> Dublin
>>>>> Core 1.1 terms.) Instead, they are simply missing. This is clearly a
>>>>> "feature"
>>>>> of the Manchester API, but it seems to be one that could easily be
>>>>> avoided by
>>>>> adding ranges to those properties.
>>>>>
>>>>> kc
>>>>>
>>>>> On 11/2/15 10:10 PM, Holger Knublauch wrote:
>>>>>>
>>>>>> I had tried my latest version from
>>>>>>
>>>>>>
>>>>>> https://github.com/TopQuadrant/shacl/blob/master/src/main/resources/etc/shacl.ttl
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Holger
>>>>>>
>>>>>>
>>>>>> On 11/3/2015 15:24, Peter F. Patel-Schneider wrote:
>>>>>>>
>>>>>>> I'm not sure what file you are talking about?
>>>>>>>
>>>>>>> The SHACL Vocabulary description linked to from the WG Wiki home page
>>>>>>> is
>>>>>>>
>>>>>>> https://raw.githubusercontent.com/w3c/data-shapes/56429ef268a14e29586244ab944b310ea84cbf46/shacl/shacl.shacl.ttl
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> The file I get from this location does not have the string
>>>>>>> "AbstractResult" in
>>>>>>> it at all.
>>>>>>>
>>>>>>> peter
>>>>>>>
>>>>>>>
>>>>>>> On 11/02/2015 08:35 PM, Holger Knublauch wrote:
>>>>>>>>
>>>>>>>> On 11/3/2015 14:04, Peter F. Patel-Schneider wrote:
>>>>>>>>>
>>>>>>>>> I just loaded the file pointed at from the WG home page into
>>>>>>>>> Protege
>>>>>>>>> 5.0.0.
>>>>>>>>> No problems loading or classifying, but of course there isn't much
>>>>>>>>> that an OWL
>>>>>>>>> reasoner does with it.
>>>>>>>>>
>>>>>>>>> What part of RDF does the OWL API not support?
>>>>>>>>
>>>>>>>> To see some of the problems, re-save the shacl file with Protege.
>>>>>>>> Then compare
>>>>>>>> it with the original triples. There are all kinds of changes, e.g.
>>>>>>>> rdfs:Classes suddenly have become owl:Classes and
>>>>>>>> owl:NamedIndividual. Some
>>>>>>>> triples seem to have just disappeared (e.g.
>>>>>>>> sh:optionalWhenInherited,
>>>>>>>> sh:maxCount at sh:AbstractResult, the sh:constraint at sh:Argument).
>>>>>>>>
>>>>>>>> See the attached screenshot of an example diff.
>>>>>>>>
>>>>>>>> HTH
>>>>>>>> Holger
>>>>>>>>
>>>>>>
>>>>>>
>
>

Received on Thursday, 5 November 2015 16:51:11 UTC