Ontobull and BFOConvert: Web-based programs to support automatic ontology conversion Edison Ong 1 , Zuoshuang Xiang 1 , Jie Zheng 2 , Barry Smith 3 , Yongqun He 1* 1 University of Michigan, Ann Arbor, Michigan, USA; 2 University of Pennsylvania, Philadelphia, PA, USA; 3 University at Buffalo, Buffalo, NY, USA. ABSTRACT When a widely reused ontology appears in a new version which is not compatible with older versions, the ontologies reusing it need to be updated accordingly. Ontobull (http://ontobull.hegroup.org) has been developed to automatically update ontologies with new term IRI(s) and associated metadata to take account of such version changes. To use the Ontobull web interface a user is required to (i) upload one or more ontology OWL source files; (ii) input an ontology term IRI mapping; and (where needed) (iii) provide update settings for ontology headers and XML namespace IDs. Using this information, the backend Ontobull Java program automatically updates the OWL ontology files with desired term IRIs and ontology metadata. The Ontobull subprogram BFOConvert supports the conversion of an ontology that imports a previous version of BFO. A use case is provided to demonstrate the features of Ontobull and BFOConvert. 1 INTRODUCTION Biological ontologies are sets of computerand humaninterpretable terms and relations that represent entities in the biological world and how they relate to each other. Hundreds of ontologies have been developed. Over 150 biomedical ontologies have been developed following the Open Biological and Biomedical Ontologies (OBO) Foundry principles [1]. NCBO BioPortal [2] currently comprises more than 400 ontologies including both OBO and non-OBO ontologies. The Basic Formal Ontology (BFO) [1, 3] has been used as the top ontology by some 175 other ontologies (http://ifomis.uni-saarland.de/bfo/users), with the goal of facilitating interoperability among these ontologies. In addition to BFO, other OBO Foundry ontologies use relations defined in the OBO Relation Ontology (RO) (https://github.com/oborel/obo-relations). For example, the information Artifact Ontology (IAO) and the Ontology for Biomedical Investigations (OBI) [4] both import BFO and RO. One challenge in reusing external ontologies is that once the reused source ontology is updated with modified IRIs, it is difficult to update the target ontologies. Although these reference ontologies are designed to be maximally stable, they do sometimes still undergo major changes. For example, BFO 1.0 and 1.1 do not follow OBO Foundry ID policy (http://obofoundry.org/id-policy.html). As a result, BFO has been updated from BFO 1.0/1.1 to 2.0. To support automatic conversion of ontologies aligned with BFO, we * To whom correspondence should be addressed: yongqunh@umich.edu previously developed the BFOConvert software. In light of the fact that the IRI conversion issue exists also in other cases, we have now expanded the BFOConvert program to create Ontobull, a program with greater flexibility and a more user-friendly web interface. In addition to ontology version updating, Ontobull can be used for other purposes, including term IRI updating and updating of ontology metadata such as ontology header (e.g., owl:imports) and XML namespaces (xmlns) information (https://www.w3.org/TR/owl-guide/). The owl:imports attribute in ontology header specifies an OWL file to import into current ontology. The xmlns attribute qualifies element and attribute names of the ontology. In this software demonstration, we will introduce the tool design and use cases of Ontobull and BFOConvert. 2 ONTOBULL SOFTWARE DESIGN The Ontobull web program provides a user-friendly interface for input of an ontology file and conversion settings. The Ontobull Java program, developed using the Spring Model-view-controller (MVC) framework and Thymeleaf template engine, processes the user's requests and generates an Ontobull OWL output file. The BFOConvert program is a subprogram of Ontobull specifically targeting conversions involving a move from use of BFO 1.1 to BFO 2.0. \ Fig. 1. Ontobull web interface. The circled settings are used in the use case demonstration described next. Ong et al. 2 3 ONTOBULL WEB INTERFACE The use of the Ontobull web interface (Fig. 1) involves three steps: Upload an ontology source file: An OWL file or a zip file including an OWL file(s) can be selected and uploaded. The zip file format is typically used when an ontology includes many unmerged OWL files. In this case, Ontobull can automatically process all the OWL files in succession. Define ontology term IRI mapping: The user is required to provide at least one pair consisting of an original ontology term IRI and a new IRI that will be used to replace it. Multiple mapping pairs can be specified using the dynamic web user-interface. Alternatively, a user can choose a file that includes all the IRI mapping pairs organized in a simple tab-delimited format. Provide an ontology header and XML namespace updating setting (optional): This setting is used to remove, add, or replace xmlns or owl:imports contents in the OWL output file. Use cases are shown in what follows. 4 ONTOBULL USE CASE DEMONSTRATION Fig. 2 illustrates how Ontobull is used to convert the Parasite Life Cycle ontology (OPL) which uses terms from the Relation Ontology from an old version to a new version. OPL is an ontology designed to provide a consistent representation of lifecycle stages in parasitic organisms [5]. The "OPL.owl" highlighted in the first circle in Fig. 1, above, represents the OWL file of the original version of this ontology. The second highlighted circle in Fig. 1 represents the setting for an IRI mapping. Fig. 2A represents the results of the conversion of the IRI for the RO expression 'part of '. The third highlighted circle in Fig. 1 represents one header cleanup option, illustrated in Fig. 2B. A more detailed tutorial and more use case demonstrations are available on the Ontobull tutorial website at: http://ontobull.hegroup.org/tutorial. BFOConvert has been used to support the conversion of many ontologies that used old versions of BFO and RO. (B) Header update (shown in a text editor) (A) IRI update (shown in Protégé) old new old new Fig. 2. Ontobull usage demo. The input (OPL.owl) and settings are shown in Fig. 1. (A) The RO object property 'part of' IRI is updated. The results are displayed using the Protégé-OWL editor. (B) Header updated. The source file updates are shown. Ontobull can also be used to integrate multiple OWL files. The OWL ontology files may have different IRIs referring to the same entities. For integration, we need to replace these different IRIs with common ones across all salient files. For example, the OWL representation of Beta cell genomics data (http://www.betacell.org/gbco/) integrates information from two resources that include terms assigned with different IRIs. Ontobull was used to update IRIs to enable this integration. 5 BFOCONVERT SUBPROGRAM The BFOConvert subprogram is now available at: http://ontobull.hegroup.org/bfoconvert. It provides a predesigned mapping file according to the current stage of BFO/RO development. 6 SOURCE CODE AND LICENSE The Ontobull source code is openly available at: https://github.com/OntoZoo/Ontobull. The Ontobull source code license is Apache License 2.0. 7 SUMMARY With ever increasing needs for ontology updating, the webbased Ontobull and BFOConvert programs provide a timely platform for automatic ontology conversion. ACKNOWLEDGEMENTS This research is supported by an NIH R01 grant (1R01AI081062). We acknowledge the assistance of James A. Overton and Alan Ruttenberg in the development of BFOConvert. REFERENCES [1] B. Smith, M. Ashburner, C. Rosse, J. Bard, W. Bug, et al., "The OBO Foundry: coordinated evolution of ontologies to support biomedical data integration," Nat Biotechnol, vol. 25, no. 11, pp. 1251-5, Nov, 2007. [2] P. L. Whetzel, N. F. Noy, N. H. Shah, P. R. Alexander, C. Nyulas, T. Tudorache, and M. A. Musen, "BioPortal: enhanced functionality via new Web services from the National Center for Biomedical Ontology to access and use ontologies in software applications," Nucleic Acids Res, vol. 39, no. Web Server issue, pp. W541-5, Jul, 2011. [3] P. Grenon, and B. Smith, "SNAP and SPAN: Towards Dynamic Spatial Ontology," Spatial Cognition and Computation, vol. 4, no. 1, pp. 69-103, 2004. [4] A. Bandrowski, R. Brinkman, M. Brochhausen, M. H. Brush, B. Bug, M, C, Chibucos, et al, "The Ontology for Biomedical Investigations," PLoS One, vol. 11, no. 4, pp. e0154556, 2016. [5] P. P. Parikh, J. Zheng, F. Logan-Klumpler, C. J. Stoeckert, Jr., C. Louis, P. Topalis, et al, "The Ontology for Parasite Lifecycle (OPL): towards a consistent vocabulary of lifecycle stages in parasitic organisms," J Biomed Semantics, vol. 3, no. 1, pp. 5, 2012.