Jae-Yoon Jung - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Jae-Yoon Jung

Description:

WS-ECA: An ECA Rule Description Language for Ubiquitous Services Computing Jae-Yoon Jung ASRI Seoul National University, Korea jjyjung_at_gmail.com Seung-Kyun Han – PowerPoint PPT presentation

Number of Views:77
Avg rating:3.0/5.0
Slides: 19
Provided by: jackl153
Category:
Tags: jae | jung | network | ubiquitous | yoon

less

Transcript and Presenter's Notes

Title: Jae-Yoon Jung


1
WS-ECA An ECA Rule Description Language for
Ubiquitous Services Computing
  • Jae-Yoon Jung
  • ASRI
  • Seoul National University, Korea
  • jjyjung_at_gmail.com

Seung-Kyun Han Digital Interactions Lab. Seoul
National University, Korea jackleg83_at_gmail.com
Jonghun Park Digital Interactions Lab. Seoul
National University, Korea jonghun_at_snu.ac.kr
Kang Chan Lee Protocol Eng. Center ETRI,
Korea chan_at_etri.re.kr
2
Contents
1. Introduction
2. WS-ECA Language
3. The Framework of WS-ECA
4. Example
5. Rule Conflict Detection
6. Conclusions
3
Introduction Ubiquitous Computing Environments
How to coordinate ?
Source ETRI (Electronics and Telecommunications
Research Institute), 2006
4
Introduction Ubiquitous Computing Environments
Source ETRI (Electronics and Telecommunications
Research Institute), 2006
5
Introduction limitations
Focus on device ONLY
Define their own protocol device description
standard
No support coordination
6
Introduction Requirements of New Language
Adopt Event-Condition-Action Mechanism
7
WS-ECA Language ECA Overview
  • General structure of ECA Rule
  • Examples of ECA Rules
  • (conditional response)
  • on e1 if c1 do a1
  • on e1 if c2 do a2
  • (transitive property) on e1 if c1 doon
    e2 if c2 do a2
  • Rule 1 on e1 if c1 do a1 (?e1)
  • cf. action a1 generate internal event e1
  • Rule 2 on e1e2 if c2 do a2
  • (logical operation)
  • Event on (e1e2) e3 if c1 do a1
  • Condition on e1 if c1(c2c3) do a1
  • Action on e1 if c1 do a1(a2a3)

on event if condition do action
8
WS-ECA Language WS-ECA
  • WS-ECA Rules
  • Variables
  • Event
  • primitive composite events
  • Condition
  • Action
  • primitive composite actions

WS-ECA Rules
Variables
Device variables
Event variables
ECA Rule
Events
Time events
Event
Service events
External events
Condition
Internal events
Action
Actions
Generate intEvent
Generate extEvent
Invoke Service
9
WS-ECA Language Event
  • Event
  • triggers a rule

lteventsgt lttimeEvent typeonce namexsNCNamegt xsdateTime lt/timeEventgt lttimeEvent typeperiodic namexsNCName unitxsduration issuedxsdateTime? expiredxsdateTime?gtxsdateTime lt/timeEventgt lttimeEvent typerelative namexsNCName baseEventxsNCName intervalxsduration/gt ltintEvent namexsNCName/gt ltextEvent namexsNCName eventIDxsanyURI/gt ltsvcEvent typebefore namexsNCName servicexsQName/gt ltsvcEvent typeafter namexsNCName servicexsQName/gt ltcompositeEvent typeOR namexsNCNamegt event lt/compositeEventgt ltcompositeEvent typeAND namexsNCName TTLxsdurationgt event lt/eventgt ltcompositeEvent typeSEQ namexsNCName TTLxsdurationgt event lt/eventgt ltcompositeEvent typeNOT namexsNCNamegt event lt/compositeEventgt lt/eventsgt
10
WS-ECA Language Condition
  • Condition
  • boolean statement
  • XPath expression
  • Variables
  • specific elements of an event
  • state of device
  • Extension functions
  • getVariable
  • getDateTime

