To me that speaks to the community need of such a mechanism! ![]()
Agreed. Itās worth at least acknowledging that there is a dichotomy of implementers in the CDM - those with only claims data and those with other sources. Finding a balance between creating solutions to enable use cases only relevant to subsets of implementers of the CDM while still preserving the ability to query them together when the data overlaps seems key.
Standardization is exactly what Iām after here. A discrete (albeit likely evolving over time) set of concepts, letās call it the āfact relationship vocabularyā for discussion purposes, that defines the scope of relationships in which are considered valid. Anything placed in the modified FACT_RELATIONSHIP table that does leverage these concepts in an appropriate manner should be considered invalid and not included in any analysis. Additionally, if we require all of those relational concepts to include indications as to what are the appropriate ātoā and āfromā domains of that relationship, it opens up opportunities for validation/DQ checks.
A fair point, but Iād argue the source data would limit the amount of relations that could be possible between valid entities in the standard CDM. From my perspective, we would only be enabling relationships that are explicitly given to us in the data, and we just need to find a way to preserve that relationship.
The content of the current āRelationshipā vocabulary may be causing confusion here and perhaps should be thought of as separate as it solely contains very specific relationship types (~200) listing out every iteration of how a person can be related to another person. What Iām referring to are much more high level concepts that do not contain that level of granularity. āProcedure given to treat conditionā, āObservation from imaging procedureā, ādrug as part of regimenā, etc. Point being, a much smaller list than folks might be thinking⦠at least to start.
If clarity on the proposal would still be helpful, I can try to mock something up this weekend. A few mock examples with standard concepts, relationships between them, and perhaps how it could be integrated with the tooling?