-
Notifications
You must be signed in to change notification settings - Fork 49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Relationship to connect source code to a specification #958
Comments
@pellecchialuigi - can you revers the from and to in the relationship? |
Unfortunately not in my case. Imagine a user is using for a software component, as reference document, a software specification document. I mean, tools can have constraints in the way are developed, that make not user friendly to use the reverse relationship. |
I am sorry, but I do not understand. You are discussing adding a If they are inverse, anytime you would like to add a Relationship from:Spec to:Software type:hasImplementation, you might as well create a Relationship from:Software to:Spec type:hasSpecification. As a general rule we tried hard to avoid inverse relationships in SPDXv3, to simplify the data and the queries. |
Hi, But anyway we break the chain if we use other dependencies as PATCH_FOR We are not creating a one directional flow and tools need to be able to identify those things. |
There is no CONTAINED_BY RelationshipType in https://spdx.github.io/spdx-spec/v3.0.1/model/Core/Vocabularies/RelationshipType/ only The problem with introducing inverse relationship types (and the main reason why we don't have them in SPDXv3) is that, if they are present, then each query has to be doubled, to account for the reverse relationship as well. For example, if we had Contains and Contained_By, and we wanted to find everything contained in X, instead of:
one would have to do:
Doubling every query is something we want to avoid. |
Current relationships set allow us to describe the link from the source code to the software specification using the relationship hasSpecification.
Actually I don't see a relationship type that allow us to describe the inverse relationship.
So I would like to see a hasImplementation and a corresponding IMPLEMENTATION_FOR in connected tools such as https://github.com/spdx/tools-python/blob/main/src/spdx_tools/spdx3/model/relationship.py
That because some workflow and tools can have focus on Software Specification and need a relationship definition parent (software specification) -> child (source code) that actually I don't see.
The text was updated successfully, but these errors were encountered: