- From: Holger Knublauch <holger@topquadrant.com>
- Date: Fri, 19 Jan 2024 11:05:23 +0100
- To: Robert David <9427084@gmail.com>
- Cc: Vladimir Alexiev <vladimir.alexiev@ontotext.com>, Public Shacl W3C <public-shacl@w3.org>
- Message-Id: <D63C7146-9476-4E96-937A-CAF6962AE31D@topquadrant.com>
> On 19 Jan 2024, at 10:05 am, Robert David <9427084@gmail.com> wrote:
>
> Hi everyone,
>
> thanks for the info. Having a report on positive results is really helpful in practice.
> Btw. are there any plans to update the W3C recommendation eventually?
No specific plans to update the recommendation and it would be a multi-year process. The previous WG is closed
and it would require a new working group. Meanwhile this CG is supposed to prepare the stage.
Occasionally there is discussion on that topic on https://discord.com/channels/911006583067144212/911017321005482044
But each time I ask who would like to contribute to a new W3C group, there is not enough enthusiasm.
Holger
>
> Best regards,
> Robert
>
>
> Am Do., 18. Jan. 2024 um 18:44 Uhr schrieb Holger Knublauch <holger@topquadrant.com <mailto:holger@topquadrant.com>>:
>>
>>
>>> On 18 Jan 2024, at 4:29 pm, Vladimir Alexiev <vladimir.alexiev@ontotext.com <mailto:vladimir.alexiev@ontotext.com>> wrote:
>>>
>>> sh:closed is local, i.e. per shape. It checks that a targeted node doesn't include unsanctioned props.
>>> I'm looking for ways to declare a globally closed schema, i.e. to catch untargeted nodes, i.e. that the KG doesn't include unsanctioned nodes.
>>>
>>> 1. I guess one can do it with SPARQL (SHACL advanced) by triggering off some fixed node.
>>> Here's a very expensive way to catch all nodes: select distinct ?s {?s ?p ?o}
>>> 2. It would be useful to "mark" all nodes visited during SHACL validation.
>>> - SHEX has a way to report positive results: https://shexspec.github.io/primer/ShExJ#validation
>>> - SHACL doesn't have a standard way to report positive results: https://www.w3.org/TR/shacl/#results-validation-result .
>>> But there is a note "SHACL implementations may use other SHACL subclasses of sh:AbstractResult, for example, to report successfully completed constraint checks or accumulated results."
>>> Say we "standardize" a new class eg dash:PositiveValidation
>>
>> Already exist:
>> dash:SuccessResult
>> a rdfs:Class ;
>> rdfs:comment "A result representing a successfully validated constraint." ;
>> rdfs:label "Success result" ;
>> rdfs:subClassOf sh:AbstractResult ;
>> .
>>
>>> Then one could look for nodes that don't appear in sh:ValidationResult.focusNode nor dash:PositiveValidation.focusNode
>>
>> Yes.
>>
>> There may also be different algorithms such as enumerating the allowed rdf:types which could be represented with a targeted constraint on rdf:type and a sh:in. This depends on what someone considers unsanctioned nodes.
>>
>> Holger
>>
>>
>>>
>>> All feedback is welcome!
>>
Received on Friday, 19 January 2024 10:05:41 UTC