Скачать презентацию Coupled Signature and Specification Matching for Automatic Service Скачать презентацию Coupled Signature and Specification Matching for Automatic Service

18cc80c2ff97e5ca9fda7178c34096b0.ppt

  • Количество слайдов: 30

Coupled Signature and Specification Matching for Automatic Service Binding Michael Klein Universität Karlsruhe (TH) Coupled Signature and Specification Matching for Automatic Service Binding Michael Klein Universität Karlsruhe (TH) Birgitta König-Ries TU München/Universität Karlsruhe (TH) www. ipd. uka. de/DIANE 1

Motivation (mobile) Application Location print(String doc) ? void print(String doc, Location loc) void print(String Motivation (mobile) Application Location print(String doc) ? void print(String doc, Location loc) void print(String text, Location loc) String print. Next() void print. Next. Week(String doc) boolean print(String doc, int start. Page, int end. Page) boolean print(URL url, Resolution res, int room. Nr) boolean elephant(String giraffe, int zebra) 2 à Which service provider to use? à How to bind the parameters?

Aim and Challenges Goal Automatic, semantic service binding Prerequisites § Service descriptions that capture Aim and Challenges Goal Automatic, semantic service binding Prerequisites § Service descriptions that capture semantics and message flow § Ability to automatically match service offers and requests 3

Service Descriptions (1) Location print(String s) Prints file s on a printer nearby and Service Descriptions (1) Location print(String s) Prints file s on a printer nearby and returns the location of the printer Location print(String s) Prints the file „testpage. ps“on printer s and returns the office number of the sysadmin. Identical Description! : Service Print. Request Message s : String Print. Response Message presents input output location : Location : Profile 4 : Document Locally. Available precondition effect : Document Printed

Service Descriptions (2) Location print(String s) Print. Request Message s : String Print. Response Service Descriptions (2) Location print(String s) Print. Request Message s : String Print. Response Message input output location : Location : Profile : Document Locally. Available precondition effect : Document Printed void print(String text, Location loc) Print. Request Message text : String loc: Location input : Profile 5 : Document Locally. Available precondition effect : Document Printed

Our Approach to Service Description § Fully state based service descriptions with § Offers Our Approach to Service Description § Fully state based service descriptions with § Offers describing one service instance § Requests describing sets of admissable services § Concepts to achieve this § Object sets § Variables § Possibility to match requests and offers with differing interfaces 6

Object Sets Type tcs dc Property conditions Object set § cs ms Members of Object Sets Type tcs dc Property conditions Object set § cs ms Members of an object sets are all instances of a class meeting the conditions 7

Object Sets Type tcs dc Property conditions Object set § cs ms § Type Object Sets Type tcs dc Property conditions Object set § cs ms § Type Check Strategy § Allows or disallows members of the set to belong to sub- or superclasses of the specified type 8

Object Sets Type tcs dc Property conditions Object set § cs ms § Direct Object Sets Type tcs dc Property conditions Object set § cs ms § Direct conditions §Conditions on the values of the objects in the set § Property conditions §Conditions on the properties of the objects in the set 9

Object Sets Type tcs dc Property conditions Object set § cs ms § Connecting Object Sets Type tcs dc Property conditions Object set § cs ms § Connecting Strategy §Specifies how individual property conditions should be combined 10

Object Sets Type tcs dc Property conditions Object set § cs ms § Missing Object Sets Type tcs dc Property conditions Object set § cs ms § Missing strategy §Specifies how missing property conditions should be treated 11

Variables cat Type tcs default value dc Property conditions Object set ms cs § Variables cat Type tcs default value dc Property conditions Object set ms cs § Category §IN (to be filled in by the requestor) §OUT (to be filled in by the offerer) 12

A Service Offer IN Resolution : Service default = 600 dpi presents resolution : A Service Offer IN Resolution : Service default = 600 dpi presents resolution : Profile : Locally. Available precondition entity Printed effect entity location IN Document IN Room url String 13 in {room 335, room 336}

A Service Request : Service presents Printed : Profile effect min(entity, room, color) - A Service Request : Service presents Printed : Profile effect min(entity, room, color) - entity OUT IN location Room Document within url String 14 ==http: //www. ipd. uka. de… Building ==geb 50. 34 color + color Color ==bw

Matching (mobile) Application Location print(String doc) : Service presents Printed : Profile effect min(entity, Matching (mobile) Application Location print(String doc) : Service presents Printed : Profile effect min(entity, room, color) color + entity IN Document location OUT Room within url String ==http: //www. ipd. uka. de… 15 Building ==geb 50. 34 Color color ==bw

Matching (mobile) Application IN Resolution : Service default = 600 dpi presents Location print(String Matching (mobile) Application IN Resolution : Service default = 600 dpi presents Location print(String doc) resolution : Service : Locally. Available presents Printed : Profile effect min(entity, room, color) color IN Document Color color ==bw Printed effect precondition entity + entity : Profile entity IN Document location IN Room location url OUT Room in {room 335, room 336} String within url String Building ==geb 50. 34 void print(URL url, Resolution res, int room. Nr) ==http: //www. ipd. uka. de… 16 Basically: graph matching Service Provider X

Matching : Service presents Printed : Profile effect min(entity, room, color) : Locally. Available Matching : Service presents Printed : Profile effect min(entity, room, color) : Locally. Available 17 precondition : Profile effect Printed

Matching : Service presents Printed : Profile effect min(entity, room, color) : Locally. Available Matching : Service presents Printed : Profile effect min(entity, room, color) : Locally. Available 18 precondition : Profile effect Printed Request: set, Offer: instance: Aim: determine, whether offer instance is a member of request set § type (r) = type(o)? § direct Conditions? § property Conditions?

Matching : Service presents Printed : Profile effect min(entity, room, color) : Locally. Available Matching : Service presents Printed : Profile effect min(entity, room, color) : Locally. Available as before 19 precondition : Profile effect Printed

Matching Printed Color min(entity, room, color) entity location OUT IN color + IN Resolution Matching Printed Color min(entity, room, color) entity location OUT IN color + IN Resolution resolution default = 600 dpi ==bw entity - Room Document 20 ´resolution as before to check property conditions, take § connecting strategy and § missing strategy location IN IN Document Room in {room 335, room 336}

Matching IN IN Document url String ==http: //www. ipd. uka. de… as before aim: Matching IN IN Document url String ==http: //www. ipd. uka. de… as before aim: determine, whether the intersection of the two sets is non-empty 21

Matching IN IN Document url String ==http: //www. ipd. uka. de… as before check Matching IN IN Document url String ==http: //www. ipd. uka. de… as before check direct condition assign appropriate value to the IN variables 22 String

Matching OUT location Room IN within Building Room in {room 335, room 336} ==geb Matching OUT location Room IN within Building Room in {room 335, room 336} ==geb 50. 34 as before check property condition, use ontology to determine match assign value from the intersection to the variables 23

Matching Color color + ==bw no match missing strategy +: assume fulfilled 24 Matching Color color + ==bw no match missing strategy +: assume fulfilled 24

Completing Offer IN Variables IN : Service Resolution default = 600 dpi presents resolution Completing Offer IN Variables IN : Service Resolution default = 600 dpi presents resolution : Profile : Locally. Available precondition entity Printed effect entity location IN Document IN Room url String 25 in {room 335, room 336}

Critical Cases Request Offer OUT IN instance -missing- basic matching or OUT-Variable How many Critical Cases Request Offer OUT IN instance -missing- basic matching or OUT-Variable How many values from o are also in r? all: true some: (missing) none: false Set How many values from o are also in r? Use missing strategy none: false else: assign common value to o out additionally for OUT-Variable matching result: true: assign o to r false: assign null to r 26 matching result: true: connect o and r neutral: assign o later false: assign null to r matching result: assign null to r true: assign x to r false: assign null to r

Summary § Semantic, dynamic service binding possible with § state based descriptions for service Summary § Semantic, dynamic service binding possible with § state based descriptions for service offers and requests with object sets and variables § automatic matching 27

Summary § Semantic, dynamic service binding possible with § state based descriptions for service Summary § Semantic, dynamic service binding possible with § state based descriptions for service offers and requests with object sets and variables § automatic matching § Unfortunately, things aren‘t quite as easy as I tried to make you believe … § Necessary to deal § with fuzzy user preferences § …. § Current work takes this into consideration § Extended matcher is being implemented right now 28

T H A N K S . . . for your attention! 29 T H A N K S . . . for your attention! 29

Service Descriptions (1) Foundation: Ontologies Location Room within Schema Building Instances room 2. 14: Service Descriptions (1) Foundation: Ontologies Location Room within Schema Building Instances room 2. 14: Room 31 room 335: Room within geb 50. 34: Building