Tool for Ontology Paraphrasing, Querying and Visualization on the Semantic Web Project By Senthil Kumar K 200637041 III MCA (SS)‏

Slides:



Advertisements
Similar presentations
Schema Matching and Query Rewriting in Ontology-based Data Integration Zdeňka Linková ICS AS CR Advisor: Július Štuller.
Advertisements

CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
XML: Extensible Markup Language
RDF Schemata (with apologies to the W3C, the plural is not ‘schemas’) CSCI 7818 – Web Technologies 14 November 2001 Van Lepthien.
1 UIM with DAML-S Service Description Team Members: Jean-Yves Ouellet Kevin Lam Yun Xu.
GridVine: Building Internet-Scale Semantic Overlay Networks By Lan Tian.
INSERT BOOK COVER 1Copyright © 2013 Pearson Education, Inc. Publishing as Prentice Hall. Exploring Microsoft Access 2010 by Robert Grauer, Keith Mast,
Unified Modeling Language
2008/03/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
Object-Oriented Analysis and Design
Microsoft Excel 2010 Chapter 7
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
CSE 111: Object Oriented Design. Design “To program is human but to design is divine” (WEH)
1 COS 425: Database and Information Management Systems XML and information exchange.
1 Extracting RDF Data from Unstructured Sources Based on an RDF Target Schema Tim Chartrand Research Supported By NSF.
RDF: Building Block for the Semantic Web Jim Ellenberger UCCS CS5260 Spring 2011.
Semantic Web Presented by: Edward Cheng Wayne Choi Tony Deng Peter Kuc-Pittet Anita Yong.
1/17 RDF Gravity 2/17 Content 1. Introduction  Problem statement and Existing Solutions 3. RDF Gravity 4. Conclusion 5. References.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
17 Apr 2002 XML Stylesheets Andy Clark. What Is It? Extensible Stylesheet Language (XSL) Language for document transformation – Transformation (XSLT)
Wentao He Department of Computer Science University of Toronto Toronto, ON, Canada.
Unified Modeling Language
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
LabVIEW an Introduction
Aurora: A Conceptual Model for Web-content Adaptation to Support the Universal Accessibility of Web-based Services Anita W. Huang, Neel Sundaresan Presented.
1 HTML and CGI Scripting CSC8304 – Computing Environments for Bioinformatics - Lecture 10.
WorkPlace Pro Utilities.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Chapter 8: Writing Graphical User Interfaces
The Semantic Web Web Science Systems Development Spring 2015.
12 Systems Analysis and Design in a Changing World, Fifth Edition.
ONTOLOGY ENGINEERING Lab #1 - August 25, Lab Syllabus 2  Lab 1 – 8/25: Introduction and Overview of Protégé  Lab 2 – 9/8: Building an ontology.
IDB, SNU Dong-Hyuk Im Efficient Computing Deltas between RDF Models using RDFS Entailment Rules (working title)
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Metadata. Generally speaking, metadata are data and information that describe and model data and information For example, a database schema is the metadata.
Dimitrios Skoutas Alkis Simitsis
Semantic Web Ontology Design Pattern Li Ding Department of Computer Science Rensselaer Polytechnic Institute October 3, 2007 Class notes for CSCI-6962.
Systems Analysis and Design in a Changing World, 3rd Edition
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
Lecture 6: Structural Modeling
WDO-It! 101 Workshop: Creating an abstraction of a process UTEP’s Trust Laboratory NDR HP MP.
Semantic Web Exam 1 Review.
Microsoft® Office Visio® Professional 2007 for IT How to Use Visio for Project Management Presenter: Date: 1.
Towards the Semantic Web 6 Generating Ontologies for the Semantic Web: OntoBuilder R.H.P. Engles and T.Ch.Lech 이 은 정
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Tool for Ontology Paraphrasing, Querying and Visualization on the Semantic Web Project By Senthil Kumar K III MCA (SS)‏
Tool for Ontology Paraphrasing, Querying and Visualization on the Semantic Web Project By Senthil Kumar K III MCA (SS)‏
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
Shridhar Bhalerao CMSC 601 Finding Implicit Relations in the Semantic Web.
Class Builder Tutorial Presented By- Amit Singh & Sylendra Prasad.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
A Semantic Web Approach for the Third Provenance Challenge Tetherless World Rensselaer Polytechnic Institute James Michaelis, Li Ding,
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
JavaScript Introduction and Background. 2 Web languages Three formal languages HTML JavaScript CSS Three different tasks Document description Client-side.
Semantic Wiki: Automating the Read, Write, and Reporting functions Chuck Rehberg, Semantic Insights.
Semantic Interoperability in GIS N. L. Sarda Suman Somavarapu.
Ontology Technology applied to Catalogues Paul Kopp.
Rendering XML Documents ©NIITeXtensible Markup Language/Lesson 5/Slide 1 of 46 Objectives In this session, you will learn to: * Define rendering * Identify.
 Problem Analysis  Coding  Debugging  Testing.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
