1 National Institute of Advanced Industrial Science and Technology A Semantic Matchmaker for A Semantic Matchmaker for RDF/OWL-based Service RDF/OWL-based Service Repositories Repositories Mirza Said Mirza Said National Institute of Advanced Industrial Science National Institute of Advanced Industrial Science and Technology (AIST) and Technology (AIST) Grid Technology Research Center Grid Technology Research Center Japan Japan Building a Tool for OWL-S Service Discovery Building a Tool for OWL-S Service Discovery and Composition and Composition
28
Embed
National Institute of Advanced Industrial Science and Technology 1 A Semantic Matchmaker for RDF/OWL- based Service Repositories Mirza Said National Institute.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
11National Institute of Advanced Industrial Science and Technology
A Semantic Matchmaker for RDF/OWL-A Semantic Matchmaker for RDF/OWL-based Service Repositoriesbased Service Repositories
Mirza SaidMirza SaidNational Institute of Advanced Industrial Science National Institute of Advanced Industrial Science
and Technology (AIST)and Technology (AIST)Grid Technology Research CenterGrid Technology Research Center
JapanJapan
Building a Tool for OWL-S Service Building a Tool for OWL-S Service Discovery and CompositionDiscovery and Composition
22
National Institute of Advanced Industrial Science and Technology
OutlineOutline
IntroductionIntroduction
OWL-SOWL-S
Semantic service matchmaking and main Semantic service matchmaking and main issuesissues
Proposed matchmaking systemProposed matchmaking system
Summary and future workSummary and future work
33
National Institute of Advanced Industrial Science and Technology
BackgroundBackground
Many Web services are available in the WebMany Web services are available in the WebThe number is rapidly increasingThe number is rapidly increasing
Google, Yahoo, Amazon, B2B, and etc.Google, Yahoo, Amazon, B2B, and etc.
Main issue: automatic and accurate discovery of Main issue: automatic and accurate discovery of target web servicestarget web services
Semantic Interoperability is a major hurdle for Locating Services
Different terms are used for advertisements and requests
OWL-S: An OWL-S: An ontology of service conceptsontology of service concepts for for describing the properties and capabilities of Web describing the properties and capabilities of Web services in a machine interpretable formservices in a machine interpretable form
44
National Institute of Advanced Industrial Science and Technology
OWL-S: The Upper OntologyOWL-S: The Upper Ontology
Consists of four main classesConsists of four main classesServiceProfileServiceProfile: for advertising : for advertising and discovering servicesand discovering services
What organization provides the What organization provides the service (e.g., contact information)service (e.g., contact information)What function the service computes What function the service computes (e.g., inputs and outputs) (e.g., inputs and outputs) What characteristics the service has What characteristics the service has (e.g., service category)(e.g., service category)
ProcessModelProcessModel: a detailed description of a service's : a detailed description of a service's operationoperationServiceGroundingServiceGrounding: the details of how to access the : the details of how to access the serviceserviceServiceService: binds three classes via three object properties: binds three classes via three object properties
55
National Institute of Advanced Industrial Science and Technology
An OWL-S Service: A Car Selling ServiceAn OWL-S Service: A Car Selling Service
hasInput: hasInput: Familycar & YearFamilycar & Year
textDescription: textDescription: used car shop in Tokyoused car shop in Tokyo
Car-shophasInput
YearYearhasInput
Automobile
Car Truck
Sportcar Familycar
Sedan Minivan
Hatchback Two-doors
car-type ontology
PricePrice
hasOutputUNSPSC
Sales-activities
Used-vehicle
New-vehicle
serviceProduct
UNSPContology
““A used cars shop A used cars shop locating in Tokyo”locating in Tokyo”
textDescription
66
National Institute of Advanced Industrial Science and Technology
OWL-S Service MatchmakingOWL-S Service Matchmaking
servicerepository &matchmaker
providerregister
requesterquery
A provider A provider describes describes advertised services using an advertised services using an OWL-S compliant ontologyOWL-S compliant ontology
A requester A requester queriesqueries the repository using the same the repository using the same ontologyontology
Repository Repository matchesmatches the request and advertisements the request and advertisements and returns matched advertisements in relevance orderand returns matched advertisements in relevance order
hasInput: sedan & yearhasOutput: price
request hasInput: Familycar & yearhasOutput: priceserviceProduct: used-vehicletextDescription: used car shop in Tokyo
advertisement
77
National Institute of Advanced Industrial Science and Technology
Basic Principle of MatchingBasic Principle of Matching ((Paolucci et al. ISWC02)
An advertisement matches a An advertisement matches a request when request when
all request outputsall request outputs are matched are matched by advertisement outputs andby advertisement outputs andall advertisement inputsall advertisement inputs are are matched by request inputsmatched by request inputs
Guarantees that the Guarantees that the matched matched serviceservice provides all outputs provides all outputs requested by the requester, requested by the requester, and that and that the requesterthe requester provides all input required for provides all input required for correct operation to the correct operation to the matched servicematched service
FLEXIBLE MATCHby defining degree of match
between two classes/concepts
advertisement
inp
ut
ou
tpu
t
request
inp
ut
ou
tpu
t
88
National Institute of Advanced Industrial Science and Technology
Degree of MatchDegree of Match
providerrequesterservice
repository &matchmaker
registerquery
hasInput: sedan & yearhasOutput: price
hasInput: Familycar & yearhasOutput: priceserviceProduct: used-vehicletextDescription: used car shop in Tokyo
request
advertisement
inR: a request inputinA: an advertisement input degreeOfMatch(inA, inR) Paolucci et.al. ISWC02
if inR=inA then Exactif inA immediateSubclassOf inR then Exactif inA subclassOf inR then Plug-inif inR subclassOf inA then Subsumeotherwise Fail
Subsume
Exact
Automobile
Car Truck
Sportcar Familycar
Sedan Minivan
Hatchback Two-doors
car-type ontology
inR
inA
|Exact| > |Plug-in| > |Subsume| > |Fail|
99
National Institute of Advanced Industrial Science and Technology
Main IssuesMain Issues
Using ontology as a service requestUsing ontology as a service requestDifficult to composeDifficult to compose
The repository usually only support simple The repository usually only support simple queriesqueries
Each matchmaking system uses a different Each matchmaking system uses a different matching enginematching engine
Need a proprietary query engineNeed a proprietary query engine
National Institute of Advanced Industrial Science and Technology
GoalGoal
Propose a matchmaking mechanism thatPropose a matchmaking mechanism thatEnables complex service matchingEnables complex service matching
e.g, optional pattern matching e.g, optional pattern matching Has a loosely-couple architectureHas a loosely-couple architecture
Matchmaker can switch from one RDF repository Matchmaker can switch from one RDF repository to another or send a simultaneous query to to another or send a simultaneous query to multiple repositoriesmultiple repositories
allows to use existing “standard” matching allows to use existing “standard” matching enginesengines
Not build and using another proprietary matching Not build and using another proprietary matching engineengine
Using SPARQL as the query language!!Using SPARQL as the query language!!Using SPARQL as the query language!!Using SPARQL as the query language!!
SPARQL does not interpret RDF schema information or entailments
(treats RDF graph purely as data)
SPARQL does not interpret RDF schema information or entailments
(treats RDF graph purely as data)
1212
National Institute of Advanced Industrial Science and Technology
Basic ArchitectureBasic Architecture
Requester sends a SPARQL query to MatchmakerRequester sends a SPARQL query to MatchmakerMatchmaker Matchmaker rewritesrewrites the query and sends it to an the query and sends it to an OWL-S service (RDF) repositoryOWL-S service (RDF) repositoryMatchmaker Matchmaker ordersorders the results based on the the results based on the degree degree of match between classesof match between classes
Rewrite the requester query such that the Rewrite the requester query such that the matching results matching results will includewill include the lacking the lacking informationinformation
Class subsumptionClass subsumption
Superclass instancesSuperclass instances
Property inclusivenessProperty inclusiveness
1818
National Institute of Advanced Industrial Science and Technology
Query Rewriting: The RulesQuery Rewriting: The Rules
A requester query:A requester query:
Rewrite each type-matching pattern:Rewrite each type-matching pattern:
Type-matching pattern
a = rdf:type
Automobile
Car Truck
Sportcar Familycar
Sedan Minivan
Hatchback Two-doors
car-type ontology Car-Model
Toyota Nissan
Prius Camry Sentra QuestRAV4
Asia-car Europe-car
Honda
SELECT ?sWHERE ?s presents ?o.?o hasInputhasInput ?in1, ?in2. ?in1 a Familycar. ?in2 a Toyota.
car-model ontology
A graph pattern that matches k values of property p while restricting values to those from specific classes
1919
National Institute of Advanced Industrial Science and Technology
Get superclasses and subclasses of property value classes (rs = rdfs:subclassOf)Get instances whose values are from the
superclasses and subclassesGet property inclusiveness informationGet subsumption class information
2020
National Institute of Advanced Industrial Science and Technology
SELECT ?sWHERE ?s presents ?o.?o hasInput ?in1, ?in2. ?in1 a Familycar. ?in2 a Toyota.
Get superclasses and subclasses of Familycar and Toyota and binding them to variables (rs = rdfs:subclassOf)
Get hasInput instances whose values are from the superclasses and subclasses of Familycar and Toyota
Check whether hasInput is inclusiveness.i.e., whether it has only two values whose types are the superclass/subclass of Familycar and Toyota
Get the immediate superclasses and subclasses of Familycar and Toyota(rs = rdfs:subclassOf)
2121
National Institute of Advanced Industrial Science and Technology
Extracting Info. from Binding VariablesExtracting Info. from Binding VariablesIf ?otype1 is bound to some value then hasInput is a non-inclusive property If ?sup1 and ?isup1 are bound to some classthen the class is an immediate superclass of Familycar
If ?sub1 and ?isub1 are bound to some classthen the class is an immediate subclass of Familycar
2222
National Institute of Advanced Industrial Science and Technology
Degree of match for service inputs:Degree of match for service inputs:ddinin((qq, , ss)) = DIN(= DIN(cincin11, , sinsin11) + … + DIN() + … + DIN(cincinmm, , sinsinmm))
Note: if hasInput of Note: if hasInput of ss in non-inclusive then Fail in non-inclusive then Fail
Degree of match for service outputs:Degree of match for service outputs:ddoutout((qq, , ss)=DOUT()=DOUT(coutcout11, , soutsout11)+ … +DOUT()+ … +DOUT(coutcoutnn, , soutsoutnn))
Degree of match for service function (0 Degree of match for service function (0 ≤ ≤ d(d(qq, , ss) ) ≤≤ 1): 1):
d(d(qq, , ss)=)=nn xx ddinin((qq, , ss)) ++ mm xx ddoutout((qq, , ss))
2 x |Exact| x2 x |Exact| x mm xx nn
2424
National Institute of Advanced Industrial Science and Technology
Degree of Match CalculationDegree of Match Calculation
DIN(DIN(inRinR, , inAinA))
if if inRinR==inAinA return return ExactExact
if if inRinR immSuperclassOf immSuperclassOf inAinA
return return ExactExact
if if inRinR superclassOf superclassOf inAinA
return return Plug-inPlug-in
otherwise return otherwise return SubsumeSubsume
DOUT(DOUT(outRoutR, , outAoutA))
if if outRoutR==outAoutA return return ExactExact
if if outRoutR immSubclassOf immSubclassOf outAoutA
return return ExactExact
if if outRoutR subclassOf subclassOf outAoutA
return return Plug-inPlug-in
otherwise return otherwise return SubsumeSubsume
2525
National Institute of Advanced Industrial Science and Technology
Service Ordering (Service Characteristics)Service Ordering (Service Characteristics)
Given a requester query Given a requester query qq, where , where pp specifies a specifies a service characteristicservice characteristic
Degree of match for a service characteristic:Degree of match for a service characteristic:ddpp((qq, , ss)) = DOUT(= DOUT(cc11, , scsc11) + … + DOUT() + … + DOUT(ccmm, , scscmm))
Degree of match for Degree of match for mm properties: properties:
2626
National Institute of Advanced Industrial Science and Technology
Overall ScoringOverall Scoring
The overall scoringThe overall scoring
dd((qq, , ss)=αx )=αx ddff((qq, , ss)) + (1-α) x + (1-α) x ddcc((qq, , ss)) , ,
where 0where 0≤≤αα≤≤11When When ddff((qq, , ss)) fails fails d(d(qq, , ss)) also fails also fails
Can be used to order general SPARQL query results Can be used to order general SPARQL query results by setting α=0by setting α=0
2727
National Institute of Advanced Industrial Science and Technology
Discussion and ConclusionsDiscussion and Conclusions
Research achievementsResearch achievementsUsing SPARQL as the query language for service Using SPARQL as the query language for service requesterrequester
Loosely-coupled architecture of the matchmaking Loosely-coupled architecture of the matchmaking systemsystemLighweight matchmakerLighweight matchmakerComplex service matching requestsComplex service matching requests
Major current challengeMajor current challengeHow to rewrite the requester query such that the How to rewrite the requester query such that the matching results will contain the information matching results will contain the information necessary for result ordering necessary for result ordering
2828
National Institute of Advanced Industrial Science and Technology
Discussion and ConclusionsDiscussion and Conclusions
Future workFuture workQuery rewriting rules for queries with SPARQL Query rewriting rules for queries with SPARQL UNION connecting type-matching patternsUNION connecting type-matching patterns
Degree of match based on the relationship Degree of match based on the relationship among classes and their property classes (e.g., among classes and their property classes (e.g., c2 is a property of c1)c2 is a property of c1)
Query rewriting rules for extracting the informationQuery rewriting rules for extracting the information