linking between SoftwareSourceCode and SoftwareApplication?
See original GitHub issueIMHO, schema.org/SoftwareSourceCode and schema.org/SoftwareApplication ought to have a reversible property indicating the relationship between the two. This would allow us to nest properties which are technically part of SoftwareApplication and not part of SoftwareSourceCode (e.g. memoryRequirements
) as part of a SoftwareApplication type object, rather than putting them directly as properties of the SoftwareSourceCode object.
SoftwareSourceCode does have targetApplication
, but this does not seem to refer to the application that the source-code is defining, but rather a runtime environment (such as an operatingSystem). SoftwareApplication does not seem to have any property corresponding to identifying the application’s source code.
Thoughts on this? Shall we open this issue over in https://github.com/schemaorg/schemaorg for discussion?
Issue Analytics
- State:
- Created 5 years ago
- Reactions:3
- Comments:10 (3 by maintainers)
Top GitHub Comments
At the Scientific Software Registry Collaboration Workshop we have also encountered this issue. Many people were confused because SoftwareApplication and SSC are kind of merged in the same object (I know they aren’t but many people confuse both).
In my work, I have used Codemeta in https://w3id.org/okn/o/sd and my own registry, and I had to add the property “hasSourceCode” which links a Software to its SourceCode (inverse of targetProduct, which links a source code to its SoftwareApplication). If something similar is added in codemeta (or suggested in schema.org), then the problem should be solved.
+1 to add such a property. I will suggest it in schema.org too
Just wanted to add support for “unambiguous property on
SoftwareSourceCode
and a reverse-property onSoftwareApplication
connecting these two.”When crosswalking from PyPI, CRAN etc to JSON-LD we’ve found that some of the properties we need are on SSC and some are on SA. A link between the two could solve that. In the meantime, we’ve been using a
SoftwarePackage
type which extends SSC by adding the properties we need from SA: https://github.com/stencila/schema/blob/master/src/SoftwarePackage.ts