OpenOntologyRepository: Architecture & API Workshop-VIII - Tue 2011_10_11    (2XH1)

Topic: "OOR Architecture & API Specification Development Workshop-VIII"    (2XH2)

Session Co-chairs: KenBaclawski & ToddSchneider    (2XH3)

Conference Call Details:    (2XH4)

Attendees    (2XI3)

Agenda Ideas:    (2XID)

please insert any additional items below (along with your name for follow-up purposes)    (2XIE)

Abstract:    (2XIL)

As a result of the two OOR Architecture and API panel sessions back in Oct & Nov-2010, we have been exposed to a large number of architecture and API candidates for ontology repositories. We have had requirements for the OOR, at least in broad outline form, since the Ontology Summit 2008. We have been running an OOR sandbox based on BioPortal. Most recently, we have forked from the BioPortal code base with the intention of proceeding separately with the development of a reference implementation.    (2XIM)

At this series of meetings, we are going through the process of producing the actual OOR specification. It will be run as a workshop where the straw man proposal will be discussed and modified as needed.    (2XIN)

The various architectures and APIs for ontology repositories presented for consideration are available at OpenOntologyRepository_Architecture    (2XIO)

Here is the straw man architecture: OpenOntologyRepository_Architecture/Candidate03    (2XIP)

In addition, there is an API of the core services that was obtained from BioPortal, which is not entirely compatible with the straw man architecture, but furnishes a starting point. This API will also be discussed and modified as needed.    (2XIQ)

Here is the API expressed in WSDL: http://www.ccs.neu.edu/home/kenb/oor/OORService.wsdl    (2XIR)

Here is the API expressed in Java: http://www.ccs.neu.edu/home/kenb/oor/OORI.java    (2XIS)

Finally, we need to agree on a plan for completing the development of the specification.    (2XIT)

Here is the proposed organizing plan: OpenOntologyRepository_Architecture/GettingOrganized    (2XIU)

We encourage all participants to update your candidate contributions to ensure your ideas are known and understood.    (2XIV)

The following are relevant prior meetings:    (2XIW)

Agenda & Proceedings    (2XJ8)

Archives:    (2XJ9)

1. Meeting called to order:    (2XJC)

2. Roll Call & Adoption of last meeting's minutes:    (2XJG)

3. Key items for review and discussion today:    (2XJK)

