Skip to content

Project Ontologies

I have located two Ontologies that can be used as a basis for my project. One is the Cognitive Radio Ontology developed by Rachel Li and Mitch Kokar of Northeastern University as part of an effort by the Wireless Innovation Forum work on CR, the other is a policy ontology called Kaos that is close to what I need but will have to be modified possibly to meet my requirements.

I loded both into Protege and am working with them as is until I se an issue.

Here is a diagram of the CRontology(one shows the radio component):

Here is the diagram of the Kaos ontology for policy.


Project Presentation

On Tuesday, November 1st I gave my presentation as well as a few others in the class. It is about Dynamic Spectrum Access Policy and connecting to a White Space database.CEN6930 Project Abstract GRANDEr1 is my project abstract. This is my presentation link. DSAprojectCOT6930.

If anyone has any questions, let me know.

This work is related to an IEEE standardization effort called DySPAN P1900.5.1.  Below is information that can be found on this site If you wish to participate please contact me at



The P1900.5 standard defines a vendor-independent set of policy-based control architectures and corresponding policy language requirements for managing the functionality and behavior of dynamic spectrum access networks.


The purpose of this standard is to define policy language and associated architecture requirements for interoperable, vendor-independent control of Dynamic Spectrum Access functionality and behavior in radio systems and wireless networks. This standard will also define the relationship of policy language and architecture to the needs of at least the following constituencies: the regulator, the operator, the user, and the network equipment manufacturer.

Future work and Outreach

Current status of P1900.5 is that the draft standard is in sponsor ballot process with the intention that it be published by end of 2011.

New work to be be done:
P1900.5.1: Draft Standard Policy Language for Dynamic Spectrum Access Systems. PAR is in approval process. Scope: This standard defines a vendor-independent policy language for managing the functionality and behavior of dynamic spectrum access networks based on the language requirements defined in the IEEE 1900.5 standard. The standard developed under this PAR will take into consideration both the Policy Language Requirements of IEEE 1900.5 and the results of the Modeling Language for Mobility Work Group (MLM-WG) within the Wireless Innovation Forum (SDRF v2) Committee on Advanced Wireless Networking and Infrastructure. MLM-WG is developing use cases, an ontology, corresponding signaling plan, requirements and technical analysis of the information exchanges that enable next generation communications features such as spectrum awareness and dynamic spectrum adaptation, waveform optimization, capabilities, feature exchanges, and advanced applications. The MLM-WG expects this effort to lead to specifications/standards for languages and data exchange structures to support these capabilities.

Tool Assignment 4: Protege vs. Jena

Protege and Jena both can be used to create ontologies, reason in them and query on the data. But that is where the power of Protege stops. You need to use Jena if you plan on creating a real world application with it. I see Protege as a modeling tool and Jena as the application development aid for ontologies. Protege can be part of the design process. I would think you can use it in your high level design document to show the ontology and relationships before actually creating code.

For example: the Chapter 2 example manipulates the FOAF ontology and additions to it. We created the ontology, relationships, instances of data and then ran the reasoner. You can query it as well. Then we had to move to Jena in Eclipse to create any kind of code to use that ontological data for something significant.

Resulting output is limited in Protege but in Jena you can write code to display the resulting output anyway you want. For example, I could create a policy ontology in Protege, but in Jena I could use the actual ontological objects to display in a GUI so that the user could input their own policies. This could be added to the policy set and  downloaded to components/systems to change configurations. Like security policies that change firewall settings based on network information. This cannot be done with Protege.

Web Services Lecture: Running CiteXplore

I would like to thank Sifat Islam for a very informative lecture on web service CiteXplore for finding his diabetes information. I followed the stpes and had a few different experiences that I would like to share.

The first time I ran the artifact creation line, it gave me a strange error :

wsimport -keep

You are running on JDK6 which comes with JAX-WS 2.1 API, but this tool requires
JAX-WS 2.2 API. Use the endorsed standards override mechanism (http://java.sun.c
om/javase/6/docs/technotes/guides/standards/), or use –Xendorsed option.

I added the -Xendorsed to the commandline and it worked. When it created the artifacts, it created just a list of java and class files in the uk\ac\ebi\cdb\client directory. What I didn’t realize is that Sifat created the file of that directory to add as an external zip in the build path. Once I created the zip file myself and added to build path, the code built correctly.

Then I modified the code as Sifat did and it ran with the correct output of web sites with articles.

I was doing this on a PC with WIndows XP.

Onto the next task……..

Topic Assignment 2: Robotics Ontology

