Ontology support for Swarm

Name: Pavel Vinogradov Email: Pavel.Vinogradov@nixdev.net Date: 21.06.2008 Organization: Swarm Development Group Project Title: Ontology support for Java Swarm Status: This document included new project schedule which updated based on new reuirement and knowledges that i received in process of community bonding period. Synopsis: Main goal of this work - add support for ontology into Swarm framework. Framework must include ability to import ontology from some standard format, use it in model generation and application modeling process. Support for use external ontology, scene visualization and ontology standard improve usability of swarm framework. Simplify model generation, porting and visualization for developers and users. Updated Project Schedule for 14 weeks (26 May-31 August): Interim period (April-May): Deliverable 0 Task: Work on further research about ontology support in Swarm: - More precisely define functionality scope of project - Compare RDF(S) and OWL ontology format, and choice one of them to support - Choice appropriate ontology editor for recommended solution to work with ontology - Work with existing swarm codebase and examples. Determine areas where ontology utilization give valuable benefits for researches Result: Trunk version of Java swarm builded successfully and JHeatbug application works fine. Learn more about ontology standards like OWL and RDF. I'm select OWL standard for my work because it include predicates and axioms for defining class relations. Get experienced in work with Protege ontology editor. week 1-2 (26.05-08.06): Deliverable 1 Task: Create project infrastructure. Update selected Java Swarm application for use new features of java and ant. Mark out ontology part of Jheatbug for further representation on OWL. Rewrite JHeatbug with model classes splited in different package. Result: Project infrastructure created at http://code.google.com/p/gsoc08-onto-swarm/ Jheatbug rewrited with packages and ant-based build system. Now Jheatbug is independent project which contain swarm.jar as lib. week 3-4 (09.06-22.06): Task: Evaluate existing libraries and papers about work with OWL ontology and generation of Java classes. Create simple ant task to generate empty class java model (with proper hierarchy tree) to represent ontology. Evaluate minimum requirements for model generator module to run ontology based Jheatbug. Result: Evaluated OWL-API and Jena libraries. I'm select OWL-API as more structured, simplest and active developed. week 5-6 (23.06-06.07): Deliverable 2, Mid-term evaluations Task: Improve model generator to satisfy minimal requirement for build Jheatbug model. Integrate model generator into Java Swarm template project. Write tutorial about using Java Swarm template project to create new programs. Update project schedule ------------------------------------------------------------------------------------------------- week 7-8 (07.07-17.07): Further improve model generator module to support additional relations and attributes week 9 (18.07-29.07): Russian Linux Fest and Open Source developers conference No work there. I would limited time online in irregular time. week 10-11 (30.07-10.08): Implement UI component to show model representation as tree. week 12 (11.08-17.08): Deliverable N, Pencils down Documentation update. Bug fixes and package builds. Write article about using Java Swarm project template to create new ontology based swarm applications Make r/o branch for Google final evaluation. week 13 (18.08-21.08): Improve model generator module. Research work on further improvements and use cases. week 13-14 (21.08-01.09): Vacation, Final evaluation Small fixes, documentation improvements. [Project home http://code.google.com/p/gsoc08-onto-swarm/] [OWL Protege http://protege.stanford.edu/overview/protege-owl.html] [OWL API http://owlapi.sourceforge.net/]