OntologySummit2013 Hackathon Clinics Ontohub OOR OOPS Integration

This is one of the "OntologySummit2013_Hackathon_Clinics" Projects ...

= Hackathon Project (HC-07): Ontohub-OOR-OOPS! Integration =

Project Co-champions: TillMossakowski, OliverKutz, KenBaclawski, MariaPovedaVillalon

Event Date / Time: (Day-3) Sat 2013.04.13 ... see: [ details]

Archived work output can be found here

Participant Volunteers:

Add your name below, along with any time constraints or other participation-related comments. Thank you!


 * TillMossakowski
 * OliverKutz
 * KenBaclawski
 * MariaPovedaVillalon
 * ChristianClausen
 * TimoKohorst
 * DanvielCoutoVale
 * JulianKornberger
 * HenningMueller
 * FrancescaQuattri
 * PeterYim

Schedule Sat(-Sun) 2013.04.13(~14)

 * each project will (essentially) take up one whole day; the Saturday will be the main event day (the Sunday will be an optional extension day, if the team wants to spend more time finishing up.)
 * Main Chat-room (ALL Projects): http://webconf.soaphub.org/conf/room/summit_hackathon ... (all participants should join into this chat-room when participating or observing)
 * Chat-workspace for our hackathon (general + API): http://webconf.soaphub.org/conf/room/hc-07
 * Chat-workspace for our hackathon (Ontohub-OOPS!) integration: http://webconf.soaphub.org/conf/room/hc-07-integration
 * 1:00am PDT / 4:00 am EDT / 10:00am CEST: ad-hoc integration of OOPS! and Ontohub
 * Ontohub codebase and issue tracker: http://github.org/ontohub/ontohub
 * OOPS! API: http://oops-ws.oeg-upm.net
 * whole day: agile: multiple concept - implementation - feedback loops
 * deployed version at http://staging.ontohub.org
 * issue tracker at http://github.org/ontohub/ontohub
 * 4:00am PDT / 7:00am EDT / 1:00pm CEST: API development slides shared docuemnt with API
 * Dial-in for the "Open Webcast"
 * Phone (US): +1 (206) 402-0100 ... Conference ID: 141184# ; or
 * Skype: joinconference ... Conference ID: 141184#

Abstract
The project aims at the integration of OOPS! [1] into the Ontohub [2,3] and OOR[4] ontology repositories. A user of Ontohub.org would see a button "evaluate with OOPS!". Then Ontohub.org or OOR instance would call the OOPS! webservice (or even a local installation of OOPS!), and display the results. The results should also be displayed in a per-class and per-property way in Ontohub.

see: [ [ Project document] ]

Collaborators
Co-champions of this hackathon project team are mainly members of Ontohub team, the OOR team and the OOPS! team


 * MariaPovedaVillalon, Universidad Politécnica de Madrid, Spain - OOPS!
 * KenBaclawski, Northeastern University, USA - OOR
 * TillMossakowski, DFKI GmbH Bremen, Germany - Ontohub
 * OliverKutz, University of Bremen, Germany - Ontohub
 * ChristianClausen, University of Bremen, Germany - Ontohub
 * TimoKohorst, University of Bremen, Germany - Ontohub
 * DanvielCoutoVale, University of Bremen, Germany - Ontohub
 * JulianKornberger, University of Bremen, Germany - Ontohub
 * HenningMueller, University of Bremen, Germany - Ontohub

We warmly welcome further Hackathon contributors.

Objective and Goals
The Open Ontology Repository [4] is a joint effort in providing an ontology repository that significantly goes beyond the BioPortal repository in being more general (more domains and ontology languages), providing more services and being based on a decentralized architecture decoupled into several services [5]. Ontohub.org is a distributed heterogeneous ontology repository that aims at implementing the open ontology repository architecture [5]. OOPS! is a web service detecting some of the most common pitfalls appearing when developing ontologies. When combined, the result will be a web-based repository storing the feedback provided by OOPS! for many OWL ontologies, making it web-searchable and versioned. This means that the evolution of ontologies according to the feedback can be traced. This hackathon project will provide as well very useful feedback to improve OOPS!, maybe by including new cases or analysis false positive  we might get and making it more precise.

Expected Deliverables

 * webservices API that allows OOPS! to integrate with Ontohub, OOR or possible other software tools and environments.
 * code in the Ontohub code repository [2] providing the described functionality
 * functionality provided online at Ontohub.org

Work Plan
The API that OOPS! provides [6,7] can be used for an ad-hoc integration with OntoIOp. We want to integrate the OOPS! output into the Ontohub.org display of classes and properties, and it would be valuable to get feedback on this integration. The idea is to have an agile development, with multiple concept - implementation - feedback loops during the day.

Moreover, we want to discuss a general API (in the OOR context) for services like OOPS!, and have this as an extension of the BioPortal resp. OOR API.

New proposed Ontohub architecture, inspired by OOR architecture [5]

 * https://raw.github.com/ontohub/ontohub/master/doc/architecture/architecture.png

OOR API and Ontohub's needs
The OOR API is currently a REST API and is the same as BioPortal, see [8]. Note that Ontohub needs a much richer and sometimes also different API. This is because Ontohub not only supports OWL ontologies, but also ontologies written in other languages, e.g. Common Logic. (If I recall right, OOR shares this goal.) We will develop new APIs for federation, static analysis, inference etc. The new APIs are developed in this shared docuemnt.

Resource / References

 * [1] OOPS! (OntOlogy Pitfall Scanner!) - http://www.oeg-upm.net/oops/
 * [2] Ontohub project - http://www.ontohub.org
 * [3] Ontohub code repository - https://github.com/ontohub/ontohub/
 * [4] Open Ontology Repository (OOR) - http://ontolog.cim3.net/cgi-bin/wiki.pl?OpenOntologyRepository
 * [5] Open Ontology Repository (OOR) - current architecture - http://ontolog.cim3.net/cgi-bin/wiki.pl?OpenOntologyRepository_Architecture/Candidate03
 * [6] OOPS! webservice documentation - http://oops-ws.oeg-upm.net/
 * [7] OOPS! webservice interface - http://oops-ws.oeg-upm.net/rest
 * [8] current OOR API = Bioportal API - http://www.bioontology.org/wiki/index.php/NCBO_REST_services
 * [9] (previous version of) OOR API expressed in terms of SOAP / WSDL: http://www.ccs.neu.edu/home/kenb/oor/OORService.wsdl
 * [10] Hets API - http://trac.informatik.uni-bremen.de:8080/hets/wiki/RESTfulInterface