On 2021-10-23 9:54 am, Steve Ray wrote:
I now understand.

On a related point, is it true that the only owl uses that persist in SHACL implementations are the two relating to managing graphs:

owl:imports (if you want to import other graphs), and
This is the only use of OWL vocabulary in SHACL - for resolving owl:imports and sh:prefix declarations.
X a owl:Ontology (if you want to name a graph so that you can do things like imports)?

This type triple is not necessary. You only need to use a URI that is equivalent to the named graph, e.g.

<http://example.org/myShapesGraph> owl:imports <http://datashapes.org/dash>

is sufficient. The owl:Ontology type is typically given though as a helpful annotation, e.g. to inform form builders.


Do you endorse the use of owl property declarations, e.g. Y a owl:ObjectProperty, etc., or do you recommend enforcing the implications of those with SHACL shapes? If the latter, are there SHACL definitions for those?

There is no need for owl:ObjectProperty or any other global property triples, but they don't do harm either. A pure SHACL implementation takes a rather object-oriented worldview where all property declarations are attached to classes/shapes, and do not really live on their own.

Holger



Steve




On Fri, Oct 22, 2021 at 4:12 PM Holger Knublauch <[email protected]> wrote:



    On 23 Oct 2021, at 3:50 am, Steve Ray <[email protected]> wrote:

    Holger,

    Your final suggestion was the key! Who knew that we must declare
    owl:Class to be of type sh:NodeShape!
    I had a similar validation test for labelling all properties, and
    declaring rdf:Property as rdf:type sh:NodeShape fixed that one as
    well.
    Thank you so much for that subtle tip. If this is documented in
    the SHACL spec, I missed it. If it is not, I'll bet other people
    will bump into this problem.

    It’s mentioned here: https://www.w3.org/TR/shacl/#implicit-targetClass

    To validate instances of any class, either use sh:targetClass X or
    make X rdf:type rdfs:Class AND rdf:type sh:NodeShape.

    Holger



    Steve




    On Thu, Oct 21, 2021 at 6:18 PM Holger Knublauch
    <[email protected]> wrote:

        Hi Steve,

        it SHOULD work, but TBC has two validation buttons and only
        the green one includes the classes and properties:

        <3HjnsEUcNN3NjWZm.png>

        On 2021-10-22 8:09 am, Steve Ray wrote:
        I'm not understanding something about validating SHACL
        files. Normally I successfully use shapes and
        SPARQLConstraints to validate rdf instance files, but I'd
        also like to apply some constraints to our SHACL shape
        definitions themselves.

        For example, I'd like to ensure all our declared
        classes/Nodeshapes have an rdfs:label, so I wrote:

        owl:Class
        sh:property [
        sh:path rdfs:label ;
        sh:minCount 1 ;
        ] ;
        .

        On the above, please double-check that owl:Class rdf:type
        sh:NodeShape is also asserted.

        Holger


        I also tried
        1. Writing a SPARQLConstraint to do the same thing.
        2. Using the sh:targetClass method with an explicitly named
        shape.
        3. Using these with sh:NodeShape instead of owl:Class, since
        all my classes are also instances of sh:NodeShape.

        None produced any validation errors when I ran the TBC
        validator on a shapes file containing the definition of a
        class where I intentionally omitted an rdfs:label value.

        I know that the SHACL spec even has the shsh:ShapeShape
        specification, so I assume this kind of thing can be done.
        Is something blocking the validation error from showing up?
        Is it because rdfs:label is an annotation property?

        Steve


-- You received this message because you are subscribed to the
        Google Groups "TopBraid Suite Users" group.
        To unsubscribe from this group and stop receiving emails
        from it, send an email to
        [email protected].
        To view this discussion on the web visit
        
https://groups.google.com/d/msgid/topbraid-users/CAGUep87sNoHp7PQaJq9bVsODsOL7OY1Q-%2B9LBDooJtC1tBWBCQ%40mail.gmail.com
        
<https://groups.google.com/d/msgid/topbraid-users/CAGUep87sNoHp7PQaJq9bVsODsOL7OY1Q-%2B9LBDooJtC1tBWBCQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are subscribed to the
        Google Groups "TopBraid Suite Users" group.
        To unsubscribe from this group and stop receiving emails from
        it, send an email to [email protected].
        To view this discussion on the web visit
        
https://groups.google.com/d/msgid/topbraid-users/e3dba027-2908-89d8-c930-7abf03361868%40topquadrant.com
        
<https://groups.google.com/d/msgid/topbraid-users/e3dba027-2908-89d8-c930-7abf03361868%40topquadrant.com?utm_medium=email&utm_source=footer>.


-- You received this message because you are subscribed to the
    Google Groups "TopBraid Suite Users" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected].
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/topbraid-users/CAGUep851gHoMy%2BVCgYnTTSfXG54aoy16O9HxkH0j3BrsjtUFRA%40mail.gmail.com
    
<https://groups.google.com/d/msgid/topbraid-users/CAGUep851gHoMy%2BVCgYnTTSfXG54aoy16O9HxkH0j3BrsjtUFRA%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are subscribed to the Google
    Groups "TopBraid Suite Users" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected].
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/topbraid-users/441BC0AB-3266-45AE-B94E-52906C004FAB%40topquadrant.com
    
<https://groups.google.com/d/msgid/topbraid-users/441BC0AB-3266-45AE-B94E-52906C004FAB%40topquadrant.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups "TopBraid Suite Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/CAGUep84zfGuiY1cGyzpfY7ftv12wphNEY_N6pZc0pNociS0q2w%40mail.gmail.com <https://groups.google.com/d/msgid/topbraid-users/CAGUep84zfGuiY1cGyzpfY7ftv12wphNEY_N6pZc0pNociS0q2w%40mail.gmail.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups "TopBraid 
Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/topbraid-users/333a9135-b876-91a9-ed19-1635b204bbf4%40topquadrant.com.

Reply via email to