Skip to content

Conversation

@BaptisteCecconi
Copy link
Contributor

Following the presentation about CodeMeta by @dgarijo at the DASH meeting (heliophysics community) this morning, I prepared a first draft for a crosswalk between CodeMeta and SPASE (Space Physics Extract Search and Extract).

SPASE is an information model (a schema) to describe resources in heliophysics. SPASE resource types are Person, Instrument, Observatory, NumericalData, Repository, Software, etc.

The full schema is available here: https://spase-group.org/data/index.html

It is serialised as an XML schema (see here for the various versions).

An interactive web view of the Software class of the schema is available here.

I copy below the list of metadata element for the Software class in a flat view:

ResourceID
ResourceHeader
	ResourceName
	AlternateName
	DOI
	ReleaseDate
	RevisionHistory
		RevisionEvent
	ExpirationDate
	Description
	Acknowledgment
	PublicationInfo
		Title
		Authors
			Author
		PublicationDate
		PublishedBy
		LandingPageURL
	Funding
		Agency
		Project
		AwardNumber
	Contact
		PersonID
		Role
		StartDate
		StopDate
		Note
	InformationURL
		Name
		URL
		Description
		Language
	Association
		AssociationID
		AssociationType
		Note
	PriorID
AccessInformation
	RepositoryID
	Availability
	AccessRight
	AccessURL
		Name
		URL
		Style
		ProductKey
		Description
		Language
	Format
	Encoding
	AccessDirectoryTemplate
	AccessFilenameTemplate
	DataExtent
		Quantity
		Units
		Per
	Acknowledgment
SoftwareVersion
ApplicationInterface
CodeLanguage
Prerequisites
ExecutionEnvironment
	OperatingSystems
	Installer
		Availability
		AccessRight
		Acknowledgment
		URL
	Cores
	Storage
	Memory
InputProperty
	Name
	Description
	Caveats
	Units
	ValidMin
	ValidMax
OutputProperty
	Name
	Description
	Caveats
	Units
	ValidMin
	ValidMax

And here is an example of SPASE record for a Software:

https://hpde.io/CCMC/Software/Kamodo.html

@dgarijo
Copy link
Contributor

dgarijo commented Oct 15, 2024

Thanks for your rapid response, @progval. @BaptisteCecconi asked me to review this, and I would like to make sure we are not missing other predicates. Please let me have a look this week and comment here. Thanks!!

@rebeccaringuette
Copy link

rebeccaringuette commented Oct 15, 2024

@dgarijo Thanks for taking a look at this, and thanks @BaptisteCecconi for working on this. One critical problem in SPASE is that external vocabularies are not supported, which is one of many reasons we cannot use SPASE as the metadata structure for the Heliophysics Software Search Interface. Perhaps the structure we design for that search interface will be what is used in SPASE 3.0 for software, but that remains to be seen. Because of those problems, I don't see much value in adding SPASE to CodeMeta's crosswalks, but it would be useful to see what other concepts are missing for software in SPASE. I expect to be in contact once we have our structure drafted in the coming months.

@BaptisteCecconi
Copy link
Contributor Author

Hi @rebeccaringuette, I agree with your statements. The crosswalk I initiated should really be seen as a way to see what is missing on our side, as you say.

@dgarijo
Copy link
Contributor

dgarijo commented Oct 15, 2024 via email

Copy link
Contributor

@dgarijo dgarijo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @BaptisteCecconi can you please check my suggestions?
I completed them based on the information and definitions in https://spase-group.org/data/model/spase-2.6.1/index.html

@dgarijo
Copy link
Contributor

dgarijo commented Oct 23, 2024

@BaptisteCecconi some of my suggestions are duplicated with comments in text, sorry. I started doing suggestions halfway through since you can commit them if you like them

@dgarijo
Copy link
Contributor

dgarijo commented Oct 23, 2024

@progval please have a quick look to see whether you approve with my suggestions whenever you have the chance. Sorry it took a bit longer than expected.

@dgarijo
Copy link
Contributor

dgarijo commented Oct 24, 2024 via email

@dgarijo
Copy link
Contributor

dgarijo commented Oct 25, 2024

Thanks @BaptisteCecconi, if you have questions/comments on the remaining ones let me know

Update after comments from @dgarijo
@BaptisteCecconi
Copy link
Contributor Author

BaptisteCecconi commented Oct 25, 2024

@dgarijo I updated all fields according to your comments. The only remaining issue may be the "funding" term, which could be mapped to 2 entities in SPASE (as you propose). I put a human readable process in the CSV (probably not a good thing for you :-)

@dgarijo
Copy link
Contributor

dgarijo commented Oct 25, 2024

Thanks!
Let's see what @progval thinks about that. Most likely we'll have to select one, not sure if otherwise it may break something in the validation scripts :)

Copy link
Contributor

@dgarijo dgarijo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I leave this to @progval to decide. I think the line funding,ResourceHeader/Funding/AwardNumber or ResourceHeader/Funding/Project (if no AwardNumber) will likely cause problems. It's a tricky one.

@progval
Copy link
Member

progval commented Oct 25, 2024

In other crosswalks (SPDX, Leiningen, NodeJS, Cabal, CFF) we use / instead of or but it would be confusing here, so let's keep or and change the other crosswalks.

No need for the parenthesis at the end, IMO. Translations to Codemeta can have both values.

@dgarijo
Copy link
Contributor

dgarijo commented Oct 29, 2024

@progval if no further changes are required, can you merge this PR?

@dgarijo
Copy link
Contributor

dgarijo commented Dec 4, 2024

@BaptisteCecconi ping so we can finalize this PR?

@BaptisteCecconi
Copy link
Contributor Author

This is good to go for me.

@progval progval merged commit 701d769 into codemeta:master Dec 6, 2024
2 checks passed
tmorrell pushed a commit to caltechlibrary/codemeta that referenced this pull request Apr 11, 2025
Co-authored-by: Daniel Garijo <[email protected]>
Co-authored-by: Val Lorentz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants