Open mfenner opened 7 years ago
There is both the software ontology and the EDAM vocabulary, might be relevant
On Jun 2, 2017, at 2:32 PM, Martin Fenner notifications@github.com<mailto:notifications@github.com> wrote:
Software can come in different forms: scripts, applications, frameworks, virtual machines. Is there are common vocabulary? More importantly, do we need different workflows?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/force11/force11-sciwg/issues/12, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAwn3J_6OwMa4QB81QAm4U8bQ0baz897ks5sAADOgaJpZM4NuOFJ.
Melissa Haendel, PhD Associate Professor Library & Dept. of Medical Informatics and Clinical Epidemiology haendel@ohsu.edumailto:haendel@ohsu.edu 503-407-5970 www.monarchinitiative.orghttp://www.monarchinitiative.org
Appointments: Shanez De Silva desilva@ohsu.edumailto:desilva@ohsu.edu
@mfenner If you need a list of software ontologies, the document bellow can help: https://wiki.softwareheritage.org/index.php?title=Software_ontologies
disclaimer: it is a work in progress
@moranegg that is a long list :). @cboettig, does codemeta have a controlled list for software types and/or has looked at existing ontologies?
@mfenner yes it is.. I was thinking of separating each category, but it's really complex to consider all workflows and vocabularies. As I see it CodeMeta can be the common vocabulary while we continue mapping each ontology in the CodeMeta crosswalk table.
@mfenner We don't have a controlled vocabulary for these. The codemeta terms (inherited from schema.org) applicationCategory
or keywords
would be possible properties to indicate these.
I really appreciate the value of controlled vocabularies (it's nice when everyone writes it GPL-2.0 instead of ten different formats that mean the same thing), but I think in practice this gets super messy e.g. an application
can still be provided as a virtualMachine
, and the data consumer can more reliably infer this information from the programming language and the provider information. (e.g. if it's in ruby with provider: https://rubygems.org
we can call it an application, if it lists programmingLangauge as vagrant/ansible/docker maybe we call it a VM. I think it's often hard to draw a line between scripts and applications.
Maybe this has been worked out by one of the formal ontologies. Like @moranegg says, we do crosswalk several already, though the crosswalk for some could probably be improved for SoftwareOntology & EDAM isn't done yet at all.
Thanks @cboettig. Maybe it makes sense whether we can identify use cases where this controlled vocabulary would be needed. I can see value for this kind of info for analyzing the landscape, similar to having info about the programming language.
Software can come in different forms: scripts, applications, frameworks, virtual machines. Is there are common vocabulary? More importantly, do we need different workflows?