You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jena.apache.org by Andy Seaborne <an...@apache.org> on 2020/07/21 08:29:31 UTC

Re: SHACL-C

The grammar does not have words

'order', 'group', 'description', 'name', 'defaultValue'

in the propertyParam or nodeParam rules

So you can't concat the sh namespace with the token string.


propertyParam       :

'deactivated' | 'severity' | 'message' |
'class' | 'datatype' | 'nodeKind' |
'minExclusive' | 'minInclusive' | 'maxExclusive' | 'maxInclusive' |
'minLength' | 'maxLength' | 'pattern' | 'flags' | 'languageIn' | 
'uniqueLang' |
'equals' | 'disjoint' | 'lessThan' | 'lessThanOrEquals' |
'qualifiedValueShape' | 'qualifiedMinCount' | 'qualifiedMaxCount' | 
'qualifiedValueShapesDisjoint' |
'closed' | 'ignoredProperties' | 'hasValue' | 'in' ;

     Andy

On 20/07/2020 23:34, Holger Knublauch wrote:
> Hi Andy,
> 
> not quite sure what you mean: is the spec unclear, or does it have an 
> error? If yes, what would be better wording?
> 
> Thanks,
> Holger
> 
> 
> On 20/07/2020 19:03, Andy Seaborne wrote:
>>
>>
>> On 19/07/2020 23:21, Holger Knublauch wrote:
>>> On 19/07/2020 19:53, Andy Seaborne wrote:
>>>
>>>> Hi Chris,
>>>>
>>>> Oddly, sh:group/sh:order aren't in SHACLC - they look like they got 
>>>> overlooked as they fit is quite naturally into the grammar. Maybe 
>>>> the WG focus was validation and these aren't "validation".
>>>
>>> All terms from the sh: namespace are supported at property shapes and 
>>> node shapes, see
>>>
>>> https://w3c.github.io/shacl/shacl-compact-syntax/#rule-propertyValue
>>
>> "concatenating the sh namespace with the string value of /propertyParam/"
>>
>> ("string value" taken to mean the string that is the token)
>>
>> Today, 2020-07-20, the words aren't in the propertyParam grammar rule.
>>
>>     Andy

Re: SHACL-C

Posted by Andy Seaborne <an...@apache.org>.

On 21/07/2020 10:07, Holger Knublauch wrote:
> 
> On 21/07/2020 18:29, Andy Seaborne wrote:
>> The grammar does not have words
>>
>> 'order', 'group', 'description', 'name', 'defaultValue'
>>
>> in the propertyParam or nodeParam rules
>>
>> So you can't concat the sh namespace with the token string.
> 
> Thanks. I have mixed this up and thought I had generalized that rule. 
> Should have checked :)
> 
> Another missing term is sh:defaultValue. So how do people feel about 
> adding that line to the grammar? Sounds like an easy fix.
> 
> Further we could theoretically add sh:name and (less attractive) 
> sh:description.
> 
> And shall we add subClassOf?

The form

 >> shapeClass ex:Company rdfs:subClassOf ex:Organization {

does not cover cases I am coming across.

My ideal is all description in one file. Modularising using IMPORT for 
this is not nice. The domain is SHACLC shapes but also RDFS sub*of.

That means a general RDFS subClassOf declaration, not specific to 
implicitClass shapes. They (implicitClass shapes) are a pattern in 
SHACL, not fundamental to SHACL.

The class may not be a shape and it would apply for "class=" and throughout.

Having subClassOf and subPropertyOf in the same file as SHACLC makes for 
as single place for a "schema".

CLASS ex:Company .
CLASS ex:Company subClassOf ex:Organization .

(the DOTS are unnecessary - like PREFIX).

The shapeClass-subClassOf might be useful as a short cut.

     Andy

> 
> Holger
> 
> 
>>
>>
>> propertyParam       :
>>
>> 'deactivated' | 'severity' | 'message' |
>> 'class' | 'datatype' | 'nodeKind' |
>> 'minExclusive' | 'minInclusive' | 'maxExclusive' | 'maxInclusive' |
>> 'minLength' | 'maxLength' | 'pattern' | 'flags' | 'languageIn' | 
>> 'uniqueLang' |
>> 'equals' | 'disjoint' | 'lessThan' | 'lessThanOrEquals' |
>> 'qualifiedValueShape' | 'qualifiedMinCount' | 'qualifiedMaxCount' | 
>> 'qualifiedValueShapesDisjoint' |
>> 'closed' | 'ignoredProperties' | 'hasValue' | 'in' ;
>>
>>     Andy
>>
>> On 20/07/2020 23:34, Holger Knublauch wrote:
>>> Hi Andy,
>>>
>>> not quite sure what you mean: is the spec unclear, or does it have an 
>>> error? If yes, what would be better wording?
>>>
>>> Thanks,
>>> Holger
>>>
>>>
>>> On 20/07/2020 19:03, Andy Seaborne wrote:
>>>>
>>>>
>>>> On 19/07/2020 23:21, Holger Knublauch wrote:
>>>>> On 19/07/2020 19:53, Andy Seaborne wrote:
>>>>>
>>>>>> Hi Chris,
>>>>>>
>>>>>> Oddly, sh:group/sh:order aren't in SHACLC - they look like they 
>>>>>> got overlooked as they fit is quite naturally into the grammar. 
>>>>>> Maybe the WG focus was validation and these aren't "validation".
>>>>>
>>>>> All terms from the sh: namespace are supported at property shapes 
>>>>> and node shapes, see
>>>>>
>>>>> https://w3c.github.io/shacl/shacl-compact-syntax/#rule-propertyValue
>>>>
>>>> "concatenating the sh namespace with the string value of 
>>>> /propertyParam/"
>>>>
>>>> ("string value" taken to mean the string that is the token)
>>>>
>>>> Today, 2020-07-20, the words aren't in the propertyParam grammar rule.
>>>>
>>>>     Andy

Re: SHACL-C

Posted by Holger Knublauch <ho...@topquadrant.com>.
On 21/07/2020 18:29, Andy Seaborne wrote:
> The grammar does not have words
>
> 'order', 'group', 'description', 'name', 'defaultValue'
>
> in the propertyParam or nodeParam rules
>
> So you can't concat the sh namespace with the token string.

Thanks. I have mixed this up and thought I had generalized that rule. 
Should have checked :)

Another missing term is sh:defaultValue. So how do people feel about 
adding that line to the grammar? Sounds like an easy fix.

Further we could theoretically add sh:name and (less attractive) 
sh:description.

And shall we add subClassOf?

Holger


>
>
> propertyParam       :
>
> 'deactivated' | 'severity' | 'message' |
> 'class' | 'datatype' | 'nodeKind' |
> 'minExclusive' | 'minInclusive' | 'maxExclusive' | 'maxInclusive' |
> 'minLength' | 'maxLength' | 'pattern' | 'flags' | 'languageIn' | 
> 'uniqueLang' |
> 'equals' | 'disjoint' | 'lessThan' | 'lessThanOrEquals' |
> 'qualifiedValueShape' | 'qualifiedMinCount' | 'qualifiedMaxCount' | 
> 'qualifiedValueShapesDisjoint' |
> 'closed' | 'ignoredProperties' | 'hasValue' | 'in' ;
>
>     Andy
>
> On 20/07/2020 23:34, Holger Knublauch wrote:
>> Hi Andy,
>>
>> not quite sure what you mean: is the spec unclear, or does it have an 
>> error? If yes, what would be better wording?
>>
>> Thanks,
>> Holger
>>
>>
>> On 20/07/2020 19:03, Andy Seaborne wrote:
>>>
>>>
>>> On 19/07/2020 23:21, Holger Knublauch wrote:
>>>> On 19/07/2020 19:53, Andy Seaborne wrote:
>>>>
>>>>> Hi Chris,
>>>>>
>>>>> Oddly, sh:group/sh:order aren't in SHACLC - they look like they 
>>>>> got overlooked as they fit is quite naturally into the grammar. 
>>>>> Maybe the WG focus was validation and these aren't "validation".
>>>>
>>>> All terms from the sh: namespace are supported at property shapes 
>>>> and node shapes, see
>>>>
>>>> https://w3c.github.io/shacl/shacl-compact-syntax/#rule-propertyValue
>>>
>>> "concatenating the sh namespace with the string value of 
>>> /propertyParam/"
>>>
>>> ("string value" taken to mean the string that is the token)
>>>
>>> Today, 2020-07-20, the words aren't in the propertyParam grammar rule.
>>>
>>>     Andy