Skip to content
Ramona Walls edited this page Feb 13, 2020 · 20 revisions

All edits should happen in src/ontology/pco-edit.owl.

Import files are in /src/ontology/imports. Each text file has the Robot code that is used to generate the OWL file. OBO files are made at release (see below).

Make a release with ROBOT/ODK

As of the Feb. 2020 release, this repo was updated to the latest version of ODK.

Modify make file

Because the import files are customized, I modified the make file (/src/ontology/Makefile) to skip the regeneration of import files in /src/ontology/imports by setting IMP=false on line 242.

Also in the make file, change the references to 'ELK' that are not in comments to 'hermit'.

Prep the import files for release

The above step means that .obo files must be created manually before a release by saving each .owl file in /src/ontology/imports as .obo.

Manually delete GO_0004872 and GO_0048018 from the ro_import.owl.

Create release files via make file

Navigate to /src/ontology and type sh run.sh make prepare_release. This generates:

  • Copies of the import files in /imports, but it does not give them version IRIs. Open each file in Protege and add the version IRI manually. :( Perhaps there is a way to automate this.
  • pco-base.obo, pco-base.owl, pco-full.obo, pco-full.owl, pco.obo in both the root directory and in /src/ontology
  • reports/pco-edit.owl-obo-report.tsv - Some of the errors or warnings in this file do not seem to be true.

It does not update pco.owl in the root directory or in /src/ontology.

Manually edit release files

  • As mentioned above, open each file in /imports in Protege and add the version IRI manually

Make a release with OORT.

This protocol is not longer used, but I keep a copy for reference.

When you are ready for a release, first make a test file. Browse to src/ontology and type "make test". This will generate a file src/ontology/pco.owl.

When you are satisfied that the test file is what you want, make the release by typing "make release" from within src/ontology. This will generate a new version of src/ontology/pco.owl plus a new version of pco.owl in the root directory (which will become live automatically, because that's where the PURL points).

To make a version of PCO that has all the imports merged requires manual editing:

  • Open src/ontology/pco.owl in Protege
  • Under the Refactor menu, select Merge ontologies...
  • From the menu, select everything except pco
  • Select "Merge into existing ontology"
  • Select PCO as the target ontology
  • Delete (x out) all of the imported ontologies
  • Until RO is fixed, delete GO:0040011 and GO:0048018
  • Delete all the extra ontology annotations that got added with the merge (under Ontology Header on the Active Ontology tab) except the dc:source annotations
  • Change the ontology IRI to http://purl.obolibrary.org/obo/pco_merged_inferred.owl and change the corresponding version IRI
  • Save at src/ontology/pco_merged_inferred.owl, replacing the existing copy of that file

Push all changes to the repo

Make a release on Github

To do this, you need to created a tag.

  • Click on Releases
  • Click Draft a new release
  • Name the tag and the release by the date as YYYY-MM-DD
  • Describe the changes that are included in the release
  • Click Publish Release

Update PURLS

Clone this wiki locally