EBISPOT / OLS

Ontology Lookup Service from SPOT at EBI
http://www.ebi.ac.uk/ols
Apache License 2.0
95 stars 40 forks source link

Why can some ontologies not be downloaded from OLS? #606

Closed matentzn closed 1 year ago

matentzn commented 2 years ago

for example

https://www.ebi.ac.uk/ols/ontologies/co_326/download

No rush, but if you know, would be good because I need to build some infrastructure on top of the download API :)

KonradHoeffner commented 2 years ago

Hi, I am not an expert in OLS but I am learning the API as well, so maybe we can figure this one out together :-) https://www.ebi.ac.uk/ols/api/ontologies/co_326 returns:

{
  "ontologyId" : "co_326",
  "loaded" : "2021-10-14T11:32:34.377+0000",
  "updated" : "2022-05-24T11:44:51.553+0000",
  "status" : "SKIP",
  "message" : "Failed to download file: Connection refused (Connection refused)",
  "version" : null,
  "fileHash" : "62e3ee33af329204b370fb774bf914b854a7c664",
  "loadAttempts" : 3,
  "numberOfTerms" : 865,
  "numberOfProperties" : 9,
  "numberOfIndividuals" : 844,
  "config" : {
    "id" : "http://www.cropontology.org/ontology/CO_326/Coconut",
    "versionIri" : null,
    "namespace" : "co_326",
    "preferredPrefix" : "CO_326",
    "title" : "Coconut ontology",
    "localizedTitles" : { },
    "description" : "Draft version",
    "localizedDescriptions" : { },
    "homepage" : "http://127.0.0.1:5900/ontology/CO_326/Coconut",
    "version" : null,
    "mailingList" : "helpdesk@cropontology-curationtool.org",
    "tracker" : null,
    "logo" : null,
    "creators" : [ ],
    "fileLocation" : "http://127.0.0.1:5900/ontology/CO_326/Coconut/owl",
    "reasonerType" : "NONE",
    "oboSlims" : false,
    "labelProperty" : "http://www.w3.org/2000/01/rdf-schema#label",
    "definitionProperties" : [ "http://www.w3.org/2004/02/skos/core#definition" ],
    "synonymProperties" : [ "http://www.cropontology.org/rdf/acronym", "http://www.w3.org/2004/02/skos/core#altLabel" ],
    "hierarchicalProperties" : [ "http://www.cropontology.org/rdf/method_of", "http://www.cropontology.org/rdf/scale_of" ],
    "baseUris" : [ "http://www.cropontology.org/rdf/CO_326" ],
    "hiddenProperties" : [ ],
    "preferredRootTerms" : [ ],
    "languages" : null,
    "allowDownload" : true,
    "internalMetadataProperties" : [ ],
    "skos" : false
  },
  "_links" : {
    "self" : {
      "href" : "https://www.ebi.ac.uk/ols/api/ontologies/co_326"
    },
    "terms" : {
      "href" : "https://www.ebi.ac.uk/ols/api/ontologies/co_326/terms"
    },
    "properties" : {
      "href" : "https://www.ebi.ac.uk/ols/api/ontologies/co_326/properties"
    },
    "individuals" : {
      "href" : "https://www.ebi.ac.uk/ols/api/ontologies/co_326/individuals"
    }
  }
}

First, we need to check if downloading is allowed, but "allowDownload" is true so this shouldn't be the problem. However judging by all the null values and the "message" : "Failed to download file: Connection refused (Connection refused)",, it seems like this ontology did not get imported into OLS in the first place due to an error. My first thought was that maybe the target server was down at that moment, however "fileLocation" : "http://127.0.0.1:5900/ontology/CO_326/Coconut/owl", points to 127.0.0.1:5000, which is on the localhost, so my guess would be that the configuration file is broken because someone used some semi automatic tool to create a config file out of a local installation which then stopped working on the OLS server. Strange is also that the id and fileLocation point to a specific instance http://www.cropontology.org/ontology/CO_326/Coconut" which does not exist, whereas https://cropontology.org/ontology/CO_326 already points at Coconut and https://cropontology.org/ontology/CO_326/rdf returns an RDF/XML version. However what I find strange is that when I go to https://www.ebi.ac.uk/ols/ontologies/co_326, I get a perfectly workable human readable version of the ontology "Last loaded: Thu Oct 14 12:32:34 BST 20". Ah OK I think I get it now:

"loaded" : "2021-10-14T11:32:34.377+0000",
"updated" : "2022-05-24T11:44:51.553+0000",

It seems as if it was successful on 2021-10-14, but as if the update was not carried through on 2022-05-24, which explains why the version in the API differs from the publicly available one. However what I don't understand is why this seemingly broken configuration file ever worked in the first place, maybe some of the developers can shed some light on this.

Do you have another example that doesn't work?

matentzn commented 2 years ago

Hey @KonradHoeffner

I think these are the ones that do not download:

Relatively recently added (last 2 years):

I don't know

allowDownload: false

KonradHoeffner commented 2 years ago

I don't know why https://www.ebi.ac.uk/ols/api/ontologies/disdriv does not download, as status is LOADED, can the developers chime in?

henrietteharmse commented 2 years ago

Hhhmmm ... I suspect this may be a side effect of a recent data centre migration.

jamesamcl commented 2 years ago

This should hopefully be resolved now!