knocean / knode

Knowledge Development Environment
BSD 3-Clause "New" or "Revised" License
1 stars 1 forks source link

Fetch upstream ontologies #25

Closed jamesaoverton closed 7 years ago

jamesaoverton commented 7 years ago

Given an ontology IRI such as http://purl.obolibrary.org/obo/mro.owl, we need to fetch the file and store a copy in our tmp/ directory:

  1. Fetch the file, following any redirects (I've sometimes had trouble with Clojure following redirects from HTTP to FTP, and with HTTPS).
  2. The file should be XML, and it could be large. We need to extract the value of the <owl:versionIRI> element, which is the Ontology Version IRI.
  3. Use the version IRI to create a unique path inside tmp/ so we can store multiple versions of the same ontology. (Make sure the path will work cross-platform.)
  4. Store a compressed copy of the file.