biopragmatics / curies

🐸 Idiomatic conversion between URIs and compact URIs (CURIEs) in Python
https://curies.readthedocs.io
MIT License
21 stars 6 forks source link

Semantic prefix requirements for OAK and other libraries #16

Closed cmungall closed 1 year ago

cmungall commented 2 years ago
  1. [ ] add semweb prefixes (owl, skos, dcterms, oio, etc)
  2. [ ] distribute prefixes as alongside python and use these by default (makes behavior deterministic for any given version)
  3. [ ] when prefixes are retrieved by network use PURLs rather than raw github URLs
  4. [ ] remove dependency on repos in prefixcommons org (the br/curies stack should be able to replace them when these requirements are satisfied)
  5. [ ] ensure preferred prefixes are used even for non-OBO namespaces (e.g. FlyBase)
  6. [ ] ensure preferred expansions are used for any semantic context
cthoyt commented 2 years ago
  1. [ ] add semweb prefixes (owl, skos, dcterms, oio, etc)

As in add a link for these? For example, I can link to https://bioregistry.io/collection/0000002 and https://bioregistry.io/api/collection/0000002?format=context (which probably needs to get renamed with a nice file extension instead)

  1. [ ] distribute prefixes as alongside python and use these by default (makes behavior deterministic for any given version)

curies will not take the burden of maintaining nor distributing any contexts. The fact that it has some functions for retrieving them via URLs is just for convenience

  1. [ ] when prefixes are retrieved by network use PURLs rather than raw github URLs

Fine for me as long as they're annotated with the configuration in the PURL services so they aren't opaque to users who might want to go and bother the GitHub maintainers and information on how to solicit changes

  1. [ ] remove dependency on repos in prefixcommons org (the br/curies stack should be able to replace them when these requirements are satisfied)

Sounds good, but this requires more community participation on Bioregistry

  1. [ ] ensure preferred prefixes are used even for non-OBO namespaces (e.g. FlyBase)

The job of this package isn't to create prefix maps, only to provide a robust and efficient data structure to support URI/CURIE compression/expansion - I'd leave that kind of logic elsequere

  1. [ ] ensure preferred expansions are used for any semantic context

Not sure what this means

cthoyt commented 1 year ago

Most of the comments in here are out of scope for this package. An initial solution for some of these is available in https://github.com/linkml/prefixmaps. I'll be happy to re-open this issue if anyone wants to reply to/clarify some of these points.