SlideShare a Scribd company logo
1 of 31
Download to read offline
Lorenzino Vaccari, Pavel Shvaiko, Maurizio Marchese,
DISI Department
University of Trento, Italy
email: vaccari/pavel/marchese@disi.unitn.it
An emergent semantics approach
to integration of GI in SDI
GSDI10 - Tenth International Conference for Spatial Data Infrastructure
St. Augustine, Trinidad - February 25-29, 2008
Overview
• Context
• GI Interoperability Issues
• Emergent GI Semantics
• Structure Preserving Semantic
Matching
– Geo-Services Example
– Preliminary Results
• Conclusion and Future Work
Context
• Sharing GI between different stakeholders
• International, National and Local
initiatives. E.g.:
– INSPIRE
– The Italian “Intesa Stato-Regioni”
• Spatial Data Infrastructure adoption
– Geo-Data Integration
– Geo-Services Discovery and Coordination
GI Interoperability Issues
•  Geo-Data Integration
–  Physical Format
–  Production process
–  Different Resolution
–  Different Schemas/
Ontologies
•  Geo-services
interoperability
–  Geo-services discovery and
coordination
–  Technological solutions: SOA
and OGC specifications.
–  Semantic heterogeneity of
geo-services
Emergent GI Semantics
•  Our approach to improve GI
interoperability is based on:
–  The Structure Preserving Semantic
Matching (SPSM) algorithm
•  Emergent GI semantics
–  We store the matching results to use them
for the following interactions
?
Semantic heterogeneity of Geo-
Services
getMap(
–  Dimension(Width,
Height),
–  MapFile,
–  Edition,
–  Layers,
–  DataFormat,
–  Xmin, Ymin,
Xmax, Ymax)
getMap(
–  MapFile,
–  Version,
–  Layers,
–  Width,
–  Height,
–  Format,
–  XMin_BB, YMin_BB,
XMax_BB, YMax_BB)
SPSM
?
Information sources (e.g., schemas, ontologies, web
service descriptions) can be viewed as graph-like
structures containing terms and their inter-
relationships
Matching takes two graph-like structures and
produces a set of correspondences between the
semantically related nodes of those graphs
Structure preserving semantic matching finds
correspondences between semantically related nodes
of the graphs, still preserving a set of structural
properties (e.g., vertical ordering of nodes)
Structure Preserving Semantic
Matching
getMap(MapFile, Version, Layers, Width, Height, Format, XMin_BB,
YMin_BB, XMax_BB, YMax_BB)
getMap(Dimension(Width, Height), MapFile, Edition, Layers, DataFormat,
Request, Xmin, Ymin, Xmax, Ymax)
SPSM(T1,T2) = 0.38+ set of correspondences
Example from Geo-Services
getMap
MapFile
Version
Layers
Width
Height
T1
Format
Xmin_BB
Ymin_BB
Xmax_BB
Ymax_BB
DataFormat
getMap
Dimension
Width
Edition
MapFile
Height
Layers
T2
Request
Xmin
Ymin
Xmax
Ymax
Characteristics of matching
•  Returns:
–  global similarity between two trees in [0 1]
–  a set of correspondences
•  Approximation is on two levels:
–  Node (S-Match)
–  Structure
•  Provides one-to-one node
correspondences
–  Functions are matched to functions
–  Variables are matched to variables
Predicate (Pd):
―  Two or more predicates are merged, typically to the least
general generalization in the predicate type hierarchy
―  Height(X) + Dimension(X) → Dimension (X)
Domain (D):
―  Two or more terms are merged, typically by moving the
functions or constants to the least general generalization
in the domain type hierarchy
―  Xmin_BB + Xmin → Xmin
Propositional (P):
―  One or more arguments are dropped
―  Layers (L1) → Layers
Composition example:
―  Height (X) ⊑P Height ⊑D Dimension
Abstraction operations (AO)
Node matching: two nodes n1 and n2 in trees T1 and T2
approximately match if and only if:
c@n1 R c@n2 holds (based on S-Match), where:
―  c@n1 and c@n2 are the concepts at nodes n1 and
n2
―  R ∈ {=, ⊑, ⊒, idk}
―  Version = Edition, Xmin_BB ⊑ Xmin
Tree matching: two trees T1 and T2 approximately match if
and only if there is at least one node n1 in T1 and one node n2
in T2 such that:
―  n1 approximately matches n2
―  All ancestors of n1 are approximately matched to the
ancestors of n2
―  Horizontal order of siblings is not preserved (in most
of the cases)
Approximate SPSM
Key idea: use abstractions/refinements (standing for
relations of a correspondence) as tree edit distance
operations in order to estimate the similarity of two given trees
Tree edit distance (TED): the minimum number of tree edit
operations (node insertion, deletion, replacement) required
to transform one tree to another. We want to:
―  Minimize the editing cost, i.e., computation of the
minimal cost composition of abstraction/refinement
operations
―  Allow only those tree edit operations that have their
abstraction theoretic counterparts
Tree edit distance
AO TED operation Preconditions Cost= Cost⊑ Cost⊒
n1⊒Pd n2 replace(a, b)
a ⊒ b; a and b correspond to
predicates
1 ∞ 1
n1⊒D n2 replace(a, b)
a ⊒ b; a and b correspond to
functions, …
1 ∞ 1
n1⊒P n2 insert(a)
a corresponds to predicate,
function, …
1 ∞ 1
n1⊑Pd n2 replace(a, b)
a ⊑ b; a and b correspond to
predicates
1 1 ∞
n1⊑D n2 replace(a, b)
a ⊑ b; a and b correspond to
functions, …
1 1 ∞
n1⊑P n2 delete(a)
a corresponds to predicate,
function, …
1 1 ∞
n1= n2 replace(a, b)
a = b; corresponds to
predicate, …
0 0 0
TED operations and costs
Example from Geo-Services (cont’d)
getMap
MapFile
Version
Layers
Width
Height
T1
Format
Xmin_BB
Ymin_BB
Xmax_BB
Ymax_BB
DataFormat
getMap
Dimension
Width
Edition
MapFile
Height
Layers
T2
Request
Xmin
Ymin
Xmax
Ymax
1
2
3
4
5
6
7
8
10
9
11
1
2
3
4
5
6
7
8
10
9
11
12
13
Preliminary evaluation
Synthesized datasets (hundreds of trees) from various
versions of SUMO and AKT ontologies and Brown Corpus
lexicon. E.g.:
journal(periodical_publication) vs. magazine(periodical-publication)
flowers_Michigan(northern, Whisky) vs. flowers_Michigan(Whisky, bourbon)
Measures
Precision, Recall, F-measure, Time
Results on a standard laptop (Core Duo CPU - 2Hz,
2GB RAM, Windows Vista):
 average F-measure = 0.78
 average execution time = 93ms