Unified Modeling Language Tutorial
Kenneth Baclawski et. al. PSB /11/7 Sa-Im Shin
What is a Graph? a b c d e V= {a,b,c,d,e} E= {(a,b),(a,c),(a,d),
CC La Web de Datos Primavera 2018 Lecture 8: SPARQL [1.1]
Guidelines for Microsoft® Office 2013
A Semantic Peer-to-Peer Overlay for Web Services Discovery
AI Discovery Template IBM Cloud Architecture Center
Presentation transcript:

Tool for Ontology Paraphrasing, Querying and Visualization on the Semantic Web Project By Senthil Kumar K III MCA (SS)‏

Guides Details

Objective The objective of this project is to develop a tool for Paraphrasing and Querying with Visualization from an ontology.

Block Diagram OWL Graph Construction ParaPhraser Query Processor Visualizer Ontology Owl File OWL Graph Data Structure OWL Graph Data Structure QueryQuery Result Summary

Modules Paraphraser Query Processor Visualizer OWL Graph Constructor

Modules Completed OWL Graph Constructor OWL Graph Visualizer Query Processor

OWL Graph Construction It reads the ontology from the file specified in the URL and loads into ontology model. From the ontology model all the owl elements are converted to Vertices and the relationships are converted to Edges. Adds all the Vertices and Edges to the Graph.

Sample Input : Countries.owl

Sample Output Graph Data Structure CountryIndependentStateIndiaPakistanhasCountryAttribhasPopulation CountrysubClassOfhasInstance IndependentStatesuperClassOf IndiaIndividualOf PakistanIndividualOf hasCountryAttribdomainOf hasPopulationdomainOfsubPropertyOf

Pseudo Code INITIALIZE CLASSES HASH MAP INITIALIZE PROPERTIES HASH MAP INITIALIZE INDIVIDUALS HASH MAP INITIALIZE RELATIONSHIPEDGES HASHMAP LET ANONYMOUSCLASS_SEQ_NO=0 CREATE AN EMPTY GRAPH GET THE FILE URL OF THE OWL FILE IF THE FILE IS AVAILABLE THEN OPEN URL NETWORK CONNECTION TO THE DESTINATION FILE READ THE FILE CONTENTS INTO THE ONTOLOGY MODEL FROM THE REMOTE STREAM FOR EACH CLASS IN THE CLASSES AVAILABLE IN THE ONTOLOGY MODEL IF THAT CLASS IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT CLASS AS ITS COMPONENT PUT THE OWLVERTEX IN THE CLASSES HASHMAP ADD THE CREATED OWL VERTEX TO THE GRAPH

Pseudo Code : Contd. FOR EACH SUBCLASS OF THE CURRENT CLASS IF THAT SUBCLASS IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT SUBCLASS AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE CLASSES HASHMAP ELSE GET THE REFERENCE OF THE SUBCLASS VERTEX FROM THE CLASSES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN CLASS VERTEX AND SUBCLASSVERTEX CREATE AN EDGE BETWEEN THE CLASS VERTEX AND SUBCLASSVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR FOR EACH EQUIVALENTCLASS OF THE CURRENT CLASS IF THAT EQUIVALENTCLASS IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT EQUIVALENTCLASS AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE CLASSES HASHMAP

Pseudo Code ELSE GET THE REFERENCE OF THE SUBCLASS VERTEX FROM THE CLASSES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN CLASS VERTEX AND SUBCLASSVERTEX CREATE AN EDGE BETWEEN THE CLASS VERTEX AND SUBCLASSVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR FOR EACH SUPERCLASS OF THE CURRENT CLASS IF THAT SUPERCLASS IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT SUPERCLASS AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE CLASSES HASHMAP ELSE GET THE REFERENCE OF THE SUPERCLASS VERTEX FROM THE CLASSES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN CLASS VERTEX AND SUBCLASSVERTEX CREATE AN EDGE BETWEEN THE CLASS VERTEX AND SUBCLASSVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR

Pseudo Code : Contd. FOR EACH COMPLEMENTOF TYPE CLASS OF THE CURRENT CLASS IF THAT COMPLEMENTOF TYPE IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT COMPLEMENTOF TYPE CLASS AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE CLASSES HASHMAP ELSE GET THE REFERENCE OF THE COMPLEMENTOF TYPE CLASS VERTEX FROM THE CLASSES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN CLASS VERTEX AND SUBCLASSVERTEX CREATE AN EDGE BETWEEN THE CLASS VERTEX AND SUBCLASSVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR CRAETE AN ANONYMOUS CLASS TYPE OWL VERTEX WITH ANONYMOUS_SEQ_NO AS LABEL LET ANONYMOUS_SEQ_N0=ANONYMOUS_SEQ_NO + 1 FOR EACH INTERSECTIONOF TYPE CLASS OF THE CURRENT CLASS IF THAT INTERSECTIONOF TYPE CLASS IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT INTERSECTIONOF TYPE AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE CLASSES HASHMAP ELSE

Pseudo Code : Contd. GET THE REFERENCE OF THAT INTERSECTIONOF TYPE CLASS FROM THE CLASSES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN CLASS VERTEX AND ANONYMOUS CLASSVERTEX CREATE AN EDGE BETWEEN THE CLASS VERTEX AND ANONYMOUS CLASSVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGE HASHMAP END IF NEXT FOR CREATE AN RELATIONSHIP EDGE BETWEEN OWL CLASS VERTEX AND THE ANONYMOUS CLASS VERTEX PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP CRAETE AN ANONYMOUS CLASS TYPE OWL VERTEX WITH ANONYMOUS_SEQ_NO AS LABEL LET ANONYMOUS_SEQ_N0=ANONYMOUS_SEQ_NO + 1 FOR EACH INTERSECTIONOF TYPE CLASS OF THE CURRENT CLASS IF THAT INTERSECTIONOF TYPE CLASS IS NOT AVAILABLE IN THE CLASSES HASH MAP THEN CREATE A OWL VERTEX WITH THAT INTERSECTIONOF TYPE AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE CLASSES HASHMAP ELSE GET THE REFERENCE OF THAT INTERSECTIONOF TYPE CLASS FROM THE CLASSES HASHMAP END IF

Pseudo Code : Contd. IF NO RELATIONSHIP EDGE EXISTS BETWEEN CLASS VERTEX AND ANONYMOUS CLASSVERTEX CREATE AN EDGE BETWEEN THE CLASS VERTEX AND ANONYMOUS CLASSVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGEMAP END IF NEXT FOR CREATE AN RELATIONSHIP EDGE BETWEEN OWL CLASS VERTEX AND THE ANONYMOUS CLASS VERTEX PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR FOR EACH PROPERTY IN THE PROPERTIES AVAILABLE IN THE ONTOLOGY MODEL IF THAT PROPERTY IS NOT AVAILABLE IN THE PROPERTIES HASH MAP THEN CREATE A OWL VERTEX WITH THAT PROPERTY AS ITS COMPONENT PUT THE OWLVERTEX IN THE PROPERTIES HASHMAP ADD THE CREATED OWL VERTEX TO THE GRAPH GET THE REFRENCE OF THE DOMAIN CLASS OF THE PROPERTY FROM THE CLASSES HASHMAP CREATE AN RELATIONSHIP EDGE BETWEEN PROPERTY AND THE DOMAIN CLASS PUT THE RELATIONSHIPS EDGE INTO THE EDGES HASHMAP

Pseudo Code : Contd. FOR EACH SUBPROPERTY OF THE CURRENT PROPERTY IF THAT SUBPROPERTY IS NOT AVAILABLE IN THE PROPERTIES HASH MAP THEN CREATE A OWL VERTEX WITH THAT SUBPROPERTY AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE PROPERTIES HASHMAP ELSE GET THE REFERENCE OF THE SUBPROPERTY VERTEX FROM THE PROPERTIES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN PROPERTY VERTEX AND SUBPROPERTYVERTEX CREATE A RELATIONSHIP EDGE BETWEEN THE PROPERTY VERTEX AND SUBPROPERTYVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR FOR EACH EQUIVALENTPROPERTY OF THE CURRENT PROPERTY IF THAT EQUIVALENTPROPERTY IS NOT AVAILABLE IN THE PROPERTIES HASH MAP THEN CREATE A OWL VERTEX WITH THAT EQUIVALENTPROPERTY AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE PROPERTIES HASHMAP ELSE GET THE REFERENCE OF THE SUBPROPERTY VERTEX FROM THE PROPERTIES HASHMAP END IF

Pseudo Code : Contd. IF NO RELATIONSHIP EDGE EXISTS BETWEEN PROPERTY VERTEX AND SUBPROPERTY VERTEX CREATE A RELATIONSHIP EDGE BETWEEN THE PROPERTY VERTEX AND SUBPROPERTYVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR FOR EACH SUPERPROPERTY OF THE CURRENT PROPERTY IF THAT SUPERPROPERTY IS NOT AVAILABLE IN THE PROPERTIES HASH MAP THEN CREATE A OWL VERTEX WITH THAT SUPERPROPERTY AS ITS COMPONENT ADD THE CREATED OWL VERTEX TO THE GRAPH PUT THE OWLVERTEX IN THE PROPERTIES HASHMAP ELSE GET THE REFERENCE OF THE SUPERPROPERTY VERTEX FROM THE PROPERTIES HASHMAP END IF IF NO RELATIONSHIP EDGE EXISTS BETWEEN PROPERTY VERTEX AND SUBPROPERTYVERTEX CREATE A RELATIONSHIP EDGE BETWEEN THE PROPERTY VERTEX AND SUBPROPERTYVERTEX ADD THAT RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE RELATIONSHIP EDGES HASHMAP END IF NEXT FOR END IF NEXT FOR

Pseudo Code : Contd. FOR EACH INDIVIDUAL IN THE INDIVIDUALS AVAILABLE IN THE ONTOLOGY MODEL IF THAT INDIVIDUAL IS NOT AVAILABLE IN THE PROPERTIES HASH MAP THEN CREATE A OWL VERTEX WITH THAT INDIVIDUAL AS ITS COMPONENT PUT THE OWLVERTEX IN THE INDIVIDUALS HASHMAP ADD THE CREATED OWL VERTEX TO THE GRAPH GET THE REFERENCE OF CLASS OF THE INDIVIDUAL FROM THE CLASSES HASHMAP CREATE AN RELATIONSHIP EDGE BETWEEN INDIVIDUAL AND THE CLASS VERTEX ADD THE RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIPS EDGE INTO THE EDGES HASHMAP END IF FOR EACH PROPERTVALUE OF THE INDIVIDUAL CREATE LITERAL VERTEX ADD THE CREATED LITERAL VERTEX TO THE GRAPH CREATE A RELATIONSHIP EDGE BETWEEN THE INDIVIDUAL AND THE LITERAL VERTEX ADD THE RELATIONSHIP EDGE TO THE GRAPH PUT THE RELATIONSHIP EDGE INTO THE EDGES HASHMAP NEXT FOR END IF

Visualizer Renders the graph by following a layout. Maps the Icons to be used for each owl graph vertex. Maps the arrow styles for each edge based on the relationship type. Maps the labels for each of the owl vertices and owl edges with local names of owl elements and the type of relationship.

Sample Input: CountryIndependentStateIndiaPakistanhasCountryAttr ib hasPopulation CountrysubClassOfhasInstance IndependentStatesuperClassOf IndiaIndividualOf PakistanIndividualOf hasCountryAttribdomainOf hasPopulationdomainOfsubPropertyOf Graph Data Structure

Sample Output: C C Country Independent State II IndiaPakistan SubClassOf IndividualOf P P hasPopulation hasCountryAttrib domain SubPropertyOf

Pseudo Code: IF GRAPH IS NOT EMPTY FOR EACH OWL VERTEX IN OWL GRAPH SWITCH(OWLVERTEX) CASE OWLCLASS: MAP IT TO CLASS ICON SET CLASS LOCALNAME AS LABEL OF THE VERTEX CASE OWLPROPERTY MAP IT TO PROPERTY ICON SET PROPERTY LOCALNAME AS LABEL OF THE VERTEX CASE OWLINDIVIDUAL MAP IT TO INDIVIDUAL ICON SET INDIVIDUAL LOCALNAME AS LABEL OF THE VERTEX CASE OWLLITERAL MAP IT TO LITERAL ICON SET LITERAL LOCALNAME AS LABEL OF THE VERTEX CASE ANONYMOUSS CLASS MAP IT TO ANONYMOUS CLASS ICON SET ANONYMOUS CLASS SEQUENCE NUMBER AS LABEL OF THE VERTEX CASE ELSE MAP IT TO UNKNOWN ICON SET IT TO "UNKNOWN" AS LABEL FOR THE VERTEX END SWITCH NEXT FOR

Pseudo Code: Contd. FOR EACH RELATIONSHIP EDGE IN GRAPH SOURCE = SOURCE OWL VERTEX OF RELATIONSHIP EDGE DEST= SOURCE OWL VERTEX OF RELATIONSHIP EDGE IF(SOURCE IS OWL CLASS AND DEST IS OWL CLASS) SWITCH (RELATIONSHIP) CASE "SUBCLASSOF" MAP THE EDGE TO SUB-CLASS ARROW ICON SET THE EDGE LABEL AS "SUB-CLASS-OF" CASE "SUPERCLASSOF" MAP THE EDGE TO SUPER-CLASS ARROW ICON SET THE EDGE LABEL AS "SUPER-CLASS-OF" CASE "EQUIVALENTOF" MAP THE EDGE TO EQUIVALENT-CLASS ARROW ICON SET THE EDGE LABEL AS "SUPER-CLASS-OF" ……. END SWITCH END IF IF(SOURCE IS OWL PROPERTY AND DEST IS OWL CLASS || SOURCE IS OWLCLASS AND DEST IS OWLPROPERTY) SWITCH (RELATIONSHIP) CASE "SUBPROPERTOF" MAP THE EDGE TO SUB-PROPERTY ARROW ICON SET THE EDGE LABEL AS "SUB-PROPERTY-OF"

Pseudo Code: Contd. CASE "SUPERPROPERTYOF" MAP THE EDGE TO SUPER-PROPERTY ARROW ICON SET THE EDGE LABEL AS "SUPER-PROPERTY-OF" CASE "EQUIVALENTPROPERTY" MAP THE EDGE TO EQUIVALENT-PROPERTY ARROW ICON SET THE EDGE LABEL AS "SUPER-PROPERTY-OF". END SWITCH END IF IF(SOURCE IS CLASS AND DEST IS INDIVIDUAL) MAP THE EDGE TO INDIVIDUAL-OF icon SET THE LABEL OF THE EDGE AS "INDIVIDUAL-OF" END IF SET THE OWLEDGE FONT DRAW THE GRAPH BY APPLYING A LAYOUT NEXT FOR END IF

Actual Output of the Project: for Camera.owl

Query Processor Validates the SPARQL query and executes it on the query engine. Renders the textual output on the screen Creates filters to apply the conditions specified in the query. Traverses the graph and applies all the filters created then results a sub-graph.

Query Processor: Pseudo Code Initialize Result Vertex Set with no Elements. Get SPARQL query from the user Validate the query If valid then Create a Query Object using the query string Get the reference of the target ontology model Create a Query Execution object for the ontology model Find the type of Query Switch (type of Query) Case “Ask” Execute the Query with ASK construct Show the status of the Result Return from the function Case “Select” Execute the Query with SELECT construct Get the Result Set from the query engine Iterate over the Result Set For each statement in the result set

Query Processor: Pseudo Code Find the URI of the resource If URI Key has value in hash map then Find the corresponding vertex from the owl elements hash map. Put that vertex in a result vertex set. End if Case “Construct” or “Describe” Execute the Query with specified construct Get the RDF Model For each resource in the RDF Model Get the URI of the resource Get the Vertex corresponding to that resource from owl elements hash map. Next for End Switch Output the textual result to the Text Box. Create an Empty Filter Get the Vertex Set of the Graph Create an Empy Un AssembledGraph For each vertex on the result vertex set If that vertex is not available then Remove that vertex from the Graph Vertex Set End if Next for Get the main owl graph reference Copy the owl graph to a new owl graph

Query Processor: Pseudo Code While (graph traversal is not done) For each filter in the filters list Apply the filter on the new owl graph Persist to the changes made on the new owl graph Remove the un-used edges. Next for End while Render the resultant owl graph in the same pane. End if

Sample Input: SPARQL Query SELECT ?class ?datatypeProperty WHERE { ?x. ?y }

Textual Output of the Query: x ( ?x = ) ( ?y = ) x ( ?x = ) ( ?y = ) x ( ?x = ) ( ?y = ) x ( ?x = ) ( ?y = ) x ( ?x = ) ( ?y = ) x ( ?x = ) ( ?y = )

Visual Output of the Query

Paraphraser Steps: Document Planning Content Selection : Specify maximum allowed distance in graph. Text Planning : Ordering of facts at various distances. Micro Planning Micro plans are templates with numerous slots and fillers for these slots. Lexicalization : Specify single sentence for each fact. Aggregation : Multiple sentences aggregated to improve readability. Surface Realization Grammar used to fill up missing information.

Paraphraser Algorithm GET THE CONCEPT OR INDIVIDUAL TO FOCUS GET THE DISTANCE TO COVER AROUND THE VERTEX CREATE AN EMPTY SUBGRAPH WHILE(GRAPH TRAVERSAL NOT EVER) ADD NODES OF THE MAIN GRAPH WHICH IS AT DISTANCE OR LESS THAN THE DISTANCE IF AN EDGE(V1,V2) EXISTS AND BOTH V1 AND V2 ARE AT DISTANCE THEN ADD THAT EDGE OF THE MAIN GRAPH TO THE SUB GRAPH END IF END WHILE VISUALIZE THE GRAPH WHILE(GRAPH TRAVERSAL IS NOT OVER) FIND THE FACT THEN MATCH THAT FACT WITH ALREADY CREATED TEMPLATES APPLY THE TEMPLATE TO CREATE SENTENCES. END WHILE AGGREGATE THE SENTENCES INTO PARAGRAPH. VALIDATE THE SENTENCES WITH GRAMMAR. RETURN THE GENERATED SUMMARY

Planned Schedule for the remaining Modules Module Deadline Paraphraser : 11-APR-2009

References 1) OWL Web Ontology Language Guide: 2) SPARQL: 3) “Generating Natural Language Descriptions from OWL Ontologies” - Ion Androutsopoulos1,2 and Dimitrios Galanis1 4) “Speech and Language Processing”, ISBN Daniel Jurafsky and James H.Martin 5) “Systemic Functional Linguistics” - 6) “Systemic Functional Grammar” /Publications/sfg_firststep/SFG%20intro%20New.html 7) “Paraphrasing from ontology”