ltcondition expression"/alarm/today/_at_holiday'no'"
/gt
Variable
device variable
event variable
Functions Return type Return value
ecagetVariable(event QName, path PathExpr) xsany Specific values from event variables
ecagetDateTime(event Qname) xsdateTime Date and time information of the system
11
WS-ECA Language Action
  • Actions
  • instructions executed when a triggered rule is
    activated

ltactionsgt ltinvokeService namexsNCName serviceQNamegt xsany lt/invokeServicegt ltcreateIntEvent namexsNCName intEventxsNCNamegt xsany lt/createIntEventgt ltcreateExtEvent namexsNCName extEventxsanyURIgt xsany lt/createExtEventgt ltcompositeAction namexsNCName operatorAND transactionxsanyURIgt action lt/compositeActiongt ltcompositeAction namexsNCName operatorOR sequencexsbooleangt action lt/compositeActiongt lt/actionsgt
12
The Framework of WS-ECA
  • WS-Eventing SOAP
  • Use XML-Family standards
  • Web services in devices

13
Example morning cook service
  • A user set the get-up time to 700 AM on the
    alarm clock before sleeping.
  • The clock informs the rice cooker of 20 minutes
    before get-up.
  • The cooker starts to cook, and if rice is not
    enough, it alerts to the user at his/her get-up
    time.
  • When the cook is completed, the cooker informs
    the coffee maker, and the coffee maker will start
    to prepare a morning coffee after 10 minutes.

14
Example morning cook service
get-up time700AM
alarm.xml
ltrulesgt ltrule name"alarm-before-get-up-rule"gt ltevent name"before-get-up-time"/gt ltcondition expression"/alarm/today/_at_holiday'no'"/gt ltaction name"pre-alarm"/gt lt/rulegt ltrule name"alarm-on-get-up-rule"gt ltevent name"get-up-time"/gt ltcondition expression"/alarm/today/_at_holiday'no'"/gt ltaction name"get-up-alarm"/gt lt/rulegt lt/rulesgt
15
Rule Conflict Detection
  • ECA Rules in Ubiquitous Service Devices
  • WS-ECA rules can be defined by multiple users and
    registered to distributed devices.
  • Some rules may have discrepancies with each other
    and they may cause conflicts.
  • Service Constraints
  • a set of service invocation actions that are not
    allowed to occur at the same time.
  • e.g. 1) radio.turnUp() radio.turnDown()
  • e.g. 2) heater.trunOn() air conditioner.turnOn()
  • Global Rule Manager (GRM)
  • analyzing the defined rules for devices at
    build-time
  • resolving any rule conflicts at run-time

16
Rule Conflict Detection
  • Static Conflict
  • triggering rules cause a conflict
  • detect resolve at build-time
  • e.g.)
  • rule 1 on e1 if c1 do radio.turnOn()
  • rule2 on e1 if c1 do radio.turnOff()
  • Dynamic Conflict
  • triggering rules MAY cause a conflict
  • detect resolve at run-time
  • e.g.)
  • rule 1 on e1?e2 if c1 do radio.turnOn()
  • rule 2 on e1?e3 if c1 do radio.turnDown()

Flowchart of rule generation and execution
17
Conclusions
  • ECA Rules in Ubiquitous Service Computing
  • WS-ECA Rule description Language
  • Advantages of WS-ECA in Ubiquitous Computing
  • Active functionality of service devices
  • Stateless and light interaction
  • Decentralized rule processing based on ECA rules
  • Future Work
  • Develop conflict detection and resolution
    algorithm
  • Make language standard

18
Thank You !
  • Jae-Yoon Jung
  • ASRI
  • Seoul National University, Korea
  • jjyjung_at_gmail.com

Seung-Kyun Han Digital Interactions Lab. Seoul
National University, Korea jackleg83_at_gmail.com
Jonghun Park Digital Interactions Lab. Seoul
National University, Korea jonghun_at_snu.ac.kr
Kang Chan Lee Protocol Eng. Center ETRI,
Korea chan_at_etri.re.kr
Write a Comment
User Comments (0)
About PowerShow.com