Joe Gundel and Brian Chamba built a robotics ontology in a previous semester and developed an Android App to execute it on an Android smart phone. It si our assignment to see how we could add to the ontology to add value to the user. The link to the original project documentation is :  jgundel_bchamba_Final.pdf . The file is about 4M in size.

 After reading their project report, which I thought was well done and very clear, I thought that maybe some parts of the ontology of the types of robots and their uses would be helpful. Getting more information on the android application about the person using the application could allow us to further customize what type of results this person should see.  Is the user a child or young adult just looking into robotics? Is this and engineer working in the robotics industry? What are the robots used for? So first, I did google searches to find out more about these characterizations. I determined that the current ontology needed extension for more professional robotics learners. So I recreated most of the ontology in Protege and added extensions to cover types of robots, since this is a very wide area. For example, if someone just wants to know about military robots, this would make it easier. I added a class for standards for someone who might want to look up standards agencies for robotics and find related standards. I added History and Societal Issues if someone is interested more in those areas.

Here is an overall view of my additons:

Extensions I made to Robotics Ontology

Here is a view of types:

Breakdown of Types

I will work on this more to determine how to demonstrate it’s effectiveness later.

Topic Assignment 1

The assignment:

This is a quick assignment! Study  section 1.3 in “Algorithms of the Intelligent Web” and blog on the following: For each of the domains identified there (a total  of 6 are discussed under sections 1.3.1 to 1.3.6), identify the three ingredients of an intelligent web (refer to Figure 1.1).
After reading this material I thought it best to create a table of the 3 ingredients of the intelligent web to make it simple to answer this question.
Domain Algorithms Content Reference Structure
Social Networking (facebook, myspace)   Links to other people based on profiles and interests entered by user. Media, links and personal information  Categories of Events, Friends, Family, Birthdays, etc
 Mashups (  Used to reconcile similarities and differences of content.  Pulled together from various sources, probably using a web crawler.  Used to interpret meaning of content for categorization.
 Portals Performing tasks on content and filtering duplicates. Stories from many news sites. Used to categorize stories and allow personalization of content.
 Wiki’s Linking of articles. Aggregate content from internet or intranet pertaining to a specific topic. Used for classification of content. 
 Media Sharing Sites (napster, youtube) Specific file content requires special binary processing to add value to content.  Usually just video or audio files.  Used for categorixation and hierarchy.
 Online gaming To define hierarchy and level of sophistication for players. Input of human players. Used to reflect rules of game.

In summary, the content is many times geographically dispersed and dynamic but the pieces are linked in some way. The reference structure is important to bring meaning to the data. If we can’t categorize the data then we cannot tailor it for the user, then we just have a bunch of useless information. Ontologies are very important as a reference structure to add value to all the content. Previous ways of doing this was through XML tags that gave some meaning to the content. And lastly, the algorithms are what add the intelligence to be able to see the data for what it is and make decisions on how to use it based on profiles and types of domain. This is where the rubber meets the road. In semantic web this is the work of the reasoner.

Sorry for this late posting…my uverse connection has been horrible for the past week and I dread the phone call I will have to have with AT&T. 😦

Thank you for reading…..

OPCAT tool discussion

It was suggested that I take a look at the OPCAT tool that resides in the software tools folder. This is a UML-like modeling tool that allows you to model your system and create systems diagrams. It uses the same terminology as Protege but may be a little more straightforward pictorially. It uses Object Process Methodology (OPM) is used for concetual modeling of complex systems. It creates Object Process Diagrams (OPD) showing a graphical view of the system, its hierarchy and relationships. Its ontology contains entities and links.

I installed OPCAT and looked at some of the examples like ATM, below is a diagram of an ATM system.

OPCAT ATM example

Then I took a look at the manual to determine what this tool does and the manual has an example of the ‘Onstar’ system found in GM cars. A shortcut file that is very helpful is the symbols.pdf file located in the same area in Blackboard where the Opcat installation is.  The entities are object, process and state. This looks like a freeware tool that could parallel many of the software and system modeling tools that we use in industry. I am currently using Rhapsody that was created by Telelogic but is now owned by IBM.

I am doing my project on creating a Policy Ontology that fits the requirements of the IEEE DySPAN P1900.5 specification that is due to be published soon. I am the chair of the working group creating this so I have the information of requirements. I shall use my project as an input contribution to the IEEE DySPAN P1900.5.1 standard which is due to create a policy language for dynamic spectrum access systems (radio related).

Here is the beginning of my work with this:

Starting a new Object Process Diagram with "things" created.

Note the SD (system diagram) and the window below which is called OPL Generator that looks as though a reasoner is running to create the relationships.

I will continue creating a diagram and report back at a later date.

Dr Shankar and Sifat Islam and I discussed this tool and decided that I could try a simple conversion from what this tool exports to rdf/xml for protege. I will be working on that shortly.