A view-based approach for semantic service descriptions Carsten Jacob, Heiko Pfeffer, Stephan Steglich, Li Yan, and Ma Qifeng
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 Motivation
Abstracted semantic view for service provider and consumer based on an internal representation Three views for service description representation
Embedding
Internal service view, service model (IOPE*) ElementRepresentationDescription NameStringUnique name of the service. CategorySemantic concept reference (definition in ontology) Category of the service. Services of one category are only different with regard to their context, QoS parameters, and grounding. Input parameters List of concept references Semantically represented input parameters. Output parameters List of concept references Semantically represented output parameters. PreconditionList of statementsPreconditions for the execution of the service. EffectRuleList of rulesRules specifying the possible effects of the service. Service contextList of statementsContext parameters of the service, e.g., location. QoS ParameterList of statementsQuality of Service parameters.
[(#lightSwitch1 #hasInput #OnValue) --> (#lightSwitch1 #hasEffect #Bright1)] LightSwitch example
on off Example: definition of concepts
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 Service provider view
ElementInput and transformation CategorySelection of a proper category class from the tree OR string input (name and domain) Input and output parameter List of allowed values OR suitable range OR selection of a proper existing concept PreconditionList of possible values OR range OR facts (referring to concept classes) Effect ruleRule with condition and effect [ServiceID] hasInput [X] [ServiceID] hasMatchedPrecondition [Y] [ServiceID] hasContext [Z] Service contextProperty and value OR complex description (also defining new concepts) QoS parameterProperty and value OR complex description (also defining new concepts) Service provider view – transformation rules
Three phases 1.User specifies goal by selecting a general effect 2.User selects possible sub-effects, which are presented to specify the effect in more detail 3.User selects additional effects from proposals Service requester view Example: (E) call-setup (E‘) to nearby restaurant (E‘+H) send SMS to friends in buddylist
Exemplary service classification
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, … Service requester view - transformation int step=0; node root = null; WHILE (step < maxEffectsPerRule) { r = getNextRule(); IF (r.numberOfEffects() = step) { IF (r.factsFulfilled() = true) { FOR (all Leaves){ IF (Leaf l.getEffects(). isSubsetOf(r.getEffects())){ createNode(Effects); } ELSE { step++; }
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) Grounding
Possible Embedding in IP Multimedia Subsystem (IMS)
Example user subscription
Thank you for your attention! Carsten Jacob
BACKUP
Excursion: Semantic Web technologies
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: class relationships (disjointness,...), cardinalities, property characteristics (symmetry,...), restrictions, Excursion: Ontology 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
Layering: – OWL Lite: basic functionality – OWL DL: all conclusions are computable, ensures decidability – OWL Full: no restrictions concerning the OWL vocabulary Characteristics: – XML, human readable text – Distributable, support for classification and inconsistency checks, extensible,... – Standardized, widely-used, tool support – Web-oriented: e.g., resource identification, Open World Assumption (OWA), but no Unique Name Assumption (UNA) Excursion: Web Ontology Language (OWL)
Excursion: OWL Example <rdf:RDF... xml:base=" pizza/2005/10/18/pizza.owl
Possible Embedding in IMS
Service composition example