1 / 23

A view-based approach for semantic service descriptions

A view-based approach for semantic service descriptions. Carsten Jacob , Heiko Pfeffer, Stephan Steglich, Li Yan, and Ma Qifeng. Motivation. Semantic service descriptions can be applied to enhance automatic service selection, composition, and invocation processes

eryk
Download Presentation

A view-based approach for semantic service descriptions

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. A view-based approach for semantic service descriptions Carsten Jacob, Heiko Pfeffer, Stephan Steglich, Li Yan, and Ma Qifeng

  2. Motivation • Semantic service descriptions can be applied to enhance automatic service selection, composition, and invocation processes • Service providers and consumers consider service descriptions from a different perspective • Publish and advertise a service • Service category, grounding, … • Search for a particular kind of functionality • Service effect, costs, find similar services, … • Potential for abstracted views for both parties • Move complexity inside the automatic service matching process

  3. Three views for service description representation • Abstracted semantic view for service provider and consumer based on an internal representation

  4. Embedding

  5. Internal service view, service model (IOPE*)

  6. LightSwitch example 1 <Service name="LightSwitch1"> 2 <hasCategory resource="#LightSwitch"/> 3 <hasInput resource="#OnOffValue"/> 4 <hasOutput resource="#OnOffValue"/> 5 <hasEffectRule ID="Rule1"> 6 [(#lightSwitch1 #hasInput #OnValue) --> (#lightSwitch1 #hasEffect #Bright1)] 7 </hasEffectRule> 8 <Bright ID="Bright1"/> 9 <hasContextParameter> 10 <ServiceContext ID="EffectContext1"> 11 <hasLocation resource="#Room15"/> 12 </ServiceContext> 13 </hasContextParameter> 14 </Service>

  7. Example: definition of concepts <Input ID=”#OnOffValue”> <oneOfparseType=”Collection”> <Thing about=”#OnValue”> <Thing about=”#OffValue”> </oneOf> </Input> <Input ID=”#OnValue”> <hasValueparseType=”String”>on</hasValue> </Input> <Input ID=”#OffValue”> <hasValueparseType=”String”>off</hasValue> </Input>

  8. Service provider view • Categories are defined by their features • Input or output parameter • Precondition • Effect rule • Service provider • Browses the category tree and adds service (and category if necessary) • Lists the features of the service to enable an automatic classification

  9. Service provider view – transformation rules

  10. Service requester view • Three phases • User specifies goal by selecting a general effect • User selects possible sub-effects, which are presented to specify the effect in more detail • User selects additional effects from proposals Example: (E) call-setup (E‘) to nearby restaurant (E‘+H) send SMS to friends in buddylist

  11. Exemplary service classification

  12. Service requester view - transformation • Parse service effect rules to create effect tree if a new service is published • Semantic relationships among effects enable the definition of sub effects • According to the user‘s choice proper service categories are marked • Final selection is based on • Available input parameters (manually provided or derived) • QoS parameters, user ratings, … int step=0; node root = null; WHILE (step < maxEffectsPerRule) { r = getNextRule(); IF (r.numberOfEffects() = step) { IF (r.factsFulfilled() = true) { FOR (all Leaves){ IF (Leafl.getEffects(). isSubsetOf(r.getEffects())){ createNode(Effects); } } } } ELSE { step++; } }

  13. Grounding • Semantic Web Services description • Based on OWL-S • Object references defined in ontologies (OWL/RDF) to enable inference (SWRL, Jena rules, …) and classification using reasoner programs • Workflow descriptions for consideration of compositions • Web Services Business Process Execution Language (WS-BPEL), Web Service Choreography Interface (WSCI), Business Process Modeling Language (BPML)

  14. Possible Embedding in IP Multimedia Subsystem (IMS)

  15. Example user subscription

  16. Thank you for your attention! Carsten Jacob (carsten.jacob@fokus.fraunhofer.de)

  17. Backup

  18. Excursion: Semantic Web technologies

  19. Excursion: Ontology • Explicit formal specification of objects or concepts and their relationships • Gruber (1993): “an explicit specification of a conceptualization” • Describes: • Classes • Individuals • Attributes/ Properties • Relationships • More expressiveness: classrelationships (disjointness, ...), cardinalities, propertycharacteristics (symmetry, ...), restrictions, ... Gruber, T. R.. (1993). Toward principles of the design of ontologies used for knowledge sharing. Presented at the Padua workshop on Formal Ontology, March 1993, later published in International Journal of Human-Computer Studies, Vol. 43, Issues 4-5, November 1995, pp. 907-928.

  20. Excursion: Web Ontology Language (OWL) • Layering: • OWL Lite: basicfunctionality • OWL DL: all conclusions are computable, ensuresdecidability • OWL Full: norestrictionsconcerningthe OWL vocabulary • Characteristics: • XML, human readabletext • Distributable, supportforclassificationandinconsistencychecks, extensible, ... • Standardized, widely-used, toolsupport • Web-oriented: e.g., resourceidentification, Open World Assumption (OWA), but no Unique Name Assumption (UNA) http://www.w3.org/TR/owl-ref/

  21. http://www.co-ode.org/ontologies/ pizza/2005/10/18/pizza.owl Excursion: OWL Example <?xml version="1.0"?> <rdf:RDF ... xml:base="http://www.co-ode.org/ontologies/pizza/2005/10/18/pizza.owl"> <owl:Ontology rdf:about=""> ... <owl:imports rdf:resource="http://protege.stanford.edu/plugins/owl/protege"/> </owl:Ontology> ... <owl:Class rdf:ID="Pizza"/> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty rdf:ID="hasTopping"/> </owl:onProperty> <owl:allValuesFrom> <owl:Class> <owl:unionOf rdf:parseType="Collection"><owl:Class rdf:ID="FruitTopping"/> ... <owl:Class rdf:ID="CheeseTopping"/></owl:unionOf> </owl:Class> </owl:allValuesFrom> </owl:Restriction> </owl:intersectionOf> </owl:Class> ...

  22. Possible Embedding in IMS

  23. Service composition example

More Related