SPSM for Geo-services
―  Geo-Services and Geo-data heterogeneity
―  Geo-Service use case (GetMap)
―  Node matching of S-Match
―  Structure preserving matching based on theory of
abstraction and tree edit distance
―  Preliminary evaluation with encouraging results
Future work
―  Conducting an extensive evaluation
―  Extending the matching approach for dealing with
fully fledged SDI/GIS geo-data ontologies
Conclusions and future work
Acknowledgements
We are grateful to:
Fausto Giunchiglia, Mikalai Yatskevitch, Juan
Pane and Fiona McNeill for many fruitful
discussions on the structure preserving semantic
matching
This work has been supported by the
FP6 OpenKnowledge project (http://www.openk.org)
Thank you for your attention
and...
Questions ?
Lorenzino Vaccari: vaccari@disi.unitn.it
[1] University of Trento – DISI department: www.disi.unitn.it
[2] OpenKnowledge project (SPSM, WP3): www.openk.org
[3] Knowdive group (S-match): http://dit.unitn.it/~knowdive/
“MANAGING KNOWLEDGE DIVERSITY
BUILDING A BRIDGE FOR INTEGRATING THE
DIVERSE KNOWLEDGE IN DIFFERENT
RESEARCH FIELDS, SPANNING ACROSS
PEOPLE OF DIFFERENT NATIONS AND
CULTURES”
Knowdive Group
Geo-Services Example (LCC)
a(map_requestor,R)::
requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB,
XMax_BB, YMax_BB) => a(ga_sp,P) <- selectLayers(AvailableLayers,Layers)
and needMap(Width, Height)
and selectBoundingBox(XMin_ME, YMin_ME, XMax_ME, YMax_ME, XMin_BB, YMin_BB, XMax_BB, YMax_BB)
and selectFormat(AvailableFormats, Format)
then
returnMap(Map) <= a(ga_sp,P) then
null <- showMap(Map)
a(map_provider,P) ::
requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB) <= a(ga_sr,R)
then
returnMap(Map) => a(ga_sr,R)
<- getMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB, Map)
Assign the same unit cost to all operations that have their
abstraction theoretic counterparts
TED operations not allowed by definition of abstractions/
refinements are assigned an infinite cost
AO
TED
operation
Preconditions Cost= Cost⊑ Cost⊒
n1⊒Pd n2 replace(a, b) a ⊒ b; a and b correspond to predicates 1 ∞ 1
n1⊒D n2 replace(a, b)
a ⊒ b; a and b correspond to functions,
…
1 ∞ 1
n1⊒P n2 insert(a) a corresponds to predicate, function, … 1 ∞ 1
n1⊑Pd n2 replace(a, b) a ⊑ b; a and b correspond to predicates 1 1 ∞
n1⊑D n2 replace(a, b)
a ⊑ b; a and b correspond to functions,
…
1 1 ∞
n1⊑P n2 delete(a) a corresponds to predicate, function, … 1 1 ∞
n1= n2 replace(a, b) a = b; corresponds to predicate, … 0 0 0
TED operations and costs
Geo-Services Example (LCC)
a(map_requestor,R)::
requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB,
XMax_BB, YMax_BB) => a(ga_sp,P) <- selectLayers(AvailableLayers,Layers)
and needMap(Width, Height)
and selectBoundingBox(XMin_ME, YMin_ME, XMax_ME, YMax_ME, XMin_BB, YMin_BB, XMax_BB, YMax_BB)
and selectFormat(AvailableFormats, Format)
then
returnMap(Map) <= a(ga_sp,P) then
null <- showMap(Map)
a(map_provider,P) ::
requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB) <= a(ga_sr,R)
then
returnMap(Map) => a(ga_sr,R)
<- getMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB, Map)
P2P Infrastructure
•  Workflows are formalized by Interaction
Models (IMs) between peers
•  We use the Lightweight Coordination
Calculus (LCC), an executable
specification language (like BPEL)
–  Uses roles for peers and constraints on
message sending to enforce social norms
and behaviours
Related works
• Geo-data integration
– Alignment efforts [Chen et al.]
– Semantic heterogeneity [Lutz et al.], [GEON
project]
– Ontology matcher [G-Match]
• Geo-services interoperability
– OGC cataloguing services
– Geospatial Semantic Interoperability
Experiment
– Chaining Geo-services [Lemmens et al.]
P2P infrastructure
•  Peer-to-peer network for distributed
application sharing and execution.
–  Peers can search/download applications from
other peers.
–  Developers can publish applications and their
interaction specifications.
•  Provides a framework to execute and
coordinate the programs in each peer.
•  Anyone with a computer and internet
access may join the system.
•  No central organization.
•  Lightweight Coordination Language.
Example of IM
a(inquirer, I)::
ask(W) => a(oracle,O)←toknow(W)‫‏‬
then
definition(W,D) <= a(oracle,O)‫‏‬
then
null←show(W,D)
a(oracle, O)::
ask(W) <= a(inquirer,I)
then
definition(W,D)=> a(inquirer,I)←define(W,D)
Roles Constraints
Interaction Run
Inquirer Oracle
a(oracle, O)::
ask(W)<= a(inquirer,I)
then
definition(W,D)=>a(inquirer,I)←define(W,D)
toknow(W)‫‏‬
a(inquirer, I)::
ask(W)=>a(oracle,O)←toknow(W)‫‏‬
then
definition(W,D)<=a(oracle,O)‫‏‬
then
null←show(W,D)
Interaction Run
Inquirer Oracle
a(inquirer, I)::
ask(W)⇒a(oracle,O)←toknow(W)‫‏‬
then
definition(W,D)⇐a(oracle,O)‫‏‬
then
null←show(W,D)
a(oracle, O)::
ask(W)⇐a(inquirer,I)
then
definition(W,D)⇒a(inquirer,I)←define(W,D)
toknow(W)‫‏‬
ask(W)‫‏‬
Interaction Run
Inquirer Oracle
a(inquirer, I)::
ask(W)⇒a(oracle,O)←toknow(W)‫‏‬
then
definition(W,D)⇐a(oracle,O)‫‏‬
then
null←show(W,D)
a(oracle, O)::
ask(W)⇐a(inquirer,I)
then
definition(W,D)⇒a(inquirer,I)←define(W,D)
toknow(W)‫‏‬
ask(W)‫‏‬
define(W)‫‏‬
Interaction Run
Inquirer Oracle
a(inquirer, I)::
ask(W)⇒a(oracle,O)←toknow(W)‫‏‬
then
definition(W,D)⇐a(oracle,O)‫‏‬
then
null←show(W,D)
a(oracle, O)::
ask(W)⇐a(inquirer,I)
then
definition(W,D)⇒a(inquirer,I)←define(W,D)
ask(W)‫‏‬
define(W)‫‏‬
def(W,D)‫‏‬
toknow(W‫‏‬toknow(W)‫‏‬
Interaction Run
Inquirer Oracle
a(inquirer, I)::
ask(W)⇒a(oracle,O)←toknow(W)‫‏‬
then
definition(W,D)⇐a(oracle,O)‫‏‬
then
null←show(W,D)
a(oracle, O)::
ask(W)⇐a(inquirer,I)
then
definition(W,D)⇒a(inquirer,I)←define(W,D)
ask(W)‫‏‬
define(W)‫‏‬
def(W,D)‫‏‬
toknow(W)toknow(W)‫‏‬
show(W,D)‫‏‬
toknow(W)‫‏‬

More Related Content

What's hot

Image resolution enhancement by using wavelet transform 2
Image resolution enhancement by using wavelet transform 2Image resolution enhancement by using wavelet transform 2
Image resolution enhancement by using wavelet transform 2
IAEME Publication
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
IJERD Editor
 
ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2
zukun
 
Image enhancement using alpha rooting based hybrid technique
Image enhancement using alpha rooting based hybrid techniqueImage enhancement using alpha rooting based hybrid technique
Image enhancement using alpha rooting based hybrid technique
Rahul Yadav
 

What's hot (20)

Image resolution enhancement by using wavelet transform 2
Image resolution enhancement by using wavelet transform 2Image resolution enhancement by using wavelet transform 2
Image resolution enhancement by using wavelet transform 2
 
Group saliency propagation for large scale and quick image co segmentation
Group saliency propagation for large scale and quick image co segmentationGroup saliency propagation for large scale and quick image co segmentation
Group saliency propagation for large scale and quick image co segmentation
 
is anyone_interest_in_auto-encoding_variational-bayes
is anyone_interest_in_auto-encoding_variational-bayesis anyone_interest_in_auto-encoding_variational-bayes
is anyone_interest_in_auto-encoding_variational-bayes
 
Fisher Kernel based Relevance Feedback for Multimodal Video Retrieval
Fisher Kernel based Relevance Feedback for Multimodal Video RetrievalFisher Kernel based Relevance Feedback for Multimodal Video Retrieval
Fisher Kernel based Relevance Feedback for Multimodal Video Retrieval
 
Dv34745751
Dv34745751Dv34745751
Dv34745751
 
V2 v posenet
V2 v posenetV2 v posenet
V2 v posenet
 
Parn pyramidal+affine+regression+networks+for+dense+semantic+correspondence
Parn pyramidal+affine+regression+networks+for+dense+semantic+correspondenceParn pyramidal+affine+regression+networks+for+dense+semantic+correspondence
Parn pyramidal+affine+regression+networks+for+dense+semantic+correspondence
 
A Unified PDE model for image multi-phase segmentation and grey-scale inpaint...
A Unified PDE model for image multi-phase segmentation and grey-scale inpaint...A Unified PDE model for image multi-phase segmentation and grey-scale inpaint...
A Unified PDE model for image multi-phase segmentation and grey-scale inpaint...
 
PERFORMANCE EVALUATION OF DIFFERENT TECHNIQUES FOR TEXTURE CLASSIFICATION
PERFORMANCE EVALUATION OF DIFFERENT TECHNIQUES FOR TEXTURE CLASSIFICATION PERFORMANCE EVALUATION OF DIFFERENT TECHNIQUES FOR TEXTURE CLASSIFICATION
PERFORMANCE EVALUATION OF DIFFERENT TECHNIQUES FOR TEXTURE CLASSIFICATION
 
A broad ranging open access journal Fast and efficient online submission Expe...
A broad ranging open access journal Fast and efficient online submission Expe...A broad ranging open access journal Fast and efficient online submission Expe...
A broad ranging open access journal Fast and efficient online submission Expe...
 
ALPHA-ROOTING COLOR IMAGE ENHANCEMENT METHOD BY TWO-SIDE 2-D QUATERNION DISCR...
ALPHA-ROOTING COLOR IMAGE ENHANCEMENT METHOD BY TWO-SIDE 2-D QUATERNION DISCR...ALPHA-ROOTING COLOR IMAGE ENHANCEMENT METHOD BY TWO-SIDE 2-D QUATERNION DISCR...
ALPHA-ROOTING COLOR IMAGE ENHANCEMENT METHOD BY TWO-SIDE 2-D QUATERNION DISCR...
 
Unit ii
Unit iiUnit ii
Unit ii
 
G0443640
G0443640G0443640
G0443640
 
A review on structure learning in GNN
A review on structure learning in GNNA review on structure learning in GNN
A review on structure learning in GNN
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2
 
TENSOR VOTING BASED BINARY CLASSIFIER
TENSOR VOTING BASED BINARY CLASSIFIERTENSOR VOTING BASED BINARY CLASSIFIER
TENSOR VOTING BASED BINARY CLASSIFIER
 
IRJET- Contrast Enhancement of Grey Level and Color Image using DWT and SVD
IRJET-  	  Contrast Enhancement of Grey Level and Color Image using DWT and SVDIRJET-  	  Contrast Enhancement of Grey Level and Color Image using DWT and SVD
IRJET- Contrast Enhancement of Grey Level and Color Image using DWT and SVD
 
Ceis 4
Ceis 4Ceis 4
Ceis 4
 
Image enhancement using alpha rooting based hybrid technique
Image enhancement using alpha rooting based hybrid techniqueImage enhancement using alpha rooting based hybrid technique
Image enhancement using alpha rooting based hybrid technique
 

Viewers also liked

Viewers also liked (18)

Geos2011 - Lorenzino Vaccari - Keynote speech
Geos2011 - Lorenzino Vaccari - Keynote speechGeos2011 - Lorenzino Vaccari - Keynote speech
Geos2011 - Lorenzino Vaccari - Keynote speech
 
Open Data Trentino presented at the European Commission (JRC)
Open Data Trentino presented at the European Commission (JRC)Open Data Trentino presented at the European Commission (JRC)
Open Data Trentino presented at the European Commission (JRC)
 
Open Data for Techpeaks
Open Data for TechpeaksOpen Data for Techpeaks
Open Data for Techpeaks
 
Open Data for KnowDive Group
Open Data for KnowDive GroupOpen Data for KnowDive Group
Open Data for KnowDive Group
 
About opendata
About opendataAbout opendata
About opendata
 
Ict days2014 - Open & Big Data un anno dopo #opendata #bigdata #trentino #ict...
Ict days2014 - Open & Big Data un anno dopo #opendata #bigdata #trentino #ict...Ict days2014 - Open & Big Data un anno dopo #opendata #bigdata #trentino #ict...
Ict days2014 - Open & Big Data un anno dopo #opendata #bigdata #trentino #ict...
 
Open Data project in Trentino
Open Data project in TrentinoOpen Data project in Trentino
Open Data project in Trentino
 
Open Data in Trentino - Corso Trentino School of Management (TSM)
Open Data in Trentino - Corso Trentino School of Management (TSM)Open Data in Trentino - Corso Trentino School of Management (TSM)
Open Data in Trentino - Corso Trentino School of Management (TSM)
 
Go hybridveganapple
Go hybridveganappleGo hybridveganapple
Go hybridveganapple
 
Open Data Trentino - Seminar at Universidad Simon Bolivar - 15th October 2013
Open Data Trentino - Seminar at Universidad Simon Bolivar - 15th October 2013Open Data Trentino - Seminar at Universidad Simon Bolivar - 15th October 2013
Open Data Trentino - Seminar at Universidad Simon Bolivar - 15th October 2013
 
20131220 school ofdata
20131220 school ofdata20131220 school ofdata
20131220 school ofdata
 
20140724 Ertic tecnicas de visualizacion de datos - periodismo de datos
20140724 Ertic tecnicas de visualizacion de datos - periodismo de datos20140724 Ertic tecnicas de visualizacion de datos - periodismo de datos
20140724 Ertic tecnicas de visualizacion de datos - periodismo de datos
 
Open Data per conferenza ASITA 2013 (Riva del Garda - TN)
Open Data per conferenza ASITA 2013 (Riva del Garda - TN)Open Data per conferenza ASITA 2013 (Riva del Garda - TN)
Open Data per conferenza ASITA 2013 (Riva del Garda - TN)
 
Geo Open Data
Geo Open DataGeo Open Data
Geo Open Data
 
Open Data for Digital Cities of the Future
Open Data for Digital Cities of the FutureOpen Data for Digital Cities of the Future
Open Data for Digital Cities of the Future
 
20140701 etm Ispra Europa Terzo Mondo
20140701 etm Ispra Europa Terzo Mondo20140701 etm Ispra Europa Terzo Mondo
20140701 etm Ispra Europa Terzo Mondo
 
Le chemin du Valgrande 2014
Le chemin du Valgrande 2014Le chemin du Valgrande 2014
Le chemin du Valgrande 2014
 
2012 05-isi buku dilema pks-rev
2012 05-isi buku dilema pks-rev2012 05-isi buku dilema pks-rev
2012 05-isi buku dilema pks-rev
 

Similar to Gsdi10

SigOpt_Bayesian_Optimization_Primer
SigOpt_Bayesian_Optimization_PrimerSigOpt_Bayesian_Optimization_Primer
SigOpt_Bayesian_Optimization_Primer
Ian Dewancker
 
Scalable Machine Learning: The Role of Stratified Data Sharding
Scalable Machine Learning: The Role of Stratified Data ShardingScalable Machine Learning: The Role of Stratified Data Sharding
Scalable Machine Learning: The Role of Stratified Data Sharding
inside-BigData.com
 
Mathematics notes and formula for class 12 chapter 7. integrals
Mathematics notes and formula for class 12 chapter 7. integrals Mathematics notes and formula for class 12 chapter 7. integrals
Mathematics notes and formula for class 12 chapter 7. integrals
sakhi pathak
 

Similar to Gsdi10 (20)

STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
 
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
 
Undergraduate Modeling Workshop - Hierarchical Models for Sparsely Sampled Hi...
Undergraduate Modeling Workshop - Hierarchical Models for Sparsely Sampled Hi...Undergraduate Modeling Workshop - Hierarchical Models for Sparsely Sampled Hi...
Undergraduate Modeling Workshop - Hierarchical Models for Sparsely Sampled Hi...
 
HalifaxNGGs
HalifaxNGGsHalifaxNGGs
HalifaxNGGs
 
SigOpt_Bayesian_Optimization_Primer
SigOpt_Bayesian_Optimization_PrimerSigOpt_Bayesian_Optimization_Primer
SigOpt_Bayesian_Optimization_Primer
 
Scalable Machine Learning: The Role of Stratified Data Sharding
Scalable Machine Learning: The Role of Stratified Data ShardingScalable Machine Learning: The Role of Stratified Data Sharding
Scalable Machine Learning: The Role of Stratified Data Sharding
 
Fosdem 2013 petra selmer flexible querying of graph data
Fosdem 2013 petra selmer   flexible querying of graph dataFosdem 2013 petra selmer   flexible querying of graph data
Fosdem 2013 petra selmer flexible querying of graph data
 
Graph Edit Distance: Basics & Trends
Graph Edit Distance: Basics & TrendsGraph Edit Distance: Basics & Trends
Graph Edit Distance: Basics & Trends
 
"Demystifying Deep Neural Networks," a Presentation from BDTI
"Demystifying Deep Neural Networks," a Presentation from BDTI"Demystifying Deep Neural Networks," a Presentation from BDTI
"Demystifying Deep Neural Networks," a Presentation from BDTI
 
Natural Language Processing in R (rNLP)
Natural Language Processing in R (rNLP)Natural Language Processing in R (rNLP)
Natural Language Processing in R (rNLP)
 
[241]large scale search with polysemous codes
[241]large scale search with polysemous codes[241]large scale search with polysemous codes
[241]large scale search with polysemous codes
 
Machine learning and climate and weather research
Machine learning and climate and weather researchMachine learning and climate and weather research
Machine learning and climate and weather research
 
Understanding Convolutional Neural Networks
Understanding Convolutional Neural NetworksUnderstanding Convolutional Neural Networks
Understanding Convolutional Neural Networks
 
Aggregation computation over distributed data streams(the final version)
Aggregation computation over distributed data streams(the final version)Aggregation computation over distributed data streams(the final version)
Aggregation computation over distributed data streams(the final version)
 
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph KernelsDDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
 
Mathematics notes and formula for class 12 chapter 7. integrals
Mathematics notes and formula for class 12 chapter 7. integrals Mathematics notes and formula for class 12 chapter 7. integrals
Mathematics notes and formula for class 12 chapter 7. integrals
 
Instance Based Learning in Machine Learning
Instance Based Learning in Machine LearningInstance Based Learning in Machine Learning
Instance Based Learning in Machine Learning
 
CLIM Program: Remote Sensing Workshop, An Introduction to Systems and Softwar...
CLIM Program: Remote Sensing Workshop, An Introduction to Systems and Softwar...CLIM Program: Remote Sensing Workshop, An Introduction to Systems and Softwar...
CLIM Program: Remote Sensing Workshop, An Introduction to Systems and Softwar...
 
Spatial decision support and analytics on a campus scale: bringing GIS, CAD, ...
Spatial decision support and analytics on a campus scale: bringing GIS, CAD, ...Spatial decision support and analytics on a campus scale: bringing GIS, CAD, ...
Spatial decision support and analytics on a campus scale: bringing GIS, CAD, ...
 
3.1 clustering
3.1 clustering3.1 clustering
3.1 clustering
 

More from European Commission, Joint Research Centre

More from European Commission, Joint Research Centre (12)

I dati pubblici in Lombardia e in Europa: una fonte rinnovabile di energia in...
I dati pubblici in Lombardia e in Europa: una fonte rinnovabile di energia in...I dati pubblici in Lombardia e in Europa: una fonte rinnovabile di energia in...
I dati pubblici in Lombardia e in Europa: una fonte rinnovabile di energia in...
 
Supporting the digital transformation of the society with APIs (@Polimi)
Supporting the digital transformation of the society with APIs (@Polimi)Supporting the digital transformation of the society with APIs (@Polimi)
Supporting the digital transformation of the society with APIs (@Polimi)
 
Application Programming interfaces for Governments: why, what and how
Application Programming interfaces for Governments: why, what and howApplication Programming interfaces for Governments: why, what and how
Application Programming interfaces for Governments: why, what and how
 
The APIs4DGov study.
The APIs4DGov study. The APIs4DGov study.
The APIs4DGov study.
 
Webinar for the INSPIRE 2018 Hackathon (July session, 20/07/2018))
Webinar for the INSPIRE 2018 Hackathon (July session, 20/07/2018))Webinar for the INSPIRE 2018 Hackathon (July session, 20/07/2018))
Webinar for the INSPIRE 2018 Hackathon (July session, 20/07/2018))
 
