Hi Håvard,
Seems like it was a (automated ?) translation of the ontology into the SHACL file
(rdfs:range => sh:class, which is perfectly fine for other scenarios,
but in this case the intended rule is more akin to sh:nodeKind sh:IRI or sh:IRIOrLiteral)
It’s been changed in the SHACL, but I’ll probably have to check other EU Core Vocabularies SHACLs
😊
Thanks for the heads-up on the reasoner, I think the console verify command doesn’t enable this by default,
so I’d better add a toggle or setting (and some documentation)
Best regards
Bart
From: rdf4j-dev-bounces@xxxxxxxxxxx <rdf4j-dev-bounces@xxxxxxxxxxx>
On Behalf Of Håvard M. Ottestad
Sent: dinsdag 18 juni 2019 17:46
To: rdf4j developer discussions <rdf4j-dev@xxxxxxxxxxx>
Subject: Re: [rdf4j-dev] SHACL and checking rdfs:Resource
Hi Bart,
It should match everything as you say. And that might even work if you use it with the RDFS reasoner. Which I have not tried!
There is some rudimentary support for rdfs as part of the shacl standard, namely support for rdfs:subClassOf. Which is implemented. I don’t know what they think about rdfs:Resource though.
In practice, right now, I think it would only match those subjects with explicit type for rdfs:Resource.
Hi,
A quick question about the SHACL validator in 3.0-snapshot, or SHACL In general
I’ve noticed that the new EU DCAT-AP 1.2 has a few shapes with a class constraint like
sh:path …
sh:class rdfs:Resource
sh…
which IMHO does not make sense (since rdfs:Resource is, well, anything…),
but the validator does seem to generate a violation if this class is not explicitly set.
So would it be appropriate to just ignore this rule in the validator ? Or am I missing something here ?
Best regards
Bart