Upload
maurice-sherman
View
215
Download
0
Tags:
Embed Size (px)
Citation preview
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