1 / 16

Brokering Services A Transformation-Based Perspective

Brokering Services A Transformation-Based Perspective. Stephen Potter & Marco Schorlemmer. www.aktors.org. Services and the Semantic Web. Semantic Web vision: a move toward augmenting information with well-defined and machine-processable semantics. Semantic Web as a medium for:

cgage
Download Presentation

Brokering Services A Transformation-Based Perspective

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Brokering ServicesA Transformation-Based Perspective Stephen Potter & Marco Schorlemmer www.aktors.org

  2. Services and the Semantic Web • Semantic Web vision: a move toward augmenting information with well-defined and machine-processable semantics. • Semantic Web as a medium for: • service-providers to advertise their services; • service-requesters to publicise their needs. • Missing: some means by which available services are matched to stated needs. • A web service is a service that is visible on and invoked via the web (using web-based communications protocols).

  3. Some sort of brokering mechanism? • Service-providers advertise their available services to the broker using some specification language; • Service-requesters post their requests to the broker in the same language; • Broker attempts to find one or more available services (or sequences of services) that would appear to satisfy the request. • Broker then: • Sends these details to requester; • Or invokes the services directly and returns results; • (Or tells requester that no matching services were found.)

  4. Brokering Problem • Few brokers? • Centralise brokering services; • But: overheads of storing and reasoning with many advertisements (and is ‘general reasoning’ adequate?) • Or many brokers? • Specialised brokering services; • But: too many and the problem shifts to becoming one of finding the right broker… • Want broker to have reasonable coverage: need flexible brokering mechanism.

  5. Brokering and Ontologies • Application ontologies used to provide content of specifications (and define valid reasoning). • Two extremes: ‘ontology-independent’ and ‘ontology-dependent’ brokers. • ‘Ontology-independent’ broker: • General applicability but relies on simple pattern-matching reasoning to find services. • ‘Ontology-dependent’ broker: • Sophisticated ontological reasoning but limited applicability (must re-engineer for new domains).

  6. Information Transformations • So: want a brokering mechanism that lies somewhere between the two extremes. • Unifying concept of a service as providing an information transformation provides this? • Some transformation of input-information into output-information. • Insist on the presence of these abstract concepts in the application ontology: • Relating the services described using the ontology to the broker’s abstract idea of an information transformation. • Gives the broker a ‘semantic hook’ into the ontology. • Gives provider- and requester-agents some idea of the appropriate content of service descriptions.

  7. A Brokering Environment • Assume environment includes: • Agents (have unique identifier/location (URI), plus ability to communicate with environment (basic mechanism + ACL): • Service-providers; • Service-requesters; • One or more brokers (locations of which are known a priori to providers and requesters); • Brokering ontologies (locations known a priori to (some) agents.) • An agent has the ability to process and ‘understand’ certain ontologies.

  8. Broker ‘Capability’ • Broker makes known its ‘ontological capability’ to the environment in terms of the ontologies that it can handle: • Either explicitly, by, for example, giving particular application ontology URIs; • Or, more generally, by specifying the ontology language it can deal with (e.g. RDFS, OWL) along with certain facts it expects to find in any ontology. • Assume this capability is also known to other agents a priori. • Example of an ontological capability…

  9. Example Ontological Capability • Ontology language: • class(C) defines a class (concept), here considered to be a collection of individuals in the domain of discourse. A class is a unary relation, C(x), which is interpreted as meaning that individual x is an instance of class C. • subclass-of(C,P): class C is a subclass of class P iff every instance of class C is also an instance of class P. • relation(R) refers to a set of tuples that represents a binary relationship among individuals in the domain of discourse. Hence R(x,y) is interpreted as meaning that individual x stands in relation R to individual y. • subrelation-of(R,P): R is a subrelation of P iff every tuple of R is also a tuple of P. • implies(A,B): material implication (if A then B). • and(A,B,...): logical and, can take any number of arguments. • thing, a term indicating the most general class and relation, a term indicating the most general relation. • Ontology facts: • Must provide axioms defining classes input_information, output_informationand relation transformation, plus the following axiom: implies(information_transformation(I,O), and(input_information(I), output_information(O), transformation(I,O))).

  10. Example Ontology - nlp-ont class(language_data). class(processed_data). … subclass-of(language_data,thing). subclass-of(processed_data,language_data). … class(representation_format). class(free_text). … class(language). class(english). class(chinese). … class(domain). class(business). class(government). … relation(language_process). relation(analysis). relation(generation). … subrelation-of(language_process, relation). subrelation-of(analysis, language_process). … class(input_information). class(output_information). relation(information_transformation). relation(transformation). implies(information_transformation(I,O), and(input_information(I), output_information(O), transformation(I,O))). implies(input_information(I), and(language_data(I),language(I), representation_format(I),domain(I))). implies(output_information(I), and(language_data(I),language(I), representation_format(I),domain(I))). implies(transformation(I1,I2), language_process(I1,I2)).

  11. Service Descriptions • A Service is defined as: xy.information_transformation(x,y)  input_information(x), output_information(y), transformation(x,y). and

  12. input_information output_information transformation Example Services: • tokeniser(x,y)  unprocessed_data(x), british_english(x), free_text(x), domain(x), tokenised_text(y), british_english(y), xml_encoding(y), domain(y), tokenising(x,y). • tagger(x,y)  tokenised_text(x),english(x), markup(x), domain(x), pos_tagged_text(y), english(y), xml_encoding(y), domain(y), pos_tagging(x,y). • Advertising a service: <agent-id,ontology-id,information-transformation> • E.g., tokeniser service: • <tokeniserAgentID,nlp-ont,(tokeniser(x,y) unprocessed_data(x),…,tokenising(x,y))> • …and a request has the same form.

  13. Broker Algorithm • With new request <RID,O,D>: • Search advertised services for those whose capabilities match the desired output_information and transformation of D. • If the input_information of these services also matches, then they represent solutions. • Else try to form sequences by finding other services whose output_information matches the input_information of these matching services and combining the two into a sequence… • …and repeat from 2.

  14. Brokering Examples • New Request: pquery(x,y) unprocessed_data(x),language(x),free_text(x),domain(x), parse_tree(y),language(y),markup(y),domain(y), analysis(x,y). • Matches: ms-parser(x,y) unprocessed_data(x),chinese(x),free_text(x),domain(x), parse_tree(y),chinese(y),xml_encoding(y),domain(y), parsing(x,y). • …and also the sequence: tokeniser(x,y)unprocessed_data(x),british_english(x),free_text(x),domain(x),             tokenised_text(y),british_english(y),xml_encoding(y),domain(y), tokenising(x,y) ...and then: tagger(x,y) tokenised_text(x),english(x),markup(x),domain(x)              pos_tagged_text(y),english(y),xml_encoding(y),domain(y), pos_tagging(x,y). ...and then: parser(x,y)  pos_tagged_text(x),british_english(x),xml_encoding(x),domain(x),              parse_tree(y),british_english(y),xml_encoding(y),domain(y), parsing(x,y).

  15. Discussion: General • Basic reasoning mechanism: subsumption • Broker mustbe able to ‘prove’ subsumption over the terms in its specified ontology language (but this need be neither complete nor sound…) • Trade-off: completeness/soundness of reasoning vs. expressiveness of language vs. efficiency? • Ontology requirements: • Ontology must contain ‘hooks’ to allow the broker to comprehend it: is this a reasonable request? • When is broker algorithm valid? • When transformations are independent (in some sense)… • How general is this notion of an information transformation?

  16. Discussion:Relationship with DAML-S/OWL-S • Service Profile inputs and outputs implicitly represent transformation. • But no consideration of preconditions/ effects here… • How are these expressed/reasoned with in distributed environments? • Profile describes what should be said, but not how to say it… • here we are interested in the expression of this content. • (Here we are trying to preserve generality as far as possible…)

More Related