Chaynika Taneja and Sumit Goswami, DRDO, New Delhi.
With the Semantic web evolving as a next generation of web, developers and researchers have increasingly started using semantic web technologies like Resource Description Framework (RDF) and Web Ontology Language (OWL) for creating web documents and ontologies. Semantic Works from Altova (Ref: Altova Inc., USA) is one useful development environment that allows developers to create, edit and visualize RDF documents and OWL ontologies visually. The user friendly GUI makes it easier to generate ontologies and since the RDF/OWL code is automatically generated, the user can concentrate on the concepts alone without going through the pain of complex code writing. The article describes the process flow for creating an OWL Ontology in Semantic Works.
The tool may be downloaded from Altova's site (http://www.altova.com/) and installed on a PC with Windows XP or higher.
Fig 1 shows the main interface of the tool. The console has 3 windows
- The main window shows the document being edited. The view may be toggled between the OWL view which is the graphical view and the Text view which shows the generated code. It also contains menus for creating classes, properties, instances, etc.
- The Overview window gives a miniature view of whatever is being edited in the main window.
- The Error window shows the results of the syntax and semantic checks.
The flowchart as shown in Figure 2 describes the process for creating an OWL Ontology from scratch.
Each step of the flowchart is explained herewith with an example to build a sample ontology of Network Components in a Datacentre
1. Create an Ontology File
The first step is to open a new file (say network_centre.owl) and select the OWL level. The editor has an option of specifying the format i.e. OWL or RDF as well as the OWL level in the toolbar of the main window. The available levels are RDF, RDFS, OWL Lite, OWL DL and OWL Full. OWL has three sublanguages i.e. OWL Lite, OWL DL and OWL Full in increasing order of expressiveness and complexity. The user may choose any of these depending on his requirement and nature of the semantic web application.
2. Create URI Prefixes
Once the file has been created, namespaces are declared. This associates certain prefixes to Uniform Resource Identifiers (URIs) on the web. All the other elements are subsequently allotted URIs automatically. We can also include some existing ontologies so that they may be used again. Prefixes are created for the ontology to refer to it at some later stage. For example, for the Network Components Ontology, which is the sample ontology being used as an example here, a prefix named “cen” is used.
3. Create Classes
To start defining the ontology, classes are created. One class may be defined as the subclass of the other and so on. For the Network Components ontology, some of the classes that we have created in the example are:
- Network Components
Once classes are created, they are linked to each other as shown in Fig 3 and a hierarchy of classes is defined. In the detail tab of each class, additional information may be added to add semantics like instances of the class, related properties, etc.
4. Defining properties
Properties are created and then linked to various classes. Properties may be of different types like Object Property, Data type property, etc. Once a property is created, its domain and range is defined in the Details tab thereby linking it to classes. For example in the sample ontology, an Object property called “ManufacturedBy” is created. Its domain will be the class to which it is to be applied i.e. the class “Hardware”. The range will be an array of classes say [ 'CISCO', 'JUNIPER' ]
5. Defining Instances of Classes
Instances of different classes are defined next. Instances may also be assigned properties to enhance their semantics . Example “CISCO 7604” may be defined as an instance of the class “Router”. It will be assigned a property “ManufacturedBy” with a value of “CISCO”
6. Verify the ontology
Once the ontology is created, it is verified by the software automatically by checking both its syntax and semantics. If the ontology is found correct, it displays a message in the error window that the ontology is well formed and at least partially consistent.
7. Exporting the ontology
The ontology may be exported in either OWL or XML (Extensible Markup Language) formats. The code for the visually modelled ontology is automatically created and is shown in Fig 4. The visual ontology may also be saved as a diagram.
This easy to use tool is a boon for Semantic web developers as well as students and researchers working in this field. It requires minimal knowledge of programming and allows one to experiment with ontologies hence making it a popular Semantic Web tool.