About opendata2017
About opendata2017About opendata2017
About opendata2017
 
Il valore dei dati aperti per il cittadino attivo e consapevole
Il valore dei dati aperti  per il cittadino attivo e consapevoleIl valore dei dati aperti  per il cittadino attivo e consapevole
Il valore dei dati aperti per il cittadino attivo e consapevole
 
Diète végétarienne
Diète végétarienneDiète végétarienne
Diète végétarienne
 
JRC, GHA Live presentation: Maps, GISs and SDIs
JRC, GHA Live presentation: Maps, GISs and SDIsJRC, GHA Live presentation: Maps, GISs and SDIs
JRC, GHA Live presentation: Maps, GISs and SDIs
 
Open Data for GHA@live
Open Data for GHA@liveOpen Data for GHA@live
Open Data for GHA@live
 
20140723 ertic gis_esp
20140723 ertic gis_esp20140723 ertic gis_esp
20140723 ertic gis_esp
 
Open Data 4 Hackaton - Preparation for Hackaton Ict Days 2014 #opendata #ictd...
Open Data 4 Hackaton - Preparation for Hackaton Ict Days 2014 #opendata #ictd...Open Data 4 Hackaton - Preparation for Hackaton Ict Days 2014 #opendata #ictd...
Open Data 4 Hackaton - Preparation for Hackaton Ict Days 2014 #opendata #ictd...
 

