semantic modeling of system requirements lunch presentation @gdmc lieke verhelst msc student for...

Post on 26-Dec-2015

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Semantic modeling of System Requirements

Lunch presentation @GDMC

Lieke Verhelst MSc Student for GIMA

Feb 27th 2009

Problem Area

Figure taken from: "OGC® Sensor Web Enablement: Overview And High Level Architecture",Mike Botts, George Percivall, Carl Reed, John Davidson Eds. OGC, 2007

Examples of ST sensor data• Recordings taken from radiosonde and pilot balloon observations, stored in

the Integrated Global Radiosonde Archive (IGRA).

• Records from the Antarctic Iceberg Tracking Database

• GPS track (Garmin)

#0100120080101002316 56 21100700B 9 10B 31 205 70 10100000 65B 12B 30 205 70 30 95500 -9999 -9999 -9999 215 150

lat: -59.1366 lon: -58.4785 x: 622 y: 2737 file: qush-a-Ant99-202-202.sir backscat: -2.331 contrast: -21.1020 lat: -59.1740 lon: -58.1709 x: 628 y: 2743 file: qush-a-Ant99-203-203.sir backscat: -7.472 contrast: -15.6960 lat: -59.1692 lon: -58.4396 x: 624 y: 2737 file: qush-a-Ant99-204-204.sir backscat: -13.778 contrast: -16.1915

Track Anzere-la Bate-Anzere 10/07/2008 10:05:48 12:14:48 13.2 km 1.1 kph Header Position Time Altitude Depth Leg Length Leg Time Leg Speed Leg Course Trackpoint N46 18 43.6 E7 23 07.0 10/07/2008 10:05:48 2359 m Trackpoint N46 18 45.1 E7 23 08.2 10/07/2008 10:10:25 2359 m 54 m 0:04:37 0.7 kph 28° true Trackpoint N46 18 47.1 E7 23 11.7 10/07/2008 10:13:26 2343 m 97 m 0:03:01 2 kph 51° true Trackpoint N46 18 49.8 E7 23 14.0 10/07/2008 10:14:43 2337 m 97 m 0:01:17 5 kph 30° true

User questions

• “How did the frost line move over the years?”• “Where and when do icebergs a and b collide?” • “Do bikers and hikers get in each other's way in

area x?”• Combinations of:

– Time: • instants or intervals• historic data or real data

– Space:• Point, line, region

Database implementation

• Depends on:– Data set (real time, historic data)– User question (spatial analysis? temporal analysis?)– System requirements (speed, storage)– Available solutions (Oracle, DB2, Informix,

Postgres/GIS, ESRI)

• Involves:– Information analysis (data type, data model)– DBA work (indexes, storage)

MSc Research

• Objective: to provide users of sensor data with guidelines how to choose the right database implementation for their purpose. If possible automate this process.

Research question

• Designing a method that models the concepts of sensor data (e.g. sample frequency, size of data file, structure of sensor data) in order to generate a suitable database implementation

• Apply a weighted qualification to the proposed result

• Automate the process to the DB implementation

How can we model this?

• UML– Via Classes to tables– Via stereotypes and tagged values to index

types– From UML to DDL– …but how to (automatically) guide the user

towards selection of the appropriate implementation? -> expert system

Semantic modeling

Index SolutionFor Speed

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE rdf:RDF [

<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> <!ENTITY kb 'http://protege.stanford.edu/kb#'> <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>

]><rdf:RDF xmlns:rdf="&rdf;"

xmlns:kb="&kb;" xmlns:rdfs="&rdfs;">

<rdfs:Class rdf:about="&kb;Index" rdfs:label="Index"><rdfs:subClassOf rdf:resource="&rdfs;Resource"/>

</rdfs:Class><rdfs:Class rdf:about="&kb;Speed"

rdfs:label="Speed"><rdfs:subClassOf rdf:resource="&rdfs;Resource"/>

</rdfs:Class><rdf:Property rdf:about="&kb;solutionFor"

rdfs:label="solutionFor"><rdfs:domain rdf:resource="&kb;Index"/><rdfs:range rdf:resource="&rdfs;Class"/>

</rdf:Property></rdf:RDF>

OWL

• extended RDF• Constraints, relationships among resources,

cardinality, domain and range restrictions, union, disjunction, inverse, transitive

• OWL–DL based on description logic– existential quantifier , which can be read as “at least

one”, or “some”– universal quantifier , which can be read as “only”

• rules (!!)

Research work Steps

1. Create OWL-DL ontology

2. Apply logic & rules

3. Generate DDL

4. Implement in DB

Software Used

1. Create OWL-DL ontology (Protégé)

2. Apply logic & rules (Pellet or Racer, Jess, JessTab)

3. Generate DDL (OWL->UML->DDL, Poseidon, Eclipse)

4. Implement in DB

DEMOS

2. Demonstrate use of rule engine

1. Demonstrate how reasoner can categorize instance to predefined class

top related