... items below are mostly from the previous workshop, and will be updated as this session progresses.    (2XJM)

 --- Chat transcript begin: ---    (2XK7)
	Welcome to the OpenOntologyRepository: Architecture & API Workshop-VIII - Tue 2011_10_11    (2XR4)
	Session co-Chairs: KenBaclawski & ToddSchneider    (2XR5)
	see session page at: http://ontolog.cim3.net/cgi-bin/wiki.pl?OOR/ConferenceCall_2011_10_11    (2XR6)
	== Proceedings: ==    (2XR7)
	ToddSchneider: Here's where we are at, in terms of consensus arrived at from the 
                       previous "OOR Architecture and API" workshops:    (2XR8)
	    0) The interface for searching ontology metadata will consist of a single method
	    0.a) The method will have a single parameter consisting of a SPARQL query.    
	    0.b) The return value of the method will be a SPARQL result set.
	    0.c) Metadata will be represented using a named RDF graph.         
	    0.d) Metadata will be based on an extension of OMV.    
	         o The OMV extension may include a notion of domain specification or 
	           topics, represented as text.   
	    0.e) Metadata will be federated, so it is a single named RDF graph, no matter 
	         how many OOR instances there are. pics, represented as text.   
	    0.f) Metadata will be federated, so it is a single named RDF graph, no matter 
	         how many OOR instances there are.    (2XR9)
	1) Each OOR instance must declare the representation language module it supports.    (2XRA)
	2) Every OOR shall support RDFS    (2XRB)
	3) Quality and Gatekeeping. We distinguish between gatekeeping and quality control.    (2XRC)
	   Definition: Gatekeeping specifies the a set of minimal requirements that any
	               ontology within the OOR has to meet. The latter are intended to 
	               enable the users of the OOR to find quickly ontologies that fit 
	               their needs; the criteria do not ensure the quality of the ontologies.    (2XRD)
	   3.a) Gatekeeping will vet the metadata associated with an ontology to ensure
	        entrance criteria are met.
	   3.b) For each metadata attribute, it will be specified whether it is required 
	        or optional.    (2XRE)
	        3.b.i)   It MUST be specified whether the ontology is available (or to be
	                 available in the future).  
	        3.b.ii)  The ontology language MUST be specified.   
	        3.b.iii) Other attributes will be handled offline by Michael Gruninger 
	                 based on the OMV specification.    (2XRF)
	   3.c) An ontology must satisfy other requirements depending on the ontology
	        language.    (2XRG)
	   3.d) Syntax checking is always required and the responsibility of the language
	        module    (2XRH)
	   3.e) Consistency checking is required with some time limit.    (2XRI)
	   3.f) Gatekeeping criteria will include an attribute to indicate whether the
	        ontology exists or the metadata represents an advertisement.    (2XRJ)
	   3.g) The location of the actual ontology is the responsibility of Administration.    (2XRK)
	   3.h) Metadata needs to include an attribute for the 'availability' of the ontology    (2XRL)
	   3.i) 'Location' of the ontology must be provided.    (2XRM)
	   3.j) The representation language of the ontology is a required attribute.    (2XRN)
	   3.k) Michael will provide a preliminary list of required metadata attributes.    (2XRO)
	   3.l) Submission process will be asynchronous    (2XRP)
	PeterYim: moving us forward ...    (2XRR)
	PeterYim: now that we have the partitioning (architecturally), we need to adopt a 
                  development platform (say, something like "eclipse"), and start having 
                  team members claim ownership to developing specific modules    (2XRS)
	KenBaclawski: Look at http://www.eclipse.org/stp/    (2XRT)
	ToddSchneider: http://ontolog.cim3.net/cgi-bin/wiki.pl?OpenOntologyRepository_Architecture/Candidate03    (2XRU)
	PeterYim: also (important), please refer to the BioPortal "tab" implementation details 
                  - see: http://palexander.posterous.com/extending-bioportals-rails-ui    (2XRV)
	ToddSchneider: The 'administration' module is responsible for advertising which 
                       representation languages an instance supports.    (2XRW)
	PeterYim: All: we might want to partition some of the work to sizes that fit, 
                       say, work by a student in 3-months (which might mean work that takes 
                       an experienced developer a couple of weekends or a month to do)    (2XRX)
	ToddSchneider: The next Architecture meeting will focus on development platform and work partitioning    (2XRY)
	ToddSchneider: The next meeting will be on Tue 1 November 2011, same time    (2XRZ)
	ToddSchneider: Homework: learn more about the Eclipse and its capabilities; 
                       Read Paul Alexander's page on tabs 
                       - http://palexander.posterous.com/extending-bioportals-rails-ui    (2XS0)
	PeterYim: we'll make that (choice of platform and work partitioning) as the main focus of 
                  our next team meeting (Tue 2011.11.01)    (2XS1)
	ToddSchneider: We need to motivate contributors to provide 'comic' book level descriptions 
                       of their work    (2XS2)
	PeterYim: -- session ended 9:38am --    (2XS3)
 --- Chat transcript end: ---    (2XK8)

Consensus, Conclusions & Follow-up Actions:    (2XK9)

4. Any Other Business:    (2XKA)

5. Action items:    (2XKB)

6. Schedule Next Meeting & Adjourn:    (2XKC)

 --
 notes taken by: PeterYim / 2011.10.11-10:10am PDT
 All participants, please review and edit to enhance accuracy and granularity of the documented proceedings.    (2XKH)

Resources    (2XKI)