Recently uploaded

development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
NazaninKarimi6
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
MohamedFarag457087
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Sérgio Sacani
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Sérgio Sacani
 
The Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxThe Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptx
seri bangash
 
Human genetics..........................pptx
Human genetics..........................pptxHuman genetics..........................pptx
Human genetics..........................pptx
Silpa
 

Recently uploaded (20)

Site Acceptance Test .
Site Acceptance Test                    .Site Acceptance Test                    .
Site Acceptance Test .
 
An introduction on sequence tagged site mapping
An introduction on sequence tagged site mappingAn introduction on sequence tagged site mapping
An introduction on sequence tagged site mapping
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
 
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)
 
Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.Selaginella: features, morphology ,anatomy and reproduction.
Selaginella: features, morphology ,anatomy and reproduction.
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
 
pumpkin fruit fly, water melon fruit fly, cucumber fruit fly
pumpkin fruit fly, water melon fruit fly, cucumber fruit flypumpkin fruit fly, water melon fruit fly, cucumber fruit fly
pumpkin fruit fly, water melon fruit fly, cucumber fruit fly
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
 
Introduction of DNA analysis in Forensic's .pptx
Introduction of DNA analysis in Forensic's .pptxIntroduction of DNA analysis in Forensic's .pptx
Introduction of DNA analysis in Forensic's .pptx
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Use of mutants in understanding seedling development.pptx
Use of mutants in understanding seedling development.pptxUse of mutants in understanding seedling development.pptx
Use of mutants in understanding seedling development.pptx
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
 
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort ServiceCall Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
 
The Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxThe Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptx
 
300003-World Science Day For Peace And Development.pptx
300003-World Science Day For Peace And Development.pptx300003-World Science Day For Peace And Development.pptx
300003-World Science Day For Peace And Development.pptx
 
Proteomics: types, protein profiling steps etc.
Proteomics: types, protein profiling steps etc.Proteomics: types, protein profiling steps etc.
Proteomics: types, protein profiling steps etc.
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
 
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIACURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
CURRENT SCENARIO OF POULTRY PRODUCTION IN INDIA
 
Human genetics..........................pptx
Human genetics..........................pptxHuman genetics..........................pptx
Human genetics..........................pptx
 

Gsdi10

  • 1. Lorenzino Vaccari, Pavel Shvaiko, Maurizio Marchese, DISI Department University of Trento, Italy email: vaccari/pavel/marchese@disi.unitn.it An emergent semantics approach to integration of GI in SDI GSDI10 - Tenth International Conference for Spatial Data Infrastructure St. Augustine, Trinidad - February 25-29, 2008
  • 2. Overview • Context • GI Interoperability Issues • Emergent GI Semantics • Structure Preserving Semantic Matching – Geo-Services Example – Preliminary Results • Conclusion and Future Work
  • 3. Context • Sharing GI between different stakeholders • International, National and Local initiatives. E.g.: – INSPIRE – The Italian “Intesa Stato-Regioni” • Spatial Data Infrastructure adoption – Geo-Data Integration – Geo-Services Discovery and Coordination
  • 4. GI Interoperability Issues •  Geo-Data Integration –  Physical Format –  Production process –  Different Resolution –  Different Schemas/ Ontologies •  Geo-services interoperability –  Geo-services discovery and coordination –  Technological solutions: SOA and OGC specifications. –  Semantic heterogeneity of geo-services
  • 5. Emergent GI Semantics •  Our approach to improve GI interoperability is based on: –  The Structure Preserving Semantic Matching (SPSM) algorithm •  Emergent GI semantics –  We store the matching results to use them for the following interactions
  • 6. ? Semantic heterogeneity of Geo- Services getMap( –  Dimension(Width, Height), –  MapFile, –  Edition, –  Layers, –  DataFormat, –  Xmin, Ymin, Xmax, Ymax) getMap( –  MapFile, –  Version, –  Layers, –  Width, –  Height, –  Format, –  XMin_BB, YMin_BB, XMax_BB, YMax_BB) SPSM ?
  • 7. Information sources (e.g., schemas, ontologies, web service descriptions) can be viewed as graph-like structures containing terms and their inter- relationships Matching takes two graph-like structures and produces a set of correspondences between the semantically related nodes of those graphs Structure preserving semantic matching finds correspondences between semantically related nodes of the graphs, still preserving a set of structural properties (e.g., vertical ordering of nodes) Structure Preserving Semantic Matching
  • 8. getMap(MapFile, Version, Layers, Width, Height, Format, XMin_BB, YMin_BB, XMax_BB, YMax_BB) getMap(Dimension(Width, Height), MapFile, Edition, Layers, DataFormat, Request, Xmin, Ymin, Xmax, Ymax) SPSM(T1,T2) = 0.38+ set of correspondences Example from Geo-Services getMap MapFile Version Layers Width Height T1 Format Xmin_BB Ymin_BB Xmax_BB Ymax_BB DataFormat getMap Dimension Width Edition MapFile Height Layers T2 Request Xmin Ymin Xmax Ymax
  • 9. Characteristics of matching •  Returns: –  global similarity between two trees in [0 1] –  a set of correspondences •  Approximation is on two levels: –  Node (S-Match) –  Structure •  Provides one-to-one node correspondences –  Functions are matched to functions –  Variables are matched to variables
  • 10. Predicate (Pd): ―  Two or more predicates are merged, typically to the least general generalization in the predicate type hierarchy ―  Height(X) + Dimension(X) → Dimension (X) Domain (D): ―  Two or more terms are merged, typically by moving the functions or constants to the least general generalization in the domain type hierarchy ―  Xmin_BB + Xmin → Xmin Propositional (P): ―  One or more arguments are dropped ―  Layers (L1) → Layers Composition example: ―  Height (X) ⊑P Height ⊑D Dimension Abstraction operations (AO)
  • 11. Node matching: two nodes n1 and n2 in trees T1 and T2 approximately match if and only if: c@n1 R c@n2 holds (based on S-Match), where: ―  c@n1 and c@n2 are the concepts at nodes n1 and n2 ―  R ∈ {=, ⊑, ⊒, idk} ―  Version = Edition, Xmin_BB ⊑ Xmin Tree matching: two trees T1 and T2 approximately match if and only if there is at least one node n1 in T1 and one node n2 in T2 such that: ―  n1 approximately matches n2 ―  All ancestors of n1 are approximately matched to the ancestors of n2 ―  Horizontal order of siblings is not preserved (in most of the cases) Approximate SPSM
  • 12. Key idea: use abstractions/refinements (standing for relations of a correspondence) as tree edit distance operations in order to estimate the similarity of two given trees Tree edit distance (TED): the minimum number of tree edit operations (node insertion, deletion, replacement) required to transform one tree to another. We want to: ―  Minimize the editing cost, i.e., computation of the minimal cost composition of abstraction/refinement operations ―  Allow only those tree edit operations that have their abstraction theoretic counterparts Tree edit distance
  • 13. AO TED operation Preconditions Cost= Cost⊑ Cost⊒ n1⊒Pd n2 replace(a, b) a ⊒ b; a and b correspond to predicates 1 ∞ 1 n1⊒D n2 replace(a, b) a ⊒ b; a and b correspond to functions, … 1 ∞ 1 n1⊒P n2 insert(a) a corresponds to predicate, function, … 1 ∞ 1 n1⊑Pd n2 replace(a, b) a ⊑ b; a and b correspond to predicates 1 1 ∞ n1⊑D n2 replace(a, b) a ⊑ b; a and b correspond to functions, … 1 1 ∞ n1⊑P n2 delete(a) a corresponds to predicate, function, … 1 1 ∞ n1= n2 replace(a, b) a = b; corresponds to predicate, … 0 0 0 TED operations and costs
  • 14. Example from Geo-Services (cont’d) getMap MapFile Version Layers Width Height T1 Format Xmin_BB Ymin_BB Xmax_BB Ymax_BB DataFormat getMap Dimension Width Edition MapFile Height Layers T2 Request Xmin Ymin Xmax Ymax 1 2 3 4 5 6 7 8 10 9 11 1 2 3 4 5 6 7 8 10 9 11 12 13
  • 15. Preliminary evaluation Synthesized datasets (hundreds of trees) from various versions of SUMO and AKT ontologies and Brown Corpus lexicon. E.g.: journal(periodical_publication) vs. magazine(periodical-publication) flowers_Michigan(northern, Whisky) vs. flowers_Michigan(Whisky, bourbon) Measures Precision, Recall, F-measure, Time Results on a standard laptop (Core Duo CPU - 2Hz, 2GB RAM, Windows Vista):  average F-measure = 0.78  average execution time = 93ms
  • 16. SPSM for Geo-services ―  Geo-Services and Geo-data heterogeneity ―  Geo-Service use case (GetMap) ―  Node matching of S-Match ―  Structure preserving matching based on theory of abstraction and tree edit distance ―  Preliminary evaluation with encouraging results Future work ―  Conducting an extensive evaluation ―  Extending the matching approach for dealing with fully fledged SDI/GIS geo-data ontologies Conclusions and future work
  • 17. Acknowledgements We are grateful to: Fausto Giunchiglia, Mikalai Yatskevitch, Juan Pane and Fiona McNeill for many fruitful discussions on the structure preserving semantic matching This work has been supported by the FP6 OpenKnowledge project (http://www.openk.org)
  • 18. Thank you for your attention and... Questions ? Lorenzino Vaccari: vaccari@disi.unitn.it [1] University of Trento – DISI department: www.disi.unitn.it [2] OpenKnowledge project (SPSM, WP3): www.openk.org [3] Knowdive group (S-match): http://dit.unitn.it/~knowdive/ “MANAGING KNOWLEDGE DIVERSITY BUILDING A BRIDGE FOR INTEGRATING THE DIVERSE KNOWLEDGE IN DIFFERENT RESEARCH FIELDS, SPANNING ACROSS PEOPLE OF DIFFERENT NATIONS AND CULTURES” Knowdive Group
  • 19. Geo-Services Example (LCC) a(map_requestor,R):: requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB) => a(ga_sp,P) <- selectLayers(AvailableLayers,Layers) and needMap(Width, Height) and selectBoundingBox(XMin_ME, YMin_ME, XMax_ME, YMax_ME, XMin_BB, YMin_BB, XMax_BB, YMax_BB) and selectFormat(AvailableFormats, Format) then returnMap(Map) <= a(ga_sp,P) then null <- showMap(Map) a(map_provider,P) :: requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB) <= a(ga_sr,R) then returnMap(Map) => a(ga_sr,R) <- getMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB, Map)
  • 20.
  • 21. Assign the same unit cost to all operations that have their abstraction theoretic counterparts TED operations not allowed by definition of abstractions/ refinements are assigned an infinite cost AO TED operation Preconditions Cost= Cost⊑ Cost⊒ n1⊒Pd n2 replace(a, b) a ⊒ b; a and b correspond to predicates 1 ∞ 1 n1⊒D n2 replace(a, b) a ⊒ b; a and b correspond to functions, … 1 ∞ 1 n1⊒P n2 insert(a) a corresponds to predicate, function, … 1 ∞ 1 n1⊑Pd n2 replace(a, b) a ⊑ b; a and b correspond to predicates 1 1 ∞ n1⊑D n2 replace(a, b) a ⊑ b; a and b correspond to functions, … 1 1 ∞ n1⊑P n2 delete(a) a corresponds to predicate, function, … 1 1 ∞ n1= n2 replace(a, b) a = b; corresponds to predicate, … 0 0 0 TED operations and costs
  • 22. Geo-Services Example (LCC) a(map_requestor,R):: requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB) => a(ga_sp,P) <- selectLayers(AvailableLayers,Layers) and needMap(Width, Height) and selectBoundingBox(XMin_ME, YMin_ME, XMax_ME, YMax_ME, XMin_BB, YMin_BB, XMax_BB, YMax_BB) and selectFormat(AvailableFormats, Format) then returnMap(Map) <= a(ga_sp,P) then null <- showMap(Map) a(map_provider,P) :: requestMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB) <= a(ga_sr,R) then returnMap(Map) => a(ga_sr,R) <- getMap(MapFile, Version, Layers, Width, Height, Format, SRS, XMin_BB, YMin_BB, XMax_BB, YMax_BB, Map)
  • 23. P2P Infrastructure •  Workflows are formalized by Interaction Models (IMs) between peers •  We use the Lightweight Coordination Calculus (LCC), an executable specification language (like BPEL) –  Uses roles for peers and constraints on message sending to enforce social norms and behaviours
  • 24. Related works • Geo-data integration – Alignment efforts [Chen et al.] – Semantic heterogeneity [Lutz et al.], [GEON project] – Ontology matcher [G-Match] • Geo-services interoperability – OGC cataloguing services – Geospatial Semantic Interoperability Experiment – Chaining Geo-services [Lemmens et al.]
  • 25. P2P infrastructure •  Peer-to-peer network for distributed application sharing and execution. –  Peers can search/download applications from other peers. –  Developers can publish applications and their interaction specifications. •  Provides a framework to execute and coordinate the programs in each peer. •  Anyone with a computer and internet access may join the system. •  No central organization. •  Lightweight Coordination Language.
  • 26. Example of IM a(inquirer, I):: ask(W) => a(oracle,O)←toknow(W)‫‏‬ then definition(W,D) <= a(oracle,O)‫‏‬ then null←show(W,D) a(oracle, O):: ask(W) <= a(inquirer,I) then definition(W,D)=> a(inquirer,I)←define(W,D) Roles Constraints
  • 27. Interaction Run Inquirer Oracle a(oracle, O):: ask(W)<= a(inquirer,I) then definition(W,D)=>a(inquirer,I)←define(W,D) toknow(W)‫‏‬ a(inquirer, I):: ask(W)=>a(oracle,O)←toknow(W)‫‏‬ then definition(W,D)<=a(oracle,O)‫‏‬ then null←show(W,D)
  • 28. Interaction Run Inquirer Oracle a(inquirer, I):: ask(W)⇒a(oracle,O)←toknow(W)‫‏‬ then definition(W,D)⇐a(oracle,O)‫‏‬ then null←show(W,D) a(oracle, O):: ask(W)⇐a(inquirer,I) then definition(W,D)⇒a(inquirer,I)←define(W,D) toknow(W)‫‏‬ ask(W)‫‏‬
  • 29. Interaction Run Inquirer Oracle a(inquirer, I):: ask(W)⇒a(oracle,O)←toknow(W)‫‏‬ then definition(W,D)⇐a(oracle,O)‫‏‬ then null←show(W,D) a(oracle, O):: ask(W)⇐a(inquirer,I) then definition(W,D)⇒a(inquirer,I)←define(W,D) toknow(W)‫‏‬ ask(W)‫‏‬ define(W)‫‏‬
  • 30. Interaction Run Inquirer Oracle a(inquirer, I):: ask(W)⇒a(oracle,O)←toknow(W)‫‏‬ then definition(W,D)⇐a(oracle,O)‫‏‬ then null←show(W,D) a(oracle, O):: ask(W)⇐a(inquirer,I) then definition(W,D)⇒a(inquirer,I)←define(W,D) ask(W)‫‏‬ define(W)‫‏‬ def(W,D)‫‏‬ toknow(W‫‏‬toknow(W)‫‏‬
  • 31. Interaction Run Inquirer Oracle a(inquirer, I):: ask(W)⇒a(oracle,O)←toknow(W)‫‏‬ then definition(W,D)⇐a(oracle,O)‫‏‬ then null←show(W,D) a(oracle, O):: ask(W)⇐a(inquirer,I) then definition(W,D)⇒a(inquirer,I)←define(W,D) ask(W)‫‏‬ define(W)‫‏‬ def(W,D)‫‏‬ toknow(W)toknow(W)‫‏‬ show(W,D)‫‏‬ toknow(W)‫‏‬