Replies: 6 comments 2 replies
-
Example illustration |
Beta Was this translation helpful? Give feedback.
-
Thanks @hammar and others on the TC for the thoughtful consideration. For my immediate use case, we can align to either decision. Restricting to Targeted relationships would also impact Portfolio's |
Beta Was this translation helpful? Give feedback.
-
I tend towards the targeted relationships... having been building platforms that, eventually, should be consumable by applications not build by ourselves, I feel that such application development would be easier with a stricter "schema" in the ontology. And for me easier implies faster adoption of REC by applications. I see the application adoption as a core part in realizing the vision of an open standard. That is that application and platform development may be separated, and property owners that would expose an REC API can select among a larger set of compliant applications. I suppose my argument is that more work in the ontology as well as making it more opinionated which shorter term may be cumbersome for developers that work on both platform and applications is balanced by the longer term upsides |
Beta Was this translation helpful? Give feedback.
-
I'm spreading the link to this discussion a little further among colleagues and interested parties, hoping to get a little larger feedback set. For my part, I am really torn on the matter and could go either way. |
Beta Was this translation helpful? Give feedback.
-
Hi all: I am also torn between the two designs, but am leaning towards targeted relationships. Given the use of SHACL over OWL, it is possible to model a relationship as having a set of possible object types. For example, in Brick, we use SHACL to enforce that the I think the key feature for flexibility in modeling is to ensure that the object types of the relationship are broad enough that most extensions can fit beneath those types. In Brick, some of the most common extensions are adding new kinds of equipment and points. As we advise in our documentation, extensions should -- when possible -- be placed under one of those broad classes to aid in discoverability. For this particular discussion, I'm leaning towards targeted relationships with some broad sets of types as the range |
Beta Was this translation helpful? Give feedback.
-
Thank you all for your contributions to this discussion. At the REC Technical Committee meeting today, we decided as follows:
|
Beta Was this translation helpful? Give feedback.
-
(In the below, DTDL terminology is used; if you're a SHACL user, substitute the word Relationship with Object Property)
Dear all,
Resulting from @cbupp's question #149 in this discussion forum, the RealEstateCore Technical Committee at our meeting yesterday spent some time discussing whether to implement an non-targeted
Agent.owns
Relationship, that is, one unbound by a Target (SHACL: rdf:range) declaration, and that could consequently be used to indicate agents' ownership of any thing in the graph. The discussion soon scaled up to a principles discussion on the merits, or lack thereof, of such non-targeted Relationship declarations.After some back-and-forth, we realized the tradeoffs warrant a broader community discussion, and I was tasked to initiate it.
In the below, I'm exemplifying with
Agent.owns
and it's inverse(s)Architecture.ownedBy
,Collection.ownedBy
, etc., but the idea is to try and think beyond these cases and about the generic design pattern in question.Arguments in favor of using non-targeted Relationships:
.ownedBy
Relationships on everything which is ownable, then we create a great many relationships, all of which we might need to maintain over time.Arguments for using only Relationships with defined Targets:
There are surely more arguments in either direction. Please make your voice heard here about what you prefer (either through voting or through comments), and we'll take that into the development cycle as we continue to push for REC4 GA.
4 votes ·
Beta Was this translation helpful? Give feedback.
All reactions