valueflows / agent

agent has moved to https://lab.allmende.io/valueflows/agent
10 stars 4 forks source link

owl:inverseOf is separate from rdfs:label #41

Closed ahdinosaur closed 8 years ago

ahdinosaur commented 8 years ago

from my understanding, owl:inverseOf is actually referencing another RelationshipType that has an rdfs:label but may or may not have an @id. in Holodex, we separate out all of our inverse relationship types into objects with their own @id, so we wouldn't reference inverse labels inline like this.

ahdinosaur commented 8 years ago

also @fosterlynn this means we need to update the diagram ever so slightly, which i can't do. for this reason i was generating my UML diagrams with graphviz from .dot files in this repo before (see script that generates .svg file), so everything was version-controlled and anyone could generate our diagrams, but i'm not sure how to get dot to layout in a more friendly way so i'm happy y'all made a better one for now.

elf-pavlik commented 8 years ago

@ahdinosaur if you define both relations on vocabulary level, you may need to always check both to see if two entities have such relation.

It will also depend how you query the graph, it may not matter for traversals but most likely will if you want to use graph pattern matching.

elf-pavlik commented 8 years ago

I just created a dedicated issue for it here: https://github.com/valueflows/valueflows/issues/52

ahdinosaur commented 8 years ago

if you define both relations on vocabulary level, you may need to always check both to see if two entities have such relation.

yes, but happy to pay that price if it means each relationship is consistent and can be referenced from either direction: two objects, one for each direction, each object has an @id, rdfs:label, etc, both point to each other through owl:inverseOf.

@elf-pavlik: just to check my understanding, isn't it the case that using owl:inverseOf to point to an object creates a blank node? then this blank node has rdfs:label in our example.

fosterlynn commented 8 years ago

also @fosterlynn this means we need to update the diagram ever so slightly, which i can't do

Actually I went in to give you permission, and you already have it. I'm using an old file to not waste my 25 free pics in Cacoo.... https://cacoo.com/diagrams/932zGDU4Rje49eUv/edit in case you actually need it

elf-pavlik commented 8 years ago

yes, but happy to pay that price if it means each relationship is consistent and can be referenced from either direction: two objects, one for each direction, each object has an @id, rdfs:label, etc, both point to each other through owl:inverseOf

@ahdinosaur lets take further conversation to https://github.com/valueflows/valueflows/issues/52 If you see urge to merge this one, please feel free to do that but also let's consider this future as testing stage and stay ready that it may change depending on what we can all understand and agree on in the other general issue with 'design pattern' label.

I also assume that we all have a good understanding of JSON-LD syntax for Reverse Properties