On 2021-07-13 12:13 am, Tim Smith wrote:
Thanks Holger and Irene.  Perhaps I have been trying to stretch SHACL in ways it was not intended.  I had interpreted sh:name to represent the name of the path /in the context/ of the property shape.  If it is intended to universally be the name of the path, then we can just use the label of the property (assuming the path is not a property path).
Not exactly. The global label would be global across all classes and shapes, while sh:name is specific to the (surrounding) class. Furthermore, you don't even need any global property axioms in SHACL, and that's a good thing. No object-oriented modeling language for example has a notion of global property/field declarations either.
However, this does present some display issues when using multiple shapes against the same property.  Here is "Holding Company" in EDG using Holger's more efficient approach as shared above.  Now there are three declared properties (shapes), all shown as "owns".  I do think in the context of the property shape that is being displayed, we should have the cardinality displayed based on the shape.

image.png

Yes, on a branch for 7.1 I have implemented this (more useful) display:



On a broader note, I know my potential EDG users will never know the difference between properties and property shapes. e.g. What appears in the "declared properties" group are shapes.  Thus I have been trying to use shapes as a way to drive the UI, but maybe in a way that is contrary to the standard.  Let me briefly explain.

A very common ontological modeling use case is deciding what property to use.  I, and others, try to limit the number of properties by using "generic" properties that convey the correct semantics, e.g. the "owns" property in my example. However, this may be too generic for the user that is viewing or creating instances, especially when there are conditions on the set of objects. e.g. must be one Racing and one Movie company.  QVCs enable capturing the correct semantics.  In addition to capturing the semantics, in many cases I want to show the users what objects adhere to the semantics defined by each QVC, not simply a list of all things that are an object of "owns".

As I understand it today, the only solution is to create subproperties of df:owns and create property shapes for each new property.  I don't want to go down this path if at all possible since it will lead to property explosion where I'm creating a property for every "generic" property/class combination, e.g. df:ownsRacingCompany, df:ownsMovieCompany, etc...  I did this for a control system ontology and I ended up with nearly 1000 properties where all I really needed was edg:input and edg:output because I needed to be able to show the user the possible set of inputs and outputs and what was connected (or not) to each of them.  To me this was an example of the UI driving the model.

Anyway... I will explore other ways to achieve my objective.  Maybe some custom UI elements are warranted.

I am aware that other projects (esp in the engineering space) are using qualified value constraints like you intended to. We will improve tool support as described above. With that, what other obstacles would remain for you?

Having said this, "normal" properties will win in most cases. Simpler to define and faster to query (with "owns" you'd need FILTERs everywhere). So while you may need to define 1000 properties, you will now need to define 1000 QVC property shapes. Is this really an improvement?

Holger



Thanks for the always informative discussion,

Tim





On Fri, Jul 9, 2021 at 10:08 PM Irene Polikoff <ir...@topquadrant.com <mailto:ir...@topquadrant.com>> wrote:

    To add to what Holger said, this is the reason sh:name exists. If
    this was the label of the property shape, then there would be no
    need to define a new property. One could simply use rdfs:label -
    as Holger’s example shows.

    Sh:name was created because it is not the label of the resource
    that is the subject of the sh:name triples. Instead, it is a
    display label for the path.

    On Jul 8, 2021, at 9:34 PM, Holger Knublauch
    <hol...@topquadrant.com <mailto:hol...@topquadrant.com>> wrote:

    I don't agree on that and believe your use of sh:name does not
    align with how the standard intended it to be used. sh:name is
    supposed to be the display label for the property, e.g. "owns"
    and not the label of the property shape. The label of the
    property shape should be in rdfs:label, like you would do it for
    node shapes.

-- 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 topbraid-users+unsubscr...@googlegroups.com
    <mailto:topbraid-users+unsubscr...@googlegroups.com>.
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/topbraid-users/47B2E936-0AA8-46BF-82E0-E0DF31F20156%40topquadrant.com
    
<https://groups.google.com/d/msgid/topbraid-users/47B2E936-0AA8-46BF-82E0-E0DF31F20156%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 topbraid-users+unsubscr...@googlegroups.com <mailto:topbraid-users+unsubscr...@googlegroups.com>. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/CAF0WbnJJ2oK7UKe8sW7L_Whkt9WP7MsJjdg2xNoVtq7yPpt3Hw%40mail.gmail.com <https://groups.google.com/d/msgid/topbraid-users/CAF0WbnJJ2oK7UKe8sW7L_Whkt9WP7MsJjdg2xNoVtq7yPpt3Hw%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 topbraid-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/topbraid-users/9186b1a7-602c-b1b6-fcc8-6141fa0dd054%40topquadrant.com.

Reply via email to