@daissi
Copy link

daissi commented May 11, 2018

Hi,
Bioinformatics programs can have several ID from different registries. These ID are used in scientific publications to identify software using a persistent identifier. For example, bedtools software have these ID: bedtools (from bio.tools), OMICS_01159 (from OMICtools), SCR_006646 (from SciCrunch). We are currently adding them into Debian packages in the debian/upstream/metadata file [1,2]. I wonder if it could be possible to do something more general and reusable by other Linux distributions by moving them from d/upstream/data to the AppStream file.

For bioinformatics pipeline development or deployment, it could be useful to know which software is already installed or not on the system. Moreover, it could be great to be able to install bioinformatics programs from software centers using these ID instead their names that could have sometimes name clash with other unrelated free software (ex.: snap, plink, eagle, ...).

So, can we specify these different ID in the AppStream metadata file of these software? Maybe with something like that:

  <provides>
    <registry type="bio.tools">bedtools</registry>
    <registry type="OMICtools">OMICS_01159</registry>
    <registry type="SciCrunch">SCR_006646</registry>
  </provides>

Or something more general (not specific to bioinformatics) could be better with the definition of external ID into the AppStream metadata file?

Best regards,
Dylan

[1] https://wiki.debian.org/UpstreamMetadata
[2] https://salsa.debian.org/med-team/bedtools/blob/master/debian/upstream/metadata