Aucun titre de diapositive - Universita' degli Studi di

Download Report

Transcript Aucun titre de diapositive - Universita' degli Studi di

SO2DB
From Symbolic Objects to Database
Donato Malerba – University of Bari, Italy
6-8 October 2003
SO 2DB
The goal of SO2DB module is that of retrieving
individuals with some characteristics described by
a set of SO’s in a relational database and of storing
them in a database table.
6-8 October 2003
ASSO School, Athens
2
SO2DB: INPUT/OUTPUT
INPUT

- sds or xml file containing
symbolic objects
- Access Database
OUTPUT 
an Access Database table reporting
the name of selected symbolic variables and one
record for “single” matching or one record for
“multiple” matchings, according the user selected
option
6-8 October 2003
ASSO School, Athens
3
SO2DB Goal
…
graphically
SO2DB
……
……
……
DB2SO
SOML file
6-8 October 2003
relational database
ASSO School, Athens
relational
data table
4
SO2DB: input / output

Users choose an input SODAS file, from which they select one
or more SO’s, and composing/storing/retrieving/modifying a
query (stored in a XML file) for the description of individuals.
Compute the extension of a
SO (SOs), which was originally
defined on a set , on another
set ' (possibly coincident
Possible if the variable
used to described the
individuals on ' allow to
compute the extension of
with ) of individuals.
the SO (Sos).
…………
matching operators
…………
• Retrieved individuals are stored in a relational
database table.
6-8 October 2003
ASSO School, Athens
5
SO2DB: Matching operators
SO
Boolean
Canonical Matching
Boolean
Probabilistic
Flexible Matching
retrieved
individuals
are
those
whose
canonical
matching
against selected SO
returns 1
6-8 October 2003
ASSO School, Athens
The user may introduce a
threshold T[0, 1[ that
represents the degree of
flexible matching. Retrieved
individuals are those whose
degree of match against
the selected SO’s is greater
than or equal to T.
6
An Example…
SO  [maker_name  {Audi,Bmw}]  [type_fuel  {Gas, Diesel}] 
[body_style  {wagon,sedan}]
'
maker_name
fuel_type
aspiration
num_of_doors
body_style
drive_wheels
alfa-romeo
Gas
Std
two
Rwd
alfa-romeo
Gas
Std
two
convertibl
e
convertibl
alfa-romeo
Gas
Std
two
e
hatchback
Rwd
Audi
Gas
Std
four
sedan
4wd
Audi
Gas
Std
four
wagon
Fwd
Audi
Gas
Turbo
four
sedan
Fwd
Audi
Gas
Turbo
two
hatchback
4wd
Bmw
Gas
Std
two
sedan
Rwd
Bmw
Gas
Std
four
sedan
Rwd
6-8 October 2003
ASSO School, Athens
Rwd
7
… An Example …
SO  [maker_name  {Audi,Bmw}]  [type_fuel  {Gas, Diesel}] 
[body_style  {wagon,sedan}]
We can calculate the extension of A on ' through the SQL
query
SELECT *
FROM Car
WHERE make = “Audi” OR make = “Bmw” AND fueltype = “Gas” OR
fueltype = “Diesel” AND bodystyle = “wagon” OR bodystyle = “sedan”;
maker_name
fuel_type
aspiration
num_of_doors
body_style
drive_wheels
Audi
Gas
Std
four
sedan
4wd
Audi
Gas
Std
four
wagon
Fwd
Audi
Gas
Turbo
four
sedan
Fwd
two Athens
ASSO School,
sedan
Rwd
Bmw
Gas
6-8 October 2003
Std
8
… An Example
'
car name
Cylinders
displacement
horsepower
weight
"chevrolet chevelle malibu"
8
307
130
3504
"dodge challenger se"
8
383
170
3563
"chevrolet monte carlo"
8
400
150
3761
"buick estate wagon (sw)"
8
455
225
3086
"toyota corona mark ii"
4
113
95
2372
"plymouth duster"
6
198
95
2833
"amc hornet"
6
199
97
2774
"ford maverick"
6
200
85
2587
6-8 October 2003
ASSO School, Athens
9
SO2DB: Matching operators
Canonical Matching

SQL query
Flexible Matching

SQL query
6-8 October 2003
ASSO School, Athens
10
Solution:
• Select a set of SO’s;
• Determine the set ' through a database query;
• Establish the association variable names-database
attributes;
• Select a matching function.
• Compute matching
A GUI is developed to support users in
propagating
SO to DB
6-8 October 2003
ASSO School, Athens
11