developing and executing electronic commerce applications with

Post on 01-Mar-2022

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

!!

" # $ %

& # # ' # $% ##(##$## ( '% # # %)#$(#(#($ *$ ( ### # $%

& # %" % $%+( $ * # # # % ,# # $##% ' # '# # ## % (# ( ,%

"-(# EDEE# % " (

( .EDEE/# ('%

&%

&012#3!4%

!"#$##$

#$#516#

7#8(9%%%(99:%$+"#%;

+*$#

%"<%

% &&&

" $ $ % "=0 =0 # #$%" & '>%7 ##'>%"?!#!!!###%

" !! %%$$%

• Courier font%

• italic Times Roman%

• Arial 8 point font%

• # ###Arial 9 point font%

• # %

• &.@A/Arial Narrow%

• @'# @B$. /##(*

& $##( ./ $ './%" '%)*

C

& EDEE # %

C

!"

# $

;$ %

"#A#+$ %

&$$#-D A# # # $%&, E# &+ 0BD# !! %& 0 & # - ' !!!%

$ #$# # F % "$ E#-G#$#"$#-#; #D6#-#@A#"A#+$#++#"+#@$+#)G#+$#A"#+B#-B#H%+$'%#& sys-admins# & 6% 7 $# +-#&#$@6$%

&% "D=+I0+II# & < % "7$# #=E0E#7+#D##$% '% "##6#6#E#A#+#+#7$###@##"#B,%

)# & "# @# "%& # 77$ # 6#E0 A# A#+ @ # # #$##$ %

$*

%&'((() D -+% ( D @ (% '()(*+, - - . /. ) 012..)01$###3%+#+7% !!!%

%&'(() D -+% ( (% )$## ')+ 045%D#E%- !!J%

%&'(() D-+% ( (%'67-267-$## 3%7#%- !!J%

%&'(() D-+% @ B@ %8- 4)'%#&% !!J%

%&'(()D-+%@ ( % ) 8 , - 7 - * 2,-7-*83% A% D#+%#"K%7 !!J%

%&'((') D -+% & E0' " @ %9+4:%JJ.?/%& ) + % &7)@+% % J(52%7 !! %

%&'((') D -+% " A " &## 7% 0,'+1-02+7.4;#$3%&#A#E%+ !! %

%*&'((')# +#D-+%+$DI%"<1+( ' 70 270;#$3% ; E# % !! %A7 444%(H%D#6%%3L(J!?% !! %

%*&'((') # +# D -+% + D % ) = ,-7-*2,-7-*=3% +#% !! %

%*&'((')# +#D-+%(%)"-0,9)14'*()2*>17?#$3%#% !! %

%+'((')E% ",, '% ' (0')0% %#% !! %

%,--)H%+ & %, , 8 - 2,, !!!3%#7%J!(J #J333%M=+" 0:,7@ *% .J/%%J(2% !!!%

"$$*

" &#>)#

" #>95#

" #;-1#

" & +# BD#>)#<

" &#) #>-5#

MD%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% & @'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% A %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% & )%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% & "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

. /////////////////////////////////////////////////////////////////// J%J @D$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1 J%5 @&+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 J%4 @6"$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 J%1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J! J%? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JJ

' 0 #//////////////////////////////////////////// %J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J4

%J%J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J? %J% +#(%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! %J%5 )# %% 5

% @(%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1 % %J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 % % + #%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 % %5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3 % %4 (%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 5! % %1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 55

%5 (%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 54 %5%J %%%%%%%% 5L %5% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 52 %5%5 (%%%%%%%%%%%%%%% 53 %5%4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4J %5%1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 41

%4 D+N%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4L %4%J $#%%%%%%%%%%%%%% 43 %4% @%%%%%%%%%%%%%%%%%%%% 1! %4%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1J

%1 & =0%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1 %1%J ,( %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 15 %1% "$(%%%%%%%%%%%%%%%%%%%%%%%%%% 11 %1%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1? %1%4 , %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?J %1%1 =&(0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?J %1%? )(( %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?J %1%L A %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?

%? A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?5 %?%J &*"=0%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?5 %?% (%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?4 %?%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?? %?%4 #%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?L %?%1 " %%%%%%%%%%%%%%% ?2 %?%? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L

%L *@' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L4 %L%J .5/%%%%% L4 %L% .4/ L4 %L%5 +.1/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L1 %L%4 ##.?/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L? %L%1 +.L/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L?

1* ///////////////////////22 5%J @%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L2 5% @O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 25 5%5 (O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2?

5%5%J $%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2? 5%5% B$J*O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 22 5%5%5 B$ *O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3! 5%5%4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3 5%5%1 $%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 34

5%4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 34

3 . //////////////////////////////-2 4%J (%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 32 4% .O/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J!4 4%5 O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J!? 4%4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J!3 4%1 7./%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JJJ 4%? ./%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JJ5 4%L %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JJL

4 ////////////////////////////////////////////- 1%J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J !

1%J%J E0'"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J 4 1%J% E0'"%%%%%%%%%%%%%J ?

1% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J 2 1%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J 3

1%5%J H%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J 3 1%5% &.F/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%J5

1%4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J54 1%4%J H./ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J51 1%4% &./%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J51

1%1 A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J5L 1%1%J (.(/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J4J 1%1% .(/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J4J

1%? ./ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J4 1%?%J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J4 1%?% H*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J1J 1%?%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J14 1%?%4 ./((%%%%%%%%%J11 1%?%1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J11 1%?%? ((((%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J12 1%?%L ./%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J12 1%?%2 &%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J?! 1%?%3 A*)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J?J

1%L %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J??

*5 6, ////////- ?%J *&N %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL! ?% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL4

?% %J J*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%JL? ?% % * %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%JL3

?%5 @%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J2J ?%5%J J*@

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J2 ?%5% *@

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J23 ?%4 "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J3! ?%1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J3

2 7 * ///////////////////////-4 L%J +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J31

L%J%J & %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J3? L%J% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%J3L

L% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J33 L% %J &%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !! L% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !J

L% %5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! L%5 & %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !5 L%4 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !?

8 //////////////////////////////////////////////////////////////////////'(- 2%J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !3

2%J%J %%%%%%%%%%%%%% J! 2%J% )(%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JJ 2%J%5 &%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J 2%J%4 (%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J5 2%J%1 (%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J5 2%J%? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J4 2%J%L %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J4 2%J%2 +(%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1 2%J%3 'I%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1

2% B$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1 2% %J %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1 2% % & %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J? 2% %5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%% J?

2%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J? 2%5%J "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J? 2%5% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL 2%5%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 5?

2%4 )B$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 52 2%4%J &%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 52 2%4% ( %%%%%%%%%%%%%%%%%%%%%%%% 52 2%4%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 53 2%4%4 %%%%%%%%% 4! 2%4%1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4!

2%1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4J

- " //////////////////////////////////////////' 3%J

.5/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 45 3%

.4/ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 44 3%5 ##

.1/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 41 3%4

.?/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4? 3%1

'.L/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4L 3%? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4L

5 9: ////////////////////////////////////////////////////////////' - J%J O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1!

J% O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1J J%5 ("O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1J J%4 (@O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 J%1 O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1? J%? 7O%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1? J%L " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1L

5' #/////////////////////////////////////////'4- %J @'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?! % ''%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ? %5 ''%%%%%%%%%%%%%%%%%%% ?1 %4 ''%%%%%%%%%%%%% ??

& //////////////////////////////////////////////////////////////////////////////////'2

.5

" ' . @B$/*

7 ./

J .J3/ " ###./(%

L3

. !/ % J L5 . / +./% 3!4 . / ('% L31 . 5/ D'('#

%2

? . 4/ (#((#%

2!

L . 2/ % 3J2 . 3/ (

#I%J !

3 . 3/ % JL4J! .5!/ ('

%3!

JJ .5 / )P###Q;L2RP%

J??

J .5 / @P###,P# P0%

JL!

J5 .5 / @'% ####Q6A33R%

J23

J4 .5 / (% J2JJ1 .55/ " P

P(%J3!

J? .54/

!!

JL .52/ &P.'/P %

23

J2 .53/ B./ ,%" %

23

J3 .53/ ', #,#%

!1

7 ./

! .4J/ "(# I%

JJL

J .4 / &./$% J?! .45/ &

&J12

5 .45/ " .%%=0=0/%

J?5

4 .44/ B ####%

J1?

1 .41/ %D%

J55

? .43/ ./##%

J??

L .1!/ # %

J13

2 .1J/ "#( %

J?L

3 .?!/ ###.(#(#(I/##$%

J J

5! .? / #%

J??

5J .?L/ ######%

J14

5 .?L/ % J1255 .L!/ (%

##%J?J

54 .L!/ D( % J4J51 .L!/ P

Q;L2RP%J5L

;

* Q)32#)33R

; A

,*< "$Q-)7 !!!R

:; AQ-3LR

& DQ+DD@31#+31R

* QD+D; !!!R

* ((Q33R

*,** ( QD !! #D !!JR

3;& )ADQE+3L#+ !!!R

=*7 6I +Q+3LR

.*<3 & "$).http://www.ietf.org//

;:1 A,Q;A33R

;, A.Q+3?R/

;=. A6&Q+ !!!R

>; 7AQ31R

1:.: .J/ &$QD+D; !!JR. / I &

.http://www.oasis-open.org//

1; ,AQ+6 !!JR

1,; ,A.http://www.odmg.org//

17= ,+6.http://www.omg.org//

1:: Q7) !!JR

19; ,OA.http://www.odmg.org//

.7 & ")0&+Q+ B !!JR

,; .J/ D0AQA !!J#A7 !!!#AD733R. / E0AQE3LR

:; AQ6"H !!!R

7 ?1, @+Q&31R

:; AQ6A33#&D+ !!J#@6B !! R

:,; A.QB1J#2!#+B35R/

:; A

:;, AQ+3?R

:; AQ@S) !!JR

:9; OAQ&33R

<=: "6QE@@32R

7; "+$AQEA !!JR

7; +6+AQ+6 !!JR

07 B$+.http://www.wfmc.org//

037: B$+

@7; +$A.http://www.w3c.org/xml//

.5 3

)J*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J! ) *'

TJ!#!!!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 )5*'

T 1#!!!$;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 )4*.'/%%%%%%%%%%%%%%%%%%%%%% 2L )1* being_supplier1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 35 )?*being_supplier1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 35 )L*EDEE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 31 )2*6EDEE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J )3*(((( %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1! )J!*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1! )JJ* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J15 )J *D%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1L )J5*D %%%%%%%%%%%%%%%%%%%%%%%%% J1L )J4*A %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J?1 )J1*A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J?1 )J?*% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL5 )JL**%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL5 )J2*

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JLL )J3* being_supplier1#

# %%%%% JL2 ) !*being_supplier1#

##(%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL2

) J*&*%%%%%%%%%%%%%% J2! ) *"*'$

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J3J ) 5*&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J3L ) 4*(%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J33 ) 1*&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !J ) ?*7'./#

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J ) L*"##($#

#( %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4

) 2*##($#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1

) 3*"##($#teme##(IUJ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ?

)5!*"##($#teme# 1J#(I%%%%%%%%% ?

)5J*##($#teme##(IUJ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2

)5 *##($#teme# 1J#(I%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2

)55*"#EdeeCoverer.U$U'/ %%%%%%%%%%%%%%% 5!

)54*#EdeeCoverer.UU'/ %%%%%%%%%%%%%%%% 5J

)51*"#EdeeCoverer#.U$U'/%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 5

)5?*"#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 55

)5L*"# 1J#(I%%%%%%%%%%%%%%%%%%%%%% 55

.5 <

"J* F%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% !

" *%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L5 "5*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2! "4*'#EdeeCoverer#

being_supplier1 %%%%%%%%%%%%%%%%%%%%%%%%%% 23 "1* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J5! "?*6%%%% J5J "L*./ %%%%%% J55 "2*./ %%%%%%%%%%%%%% J5? "3*6%%%%% J5? "J!*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J52 "JJ*&%%%%%% J45 "J **

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J42 "J5*#'

./%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1 "J4*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J1? "J1* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J?5 "J?*=0./%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J?4 "JL*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% JL1 "J2*@%%%%%%%%%%%%%%%%%%%%% J25 "J3*@%%%% J24 " !*@

$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J21

" J*@ 5%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J21

" *@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J2?

" 5* J2 " 4*7'./#

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% J " 1*"##($#

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4

" ?*##($#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1

" L*"##($#teme#(IUJ%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L

" 2*"##($#teme#(IU1!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L

" 3*##($#teme#(IUJ%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3

"5!*##($#teme#(IU1!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3

"5J*"#EdeeCoverer %%%%%%%%%%%%%%%%%%%%%%%%%% 5! "5 *#EdeeCoverer%%%%%%%%%%%%%%%%%%%%% 5J "55*"#EdeeCoverer#

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 5 "54*"#

(IUJ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 54 "51*"#

(IU1!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 54 "5?*"'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 43 "5L*@'*'##

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1! "52*@'*'##

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1J "53*@'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1 "4!*@'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1 "4J*@'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1 "4 *@'c1c1

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 15 "45*@''%%%%%%%%%% 15 "44*@'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 "41*=0

'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 "4?*@'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 "4L*=0

'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 "42*@'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 "43*=0

'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1? "1!*@(('%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1? "1J* (#(

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 12

.

##

I%"

%

+('$

%&#(

'%D#

%+#

'#'#

%

(

I#($#

%"

*((

('#

#%#

# ##

( '% '

#

#%)#$ #

$

%

& ##

#'

$(%B

(%

#

$ #

I0%

" # #

'% J%J $%

.J% /%J%5%B

$ . J%4/

. J%1/% B

%

/ &#

&$($H

Q33R#'$0

Q"3?#"3?#)-3JR% "#

#

$# #

%;#$(##

%

&'

# (%

" %

" Q& 31R =

0%+#*

. /

%

# # %

%

%

# # %

'%

%

@' # # # #

I # % @'

QE@@3LR%

#(

# # % &

'%"

Q !!!R%&(#

( %"

$

%

"

,(%;#$

('% " '

,#(

'% - I

#

% @ OA

-

%

A$-VV

OA#$##

%D#$

<

QE@@3LR%

& # %

I'%"0

% "

' I%"

(( Q))34R#

% "

+AQ+6 !!JR# .$- VV/

.$OAOA/((%+A

,(

# %

" # '

%&

, % &

A.&A/#

# ( (

%" $

%"

5#$%

!

/' :

"##

%

$;D%B

(% $;#$#

%*

Contract between SkyHi and Steelmans entered into on 1st August 2001

“steel” shall mean low-carbon steel of the type Fe360 (Euro-Norm

10025) in sheets with dimensions 1600 x 400 x 5.0 mm, with thickness

tolerance ± 0.040 mm on a single sheet.

Clause D.1

SkyHi must pay Steelmans $25,000 before 1st September 2001. Clause C.1

Steelmans must deliver 10 tons of steel before 1st October 2001. Clause C.2

SkyHi has the right to return the steel within 30 days. Clause C.3

In the event of a return in terms of Clause C.3 above, Steelmans shall

refund SkyHi the amount paid.

Clause C.4

&#$;I*

SkyHi Risk Management Procedures

Clerks may not buy steel. Clause P.1

Employees older than 25 may buy steel. Clause P.2

Payments of more than $10,000 to suppliers are prohibited. Clause P.3

$; , *

Commercial Trade Act

An obligation is fulfilled when all obliged occurrences have happened. Clause L.1

An obligation is violated if it is after the deadline and some obliged

occurrences have not happened.

Clause L.2

Following successful instigation of the prescribed procedure for

claiming compensation, damages for violation of an obligation must

be paid, by the liable party, to the party entitled to compensation.

Clause L.3

$;

#$;,##

. (

/% *

' $;0

'

## % $;$

%"

#$

%"##'

#

% )#

# #

% )# $

#

%

!

"

I*

W./

• = 0 .%J=0#

A%JA% =0=0/#

1%1.J5L/

1%?%J.J4 /

1%?% .J1J/

• .%J% /J# 1%?%J.J4 /

• .#%4#

<

A%5/#

1%?%1.J11/

• .5!#

%5< #

% /#

1%1.J5L/

• .%J/# 1%5% .J5 /

• .%J%5/# 1%5%J.J 3/

• .% /% 1%4.J54/

J"## # % '%

/ .7

%

% B$

( % " #

%

'# # < #

(%

, % B

# $ % "

(

%

/ = <#

B$ ##

# # '

% " $ .(

/ #

I % "

% &

.7A/'

(((7AQ+3?#3?#)33R%

I

% , I

"

# $# #

% &#

%

+'

$% &

%B

'%"

#

*

(%

%

% + %

0

%

) ' $ #

'(

(%

")J

% D 0

##%"

% )# #

$ %

./%

Regulations• …

Store of Specifications

and Occurrences

Business Occurrences

Contracting Fulfilment

Environmental

Contracts• SkyHi must pay

Steelmans $25,000 before 1st September 2001.

Policies• Clerks may not buy

steel.• Payments of more than

$10,000 to suppliers are prohibited.

Active Wrapper

Figure 1: Contextual overview of desired solution

/4

B#

' #

##QD !!!#D !!JR%

(QD !!JR#

(%

EDEE(QD !!JR#

# # QD !!J#

D !! R% B '

#

$Q D !! # D !! R%

QD !! #E !! R%"((

$#Q D !! R%

#$

"$

# # '#

%"

' #

% B

'

# # % "

#

%"

$(%

####

# #

%

/ , 1

"*

$$#

# # # #

%"$

$% D

# #

'

%

B $ ' 5#

P # P

$(% B

'#

#$ (

''%

+'

(#4

(

%" #

' #

%

1 # #

%"(

$

%

+?%

+ ' ( (

L% "

#EDEE# '

%

2 % &

$ ##

%

3#%

'

0 #

B

$ %&#

$% &

#

%

' ##

%"(*#%

%J#$

#

#%

(

$ # # %

% ( # %5

$ % "'

# $

# %4%

% &'

%1 =0

#

# $ %

)#$. %?/#

#%

& # ,

'%D#

( '

( $

% "

'$ %

'/ *:

,*(

. '/# #

%

?:*> 9

( # * QD+D; !!!#

D;++ !!J#D;++ !! R#=*7 Q+3LR#: Q@B32R#* Q6"32# "33R#

A*,. Q7) !!JR#,* Q)32R#* QD; !!!R# ; :

Q)-A !!JR# % & (#

. / # #

$

% (

%

''

' QA"33R% < Q"673 R#

()!&

(#(

% 19

QA"33R (

# <

%>9Q"B !!!RK+AOA

.K+A(OA/ ' K+A # #

K+A%

( '

# % "

#

%

$(6 +

%

,<*? ? !

*? ? *! *

# #% (

( # #

Q33R%

# 7

:9; :# 1# :# :9;B--

Q&33R OA % OAF33

UPDATE#DELETE#INSERT#./SELECT%

,

: Q;22#E3JR#Q;3 #;D3LR#,5QD+35R#

: QB 3?R# ,( :71: Q635#

634# )66 !!!R# 1 Q6-3 # 6-3 R# : : QEE35#

+34R#>1:Q34R#<=:QE@@H34#@32#E@@ !!JR%

% &'

#

*

CREATE RULE rule_name ON table WHEN INSERTED/DELETED/UPDATED

[IF condition] THEN action_list

PRECEDES rule_list FOLLOWS rule_list

:*:*? :!

*

5C # 7 C 0 $ <# :# :1 *

7# %&#

D ( QE@31R% ( #

###$%

$

.&/* # $ #

##%

" *

'// *5

" #

##$

% "

$%

." *

"

Q+D?3#2!R=

D0 % "

()!&

stabbing(Caesar,Brutus)

%0Q2!#JJ2R#*

∃x stabbing(Caesar, Brutus, x)

x %

% P#

+Q+L2R#DQD2?R#DQD22R#H$QH3?R#

Q !!!RP$

# # %

Q3!R<-$+Q-+ !!!R<;#

# HI Q;H !!!R< E QE32# E32# E !!JR%

0 #

##=

0#= 0=D 0 =D 0#

'%0*

∃x stabbing(x) ∧ agent(x, Caesar) ∧ theme(x, Brutus)

E# *:ΘΘΘΘ QE32R# % D

' .x/

P P # #

%E$QE2?R

#

% "$E$QE31R

% $ Q33R E$ 0 $

E0%

B E P $

## ### P

#

# % )# E

, < QE !!JR#+3 0Q3!R#=P0%

% &'

; & 3;&!QE+3L#+ !!!R#

% =C 0#=C 0#

% & #

.%% =& 0/ $ ='0

5 .%% =& Q& R0/% E +0

I QL?#?3#

H21R# QE !!JR

QE+3L# + !!!R% $ Q !! R

E0 #

## %

H

% "

$

% ;#

(##

% ) $

# #

%

<. "*

"

% E0*, ;*,;!QE3LR

%

A $ I

%

5QL?RQ?3R=0=0%

()!&

#

Q32R%(

# %

QD+D; !!!# !!!R%7#

# %

#

#

Q31# 634# -+ !!!# 3!# !!!R% +

# (

( # QD3?# !!!# 33R

6 +Q+3LR.(

( /% H QD2?#;31#

E !!J# E@35# +L2# 3!# !!!R

.# #=0/ %

&#

%

# #

%

<

66 6$

! ? /

B $ $ =0# =0# =0

# %

5 # E .#

JL/# % #

I# # '# # # #

%

% &'

' 1 $

5/

'//' 7 6 ?

B (# (

'(%"

#

(%

& #

$

% " &

.54/ 6 + $

.5?/#(

(%

" (

.I " J /

I (

(%

, 7 .

@ F) - &## @

7 +

"F

6

#6 +#

# ##$

@+$.A$/

+(& A

Table 1: Event detection mechanisms used in publish/subscribe and active databases

()!&

5 3 : I

) + % "

%

#0

%"##

)% > I)#

$%

$#%

& ? #

# 0

# %

+ (P

@###Q+34#33R%"

(

%B

#

%

$?# .( ($/ *

$###%7?

5

# $

#%

+ # (

%"

#%

#

% &'

#

, %"

#% '

P (

%

%

7 !

/

& #

('%

%

?

/

(##(*

<

% $

('% " #

' % "

EQ !!!R

% ;#;0

I * (

% .J4/A( K+A(

' OA K %

#%

$ % "

()!&

$# #

%

4 &

? 65/

$ 0&*7Q32R

%

" ((

.B. 5:%

# %

%"

# &

# %$

#

'%

" . J?/#

$#

%

'// 3 6

. J?/ (

$# $ % B

#

( # (

# % (

*

% &'

Effective from 13 January 2003 to 13 March 2003, print accounting reports before 8am

on the last working day of every month

(*

Effective from 13 January 2003, customers must settle their bills before 5pm on the last

working day of every month.

& (#

< , . /

% & % "

(,#

%"(#

P

I 0#0#

%"( *

#

#

% ) ( (

%

#%

?6 ??6

/

'/' ?

D #

##% ((#

.J1/#(%

.

& # # ( (#

$%

:9;B-- Q&33R #

CHECK ASSERTION #

###Q !!!R%&#

#,%

) ,( # # (

(##(

1F ;1;! Q+6 !!JR% &

I * Q+33R (

-QE32R#%

"+1:QA !!JR

, . /#

' . ((/% E

#

I

## # .SomeTimeInFuture#

AlwaysInFuture … Unless …#NeverInFuture/%

( % ) #

$ <= , Q"6 !!JR# &* 0 QD !!JR#

7 : : /( Q+ !!JR : '((( Q+ !!JR

% &'

I% "

' if … then … HD#-#-#

(%

; 656

)(# ( ( #

#%

# (

% & (# ((

./.,/Q+34R%

@ ; # )A% 7

%

: ; :;!Q6A33#&D+ !!J#@6B !! R

. /

%

if … then …%)0*<*Q)2 R

# % @ " 1:4Q)2 R

70;.:Q@ !!JR#- A&#0

A*::Q); !!JR%&&G

& # : $C QD !!!R# H ; : QH !!JR#

Q !!JR# .;1= Q&A6 !!JR# EC * I

Q; !!JR%%)#&A6@ "

$ % "

%

@ "

#$ X

if … then …%)#@ " 0

$ OA#

-# #

( $ $

QD !!JR%

&@ " #$ (.α/(

.β,/#.%%'/

% ) β( (

%)#

%I'

(Q); !!JR%

@ "

β('*

.,/ # / ,

Q+2L#D6A+3JR% )(;Q); !!JR

@ " ($1,.4,/#

J!./#J!#!!!,%-

,#

% ;#

@ " $

% @ " # <*<

Q+3LR# . / β(#

% ;#

$"@ " ,

# #

%= Q;E7H32R#

. J1/# ( I @ "

"@ "$#%

& #

(*

% &'

'/'/

(Q@ !!JR%)#

(%@Q@ !!JR

% @

%;#

'##

##

% # %

@

$(%"%&

P J! J!%J P (

%

low#nominal#high

%@$

,$ (

%

'/'/' 7 6

@ " $#

(* #

$ $#

Q); !!JR%

2 :

/

@ #

% ) #.&7 Q&D+ !!JR

# $ % @ " "@ "

( # <

%

*<

%##

%

A@QA@34R#

#%"(

QA !!JR

(QA33R%

#$&:<#QD@ !!JR#

I % @"$

#(%

8 $ ?

6

G5/

'/'/

&(# <

'

%"#

# $

% &

( # ' % B

#

%

- /

% &'

&# @ " # "@ "# 6 $ (

.'/#

.'/ %#

#

#%

/ #

# ' % "

@ " αβ#

%

'

$# '%

(

%

( ?

/

'/'/ ?

@##

#%

(

I% I

%PRECEDESFOLLOWS.J?/#

. / (

#(%7

PRECEDES#+PRIORITIES BEFORE|AFTER rule_name

% ## "6 '

% ) # "6#

.0=highest#1=medium#

%/% I

#

(Q+$22R% - Q); !!JR salience

# "6% @

#%

##% )

#-%"-

%

"#

(%

& #

cut$$.

/%@##

# .%% #

# ,# 0 # %/

# %

Aoverrides%

) # medium# high# very_low# lowest #

$amazonebay%

&+#

% # if…then…else…

( I % # switch…case…

# -# break

%

& E# #

.$/

%

7 (

I (%

, B 7 ; Q;L2R#

% &'

# # # #

#

%

"($ @ " "@ "

% $#

#,%

#

./ ,

%

OAF33 $ #

%"#(

# $

% @,

#

%

3 J 6

6 $6 %E 28) J

/

' J 6

6 6F J

6

J C /

/

$

6 6 6

6 %=;--)/

5? /

'/'/4 :

& # # #

< %

& # * #

./ % "

(

$%= ((

0 % & (

# %@#

<'

## #

% $

%

"

Q+ !!JR% '

%"$

##% =%J#$;

0$;

# % (

#

$%

%&

#

#

($%

4 < J$

J?/

% &'

(

#%

#

$.

/ . $

/% & ( (

%(

./ #

#%

/

'/ ?:

( ( #

($5%

I%;

%

1:.:QD+D; !!!R##

%

;:1Q;A33R I

-% A $

-%A

&!&

# #

%A%#

A ,

%

7#QD)A3?R#+> QD !!JR#

F ' =

Y0.key1, key2, key3 REQUEST

actionstring/% " +$FE7 .#

/ #(

#QD !!JR%

" : ;:;!Q-3LR

#

%

": ;:;!Q@S) !!JR#

# %

$#$. 1/#

$# * #

%

>$ #:7

& $ #(

%&#

#(,($%

DA0 , ;,;!QA !!J#A7 !!!#AD733R

(( #

% D0AQA !!JR(

%)

%

% &'

E0 , ;,;!QE3LR

A .J2/#

%

"& ")0 . 7 .7!Q+ B !!JR

+A $

% (#

7+# +&# A ( $

%

& 0 QA !!J# A !!JR P

$

PI=0

%

(%

Q34# 31R # #

%

#,

# #

Q31R% I

% =0 (

%( ,

QA !!JR%

" ( $

( '

% ( $

$#$

,*

&!&

'// * $

+ Q-3L# A !!JR

QA !!J#;H !!JR

2-'3% *

(1) A person may not approve a cheque they have issued. [Dam2002, HV2001]

(2) An author of a paper cannot act as its referee. [CDMR2001]

"#$#'

QD)33# ;A33# -3L# @S) !!JR% B

( #

' Q@S) !!JR%

# ( #

$% & #

('%7#(

(

#(

% & A# ( #

' ,# #

% '# #

( (

Q !! # J!?R% & < $ Q;H !!JR# ,(

% " ' .

(1)/ issuerIDapproverID

Cheque%6

%

% &'

'//' :

"$,(

% &,( #

%&#

%0

% " #

' % 0

#

%

2 .

J !J

/

,(

' . /

%E '

OAOA

$ $

%

Q !! <4!#4 RI AQ;A33R

,(

% $ # #

,.#,(/

,% A Q-3LR

I ,

QA !!JR%

&!&

8 0 5

5

! F/ <

/

& #

./# %

,

%"

, #

' ,#

Q !! R%

0 Q+Z31# A !!JR

, %

,% " =0

, .

/%

-

$ $ F $

6 F6

/

'// ?

%

+#I

.'/##

Q+3 R%6Q63LR

% &'

( , ( % +## @

Q+@ !!JR(./#(

. /# .

/%B 0QB 31R.(

/#$(##(%B

(#

# # # #(# % E

QE3LR*

• '( #

#

• ((####

,######(.F/

##

• ##(%

+Q+34R#

II((

# ( ( % "

(

( % )#

Q !! R $

*(.##

/# ( .$( (

#(#

/# ( (

% @ ( ((

0$%&#

(A#- #A

B # ( I

&!&

./%"

$%

$

%&#(

%(

$

(% "

%

" PP

Q3?R&@A

QA !!!#DA+ !!JR% +##@Q+@ !!JRI

'$

#

'# % &#

# I##

% " (((

* ((

,(

' % 7

%

'( < ? 6

*

G/

'//

"=0(

* 23 #

$#

% &'

$ #

#5%

&(## #*

Customers must be notified (by some employee) of outstanding balances.

;#

%&# =

K0 ,

(, K=K0

%&0(#

. / ,% &

'

'%

' . ! 5

#/

; $? ? ?

(

( * . / #

%%Q+@ !!JR#

$#

%

.6#=0/

.= 0/ QE3LR% ;(

$ ((

%

&!&

'' . 5

/

: !

#

.55/%#,

$

% (=0

# <

$ #

E0A$nosuccess%Aor-

else QA2!# J4 R ./% " (

$'.

/

#%)#

Q"D33#J44R% #

nosuccess# or-else#

(

=0=0%

((,

%

' < $

// KC

K C! $

/

% &'

= !

0 #

# *#

% ) # ./

# +

$# @%

# (

%

( disable()

##

%

' 0

6

6 6 6

/

> $ $

"AQ@S) !!JR

=0# *

(To make Action_T successful)4

Principal_O must do Action_O

if Principal_T has done Action_T

Principal_T cannot (successfully) do Action_T

if Principal_O will not do Action_O

%"

commitAction_T

Action_O% A0 =0

%A=0

#

Q !! #52R% "Q@S) !!JR 4$Q@S) !!JR%

&!&

I#A

Q-3?R % ;#

=0 # '

.(((($/$<

=0

%)#

.%% / ' .%%

%5/ % " $

#

#

% )#

'

%

" %#

#=0

' = %50% "

A0%

'4

/& /

'//4

& # ( #

% ;#

%#((

# ( %

7 I ./ $

./Q+Z31R%"

*#

% & #

% &'

(#

# # # # # F

% '(

( Q+Z31R# #

%

& A Q-3LR# #

# %

@# #$

, ,

% (

(QA !!JR%

Q;A33#+3?R#A#

%DA

# %"

#(

(%

(%

+$Q+3?#@S) !!JR(

# # (

./ %

%

( # :;,Q+3?R (

*

% @

%

& & ")0&+# (

%&#

*+

#

%

'/ & 7 L

(

$ 55%B #

#(%

0 # $7:037:!

B$ .B)+/ %

: ;

:;! Q6"H !!!R 0 # $ 7 C 07!

0 # $ , ; 0,;!

QB+31R% B$ I#

$ and/or# -split# -join# iteration

Q6@ !!!#3?R%"B ++600 # $

7 3 Q33R% & ,*< Q-)7 !!!R#

* sequence# can-be-parallel# must-be-

parallel# loop (iteration)% <=:3 $ QE@@32R '#

# , AND# INCLUSIVE-OR#

EXCLUSIVE-OR%

"1 : :1::!Q7) !!JR

sequence# or# and# not

.J1/%"*01+$

. J4/%

SEQUENCE. J

/#CONCURRENCY .

/#REPETITION. J/#ITERATION. J

/# DISJUNCTION . /#

% &'

EXCLUSIVE-DISJUNCTION . /#

CONJUNCTION . /# NEGATION . J

/% # # %

:same-workflow

:same-broker'$

$#

##'

,%

$ # : B# .:#

&*# 7 Q6@ !!!#

33R% > (

Q !!!R% "$# #

%"$=0%"#

#

$# I% )

$%

%Q;;34R # # 7

'

$% $ , #

$ , % "

$$

% ,##<

#$=0=0%

7%

*+

*5:

+ ( (

(%

Q)3 R% * *! Q)32# )33R

. / %

#'%

(%

B$ '

$*

'/ / $ # 6

& $ #

$% B$ #

$ P P

% 7

% ' #

%

"

=0#=0#=0#

%" ##

%

' !6 5 6

/

% &'

A % QA3 # A32# DABB31R

7./ %

"

# % )#

$ 7 #

'<$

%

'/ /'

7 '

#./#(#,#%"

P %% " $ . 4L/#

Q)E !!JR% "=I propose …0

#=I accept …0#

$%

&#-0Q- !! R#E"

QE" !!!R# #

5 %=&C 0=&C 0

.#/

#=0

QL?#H21# !!!#"32R

% "

#($

%

'2 *5

$6

/

*+

"0

'%B

( # (

$# # #

# % "

#

* =0

% 6

(% ) #

Q"D33#J R

%&#./

$ ' P

' ' % "

'# ( % &

"#

%

'8 < 6

?

$/

'/ / :

Q3?R((

' =0 =0%

$,$

B)+%

Q)32#7) !!JR (

# ( I $

% &'

II

%

. 4L/ $ % "

<

%;#

* Available# NotAvailable#

Defined#Assigning#OnGoing#Suspended#Terminated#Aborted%

".4L/true#false#unknown

$ # #

%7((

"unknown%

#%

. 43/ (

% &

(

# (%

'/4 . K C

+ $

=0%

" =0 < #

#I

Q;L2R % )

=0*

,-

'/4/ 1F?

& ,( # + Q+3L# +33R

, %D+0Q+3L#J LR

% +0=0# #

=0 =0 (

.require / ( .ensure /% .invariant

/ , % "

D=0=0*8

( # &#

#(

:%

D(QD-B33R

=0,(*

• D * (

@D&A%"

# #

%

• D * ( (# (

# .D / A#

##E. 1/%"QD-B33R#

;Q;3 R.D/

(.D/#=0

% ;0

*

contract [contractName]

[className] supports

attribute signatures

method signatures

invariants

% &'

end contract

;0

./%

• I * ( I #

mutexes ./ -0 synchronized $

$%

• O .O/ *

# #

#% "

O$@D%

D%#

# # # %

%#

#%)D#

D# I #

( % #

%

&O#

'#=0%&

'

O ,% D 0

,( % "

#'%

=0I #

#$#%

,-

'/4/' <# ?

&0 >Q2!R#($

./=0#$#

% "#

= 0# $ % B K

QBK !!JR

#X%"

$I%7

$# $

%

: Q !!!#E33R

7

###I%"

##% "

$

7( $%

+$ ;$?= .

;=.!Q+ !!!R%(

, =0 % "

###

#

%"

#=0

$ #repeal()

$%

% &'

'/4/ :

( ( $ 1:71:

Q+6"+32#+32R# 3 $ QE6H33R# *?,17* QEE !!JR

($#

'

#

% " + $ $

(

#I

% +

I

' #

Q+ !!JR% ) (+

(I $ %

$ #

B +0BA.4L/% ,

$%

+ 0 & &! Q+DD@31# +31R

< '

%

( ( # ( $

% ) # D

( $

< $ D

% )

#D#' 1%&

D# '

1#*##Q"D33<L#1JR%

,-

% "D

# $

( %

D ./ ./

(<

$ (

% " #

D#

%

: Q6 !!!R K+A % &

D#$% 0

( # ( %

7(K+A##

# %

#

%&

%

; $ A Q++ !!JR $((

( $ #

# # # #

D%"#

K+A%

+0 D &

I0 7 1 ,

7 ?1,! Q&31R '

'% " @+( # #

###$D#

% " @+(

##Q+31#JLLR%

" Q+@ !!JR*

% &'

#

%"@+(#

( %

" #

# $

Q !!!R +A @+(

H % "

#

,(#,(S%"

= 0

Q !!!# R# %

+ *

,( #

,% #,( *

# # (

% #

Q !! #4?R%#

% "

,#

% & =0

' % )#$J

Q"D33# J44R#

%&##

A

$ %

Q-3?R Q;L2R % "

, #

P

,-

QALLRPP

Q12R%

Q !!!#+@ !!JR% &

#,%"

(* '

% " , '

. / ( #

,( ( (% "

$

. /

%"

#($'

% + (

$%

" K+A(< 7#;7;!

&D+@QEA !!JR= 0

=0% +A 1:.:

! ! Q !! R% +A

F

%".%%D&/#'.%%A/#

.%%;""/% "

# % )#

$

%

" 1:.: < Q !!JR

% " =0

= 0<

##$.%-)#

54/%"#

=0#

% &'

#

%D(

# (

#

'

%

:;.A/ %"

$#

# A

% " " (

.4L/A%& "##A

#%)

## ##

##

%

.%%30/%#

## #%

& #

# # (

#I

# $

% "$ $ (I

./((I.

/%

'- 6$ 6 6

$ ?6 ?6 5? G !6

6

#/

,-

'/4/ F

Q2LR , # .:<# (

, % & &"@#

, %

" # (

# %

'/4/4 K.?C

6 (Q6A33#@6B !! Rif-

then % "

& I .=(

0/ ( % (

# #

# #'# % "

A. ?/%

'/4/ 3? ?

- %Q !!!R #;$#

*

% 7 #

#%

& #A0 >,.,

#

QA2!<J !#J24R%7&##

#.#/#'

. $/# % A

7& #

QA2!# R%

#$#

% &'

#

7&QA2!<

#J3!R

'/4/2 ;

;Q;32R$;0

. # 5J/

% "

=0

' $ #

##' #

#I%

$$#A#

) + Q+ !!J# + !!JR 7 QDABB31# 33R

% 7

##(Q33R%

)+7#

% )+ 7(

' #

###%

( $ 5

6

/

$#

#

%

#.

'/ , ;

= 0 #

# Q+B35R#

Q33R% " B

QB1JR%"

O# P# F# # # %

I #

Q+B35R *

Interdefinability: α =def ¬¬α =def ¬Fα

‘α is permitted’ is equivalent to ‘it is not obliged that not α’ and ‘α is not forbidden’.

Strong consistency theorem: ¬(Oα ∧ O¬α)

It is never the case that α is both obliged and forbidden.

Deontic detachment / transitivity: O(α→β) → (Oα→Oβ)

If it is obliged that (if α then β ) then, if α is obliged then β is obliged.

Ought implies can: O(α) → P(α)

If α is obliged then α is permitted.

" A .A/

# %

" A #

*

'// .$ "< K C

A$ *O

=#

C 0 =

% &'

C 0% & # (

% A0 .?5/

#Q+$33R*

“The clerk ought to give you a receipt if you pay” and

“You ought to pay” implies

“The clerk ought to give you a receipt” (even if you don’ t pay).

"A #

# %

A #

Q3LR%

'//' ?

" .?5/((

#

%Q34R##

I #

I % " B Q"B !!J#

"B !!JR

% Q2!R

.OαO¬α/%A

#

%*

$?? !

E+QE+35R$

# #

I % '

#A#

Q;E35#E+35#

#.

3LR% J![

#J1[

. # ' /%

E +QE+35R =0*PΟα $

=α0%E+0#P#

##$$

%"$%

$ !

I

#

'%

A#

( *8#

0:?%A*#$

#

#'I

Q+B3?R%

$

Q31R Q32R% " A I

# =*# F

F 0% " (

R1$R2%"

%)#;+$Q;+3LR

=the doctor must immediately visit heart attack victims0

($*

A #

?"AI.JLLL(J254/%

% &'

B % 0

./ $

%

'// ,

A QB !!JR

#

Q+@ !!JR% "

,Q !! #54R% A

( (

Q;E35R% H Q;E35# ""33R

xOyExα

##α%

A%

% '

A '

.##/$

(( α% 7## -Q7-32R

ααA%

@#

α%7%

#

((

A% Q32R # A#

=α 0=

α0% & #

./¬α%"#Q12R#

α

%&#

α%

#.

, 6$ 666

665/

A .4 /Q !!!R%;#

.%%=

0/#

%

'// 1 $ 6

A O#

% +$ Q+$33R# \

D#

%&O(α→β)#$

#

((# (

% H (

#QE !!J#D !! #E !! R%

'A0(

# $ (

%

' 1 /

% &'

'//4 <

AQ+@ !!J# !! R

% " B Q"B !!J# "B !!J# B !!JR

A #

%

&= 0#A

*#=-

0 ./= 0 ./

=-0./%BQB31R

% "

%A

Q2!#-35R#

#

Q+B3?R% Q2!R Q3LR

%

&=0#A5%

• A*A'

Q""33R%Q12ROα(¬α

→ V) = ¬α 0% ;# 0

# # $

#

Q+B35R%EQE32R

.Violation(α)Oα/

% B QB31R

Violationi,j i

j% "

% 0#+#B Q+B35R

Violationll#

#.

% "

#

%

P

P

'%

#

# %

"'

%

'*

% D #Violationi,j Violationl#

%

E0 QE32R

$(=0

=0%"

$%

• A5*-A

#

%"#A'

$%0Q12R#

=(0=0=

F0%

A .%% = 0/ #

.%%=$0/QD3?#D !!!R%"

¬Oα Oα ∧ α .

/A

( % ./

Oα ∧ αOα%

% &'

" . ?5/# Q2!R#

( P

DQD3?R

#%"

$# # #

P

#

%

1 ? /1

6 6

/

-Q+@ !!JR*

%A

< # #

%

& ? 5/

A # - Q-3?R

.#

#/ .

/%&.

/%

4 J

$%E 28)J /

&#A

*$

#.

$#

$QE3LR%$ J$

!'#='0

%AQB !!JR#

'%

H % %

QBH3?#E3L#E32R+0

% "

#./#

%

=5!0#=J0#=

$ 0# = 0%

= 1 5!0

=$?J!0%%

E$

#%&QBH3?R#

$

$%AQE3LR#

( ( # '

%

+#D%QDA" !!!R=

0# [β]Oα((β

(( Oα α % #

[promise(r1,r2,α)]Or1r2(α)= r1α r2# r1

r2α0% $

% ) #

'=

0%

% &'

%Q 33Rdo

% D % QDA" !!!R

< DO(α) α <

DONE(α) α .α

/%)#DONE(pay(John,$100))

-TJ!!% "

#

% 7DONE(α)

%

'//

+$ Q+ !!!R# @ B# $

#

P #

%7#

,<

+BQ+B35#%JL(4!R%

" %

#.

*5

A ,@, *5:QA@34R

> ?=Q !!JR

$Q+ !!J#+ !!JR

AQDABB31R

> QA33#A !!!#A+ !!JR

?1F?

QB !!!#B !!JR

&'

"(* ;*=1;> &QA !!!R

,(* 1;1?@QD@31#@ !!!#@ !!!R

(* + $? ?7 ?

Q"B !!J#"B !!JR

Table 2: Sample of some recent applications of deontic logic

% &'

'/2 " :

" #

# ( #

# # % ) #

(

*

'/2/ :

!

'

%

#

#'% D

#

%

# ,( #

%"#

#%

'/2/' :

!

" (# (# $(# (

% AQA !!JR

'

' % (

/!

%

;

% B

( (

I .W %5%5/#

% .43/

%

% "

##

%

'/2/ 7 4!

,

#QB1J#12#? #

+B35R# Q;L2# -3?# - !!!R% (

',

%"

P $#

(%

"

%

% (

. 1?/

%

+,(((

( < < ./

< # < #

<(<<

%

% &'

#

#(#(#(I%

'/2/ *566 !

"

#

(%

%

'#

#%

'/2/4 7 2!

,($

% #

#%

"'

'%

1*

"

%

B

$ # #

# = 0 .W5%J/% B

' '

.W5% /% B .1/

'#

% O

#

* = $0 .W5%5/% "

.'/

. L/%

)#

.?/%

0$(

/ : 1

B

#

% )# #5## #

%

. / %

(*

## #A%

##%

###

%&# ./

#

%

% B

.##/#

%

*-

#-%&#

#

%)#

#'%

B =0 =0

.J?/

#

.J1/% )#

L&=0##%

!$

=0%)#DQD22R#.

/-0-0

=0#%

=00=0.#

#/#EQE !!JR%

B # #

%

#=0

%=D K0

=D 5 K0 $

5

%.4 /

( $ *

'#

%)

##%)#

'#(#

%

A % "$ #

WJ% # $;#

$;T 1#!!!%&

.(

/##

#

% A being_supplier1 paying1 $

-!"

"

#

##

.

/(

%

''!"

(

'%

0$(

% B allocating1

#)(&)(#

#occurring1

J1 !!J% ((

B

#

% " 5 (

% ) $ Steelmans

$% $

being_supplier1#$

C% )$ ,

%

Commentary Occurrence Role Participant

supplier Steelmans Steelmans being a supplier for SkyHi being_supplier1

supplied SkyHi

payer SkyHi

paid-amount $25,000

payee Steelmans

According to Clause 1, SkyHi paid $25,000

to Steelmans

paying1

isAccordingTo Clause 1

allocated paying1

allocatedTo delivering1

The payment was allocated to a previous

delivery

allocating1

allocationBasis FIFO

occurred paying1 The payment occurred on 15 August 2001 occurring1

occurredOn 15 August 2001

Table 3: A tabular schema for storing various occurrences

"(

(E

E QE3?R# % E

' !"

(#

((#

%

!$

,(

''=

+$Y0% ;# #

#(

%(#

' =.select occurrences in which Steelmans participates) intersection (select

occurrences where SkyHi participates)0% " paying1 being_supplier1

% " '

% ) #

'

# . being-obliged/

%

E0 Θ . # JL/#

E

% $; T 1#!!!

*

∃e ( paying(e) ∧ Subject(e,SkyHi) ∧ DirectObject(e,$25000) ∧

IndirectObject(e,Steelmans) ∧ Sake(e,e’) ∧ delivering(e’) )

Formula 1

=0 E0

*

• (( P (=0

Q-+ !!!R P . agent# theme# %/

$.subject#object#%/#

%BPagent#patient# instrument#source#

destination P $

Q31#634# !!!R#

I% Q3?R# #

%

-$# )# 6# #

0$(

agent#

%(.buyer#seller#%/

%

$subjectobject%E#$

$#

% 6 $

*#=-0./

=0./#

PobjectsubjectP

being opened %

Q3!R<

$%B

(# opener opened#

##

%

• measuring

. W4%5/ E0 unit() quantity()

QE32R%

• allocating . W1%?%J/ E0 Sake(… )

%

• #

#

' ' #

OA% &

E #

K.J#Z/#./#K%

4'!"

D

'

(

'#

%

!1

& # .

E0 /

# , # % "

##

( K+A % 7

#

#

%B

'#

%

& #

E0 ' . # JL/

###%"

1%&

.%% '/#

#

#'%

/' : 9

&#*#

%&

#<

%'

#

$(%"#

#%-

-%D

$

0$(

+

$-0$% &#'

= $0 - #

I#+%

)

.1/#'

%

./'5%&#

'./#

#%

O#%)

%

'#(''%

O ((

'((##(

#((% "(

'% EDEE0$

'(#EDEEQL#

% EDEEQL # # (

#(##'%J

'%

"$'TJ!#!!!

%"'#Query10#)

#'%#

'#Query19#$;T 1#!!!

J !!J% "

Query19)5%

!1

query2

query4

query3

QueryID Criterion Type Value

query2 greater-than 10000

query3 identified-concept paid amoun

supplier

t

query1 type paying

query6 type being

participant query2

role query3

query4 occurrence query1

query5 identified-concept supplier

query8 identified-concept payee

query7

occurrence query6

role query5

participant query7

role query8

query9 occurrence query1

query10 intersectand query4

intersectand query9

[>10,000]

occurrences

where

is [=paid_amount]

occurrences

[participantswhere in

role [=supplier]

in [occurrences

are [=payee]

query10

query5

query7

query6

query9

query8

query1

query1

[paying]of

[paying]

[being_supplier]]

of

of

Figure 2: Parse tree and storage schema for a query that returns

all occurrences where more than $10,000 is paid to a supplier

query11

query13

query12

query14

query15

query18

query19

query8

query16

query17

query3

QueryID Criterion-type Value

query11 identified-concept SkyHi

query12 identified-concept payer

participant query11

query13 occurrence query1

role query12

query14 identified-concept Steelmans

participant query14

query15 occurrence query1

role query8

query16 equal-to 25000

participant query16

query17 occurrence query1

role query3

query18 intersectand query13

intersectand query15

intersectand query17

query19 set query18

occurrences

[=SkyHi]

[=Steelmans]

1st of [

is [=payer]

occurrences

where

[paying]of

[paying]of

[paying]of

is [=payee]

occurrences

[=25,000]where

is [=paid_amount]

where

query1

query1

query1

] in [ascending]

[temporal] order

Figure 3: Parse tree and storage schema for a query that returns

the first payment of $25,000 by SkyHi to Steelmans

"''$(

./'% "$('

'%"

#

0$(

%B

('#

#(.W5%5/%

/ , ?9

)(''%&'#

'%

B('#'

% "'#

'

'% "

#(

.W %J/% # '

# # % B

#1#'

''%

// 1$ #

) 4 '

('%=$;

T 1#!!!0 .paying1/# =$; D$+ T1#!!!0 .paying2/# =$;

#-$#TJ1#!!!0.paying3/%)#

'=TJ!#!!!0 .query4#)

/=0.query9#) /

% " #'=0

paying1 paying2% #'=

TJ!#!!!0 paying1 paying3% &

# ?# paying1

'=TJ!#!!!0.query4/=

#)1

0.query9/%B./

%

query9

query4

!"#

$"%

paying1paying2 paying3∩∩∩∩∩∩∩∩

Stored Queries

(Descriptions)

Family of Occurrences

Fitting

query1

Figure 4: Occurrences fitting a description (covered by a stored query)

"'#

'#(%B'

'

(%'#

*

#(%B'.

/ .%WHEREOASELECT

/ '% ) # #

##'=0

=:0%

%"IQ6+31R$

% BI

#

%

B $$

'#''%

0$(

//' 0 #5"9

"$'= TJ!#!!!0.Query10)

21/%'%"#

# # $;#

# being_supplier1# " 5 2!% .

#paying1#%/

being_supplier1($ '

PSteelmans#being_supplier1#supplier#SkyHi#suppliedP

*

J% (*$&$& #2 '[=supplier].Query5/supplier

% (*$&$&$ being_supplier1 ' occurrences of

[being_supplier].Query6/

5% (*$&"&$ ' [=supplier] .Query5/ occurrences of

[being_supplier] .Query6/ [participants in role

[=supplier] in [occurrences of [being_supplier]]] .Query7/%

./

('*[participants in

role [=supplier] in [=being_supplier1]]%

('Steelmans%

4% (*$&"&$

"

"#Steelmans# occurrences

of [paying] where [participants in role [=supplier] in

[occurrences of [being_supplier]]] are [=payee] .Query9/%

./

('*occurrences of

[paying] where [=Steelmans] are [=payee]%

( ' % "

($%

2 # ($#($EDEE%

#)1

B # being_supplier1#

' occurrences of [being_supplier]

.Query6/%B'

#

( '%"

' "4

% "

'#

% ) #

query7 "4

%

Coverer (Dirtied Query) Covered (Output Dirt)

query5 supplier

query6 being_supplier1

query7 Steelmans

query5 = [=supplier] query6 = [occurrences of [being_supplier]]

query7 = [participants in the role [=supplier] in [occurrences of [being_supplier]]]

(see Figure 2 on page 85 for full definitions of each of these queries)

Table 4: Dirtied queries and their output dirt, stored in the EdeeCoverer table,

after addition of the occurrence being_supplier1 to a new datastore

D (

($ Steelmans

'=

Y0#

.%%

/%"

'1%

"

'#

28!"

&

P

.'/

P

%

8-!"

B

./

,%"

%

0$(

%B'.

L/%

"

% @( '

#

% &

('%

" '

('%

# 'I(

'(%)#'

$ (

# ' '

I $ . /

'#

%

// 0 #5'"9

" ($

''#

%A

.W5%5% /%

'= T 1#!!!$;

0 .Query19 )521/# % 7 #@

% %5#[=paid-amount].Query19/Query3#'

Query10%[=payee].Query19/

Query8% 7#Query19 '

*

''!"

+.

/

%

((!"

(

'

%

#)1

J% (*$&$&! [=25,000].Query16/'[>10,000].Query2/

% ( * $&$& D

occurrences of [paying] where [>10,000] is

[=paid_amount] .Query4/ occurrences of [paying]

where [=25,000] is [=paid-amount].Query17/%

5% (*$&$& [=Steelmans] .Query14/ '

Steelmans% # [participants in the

role [=supplier] in [occurrences of [being_supplier]]]

.Query7/Steelmans%"

= ' 0 " 4

.23/%"Query7Query14%

4% ( * $&$& D

"

"' occurrences of [paying] where [participants

in the role [=supplier] in [occurrences of

[being_supplier]]] are [=payee] .Query9/

occurrences of [paying] where [=Steelmans] is [=payee]

.Query15/%

1% ( * $&$& 8

$8

Query18Query10%

?% ( * $&$& E

=

"set.Query18/Query19%

L% ( * $&$&=

=D

Query19Query10%

"

'#

''<

# %&

# # being_supplier1#

$;#'=

TJ!#!!! 0 = T 1#!!! $;

0(%

2'8!"

%

0$(

// :

'*

• " /

'

%)#

' [occurrences of [paying] where [=SkyHi] is [=payer]] ∩

[occurrences of [paying] where [=25,000] is [=paid_amount]]

'occurrences of [paying] where [=SkyHi] is [=payer]

% ) #

'

#%

• " /

'

%W5%5%5

'% D

#

'%

EDEE0CoverageChecker#)1)?

'*

being_supplier1

%

#)1

… is covered by …

query19

query15

query1

query4

query10 query17

query9

query18

query13

query16

query2 query7

query14

Steelmans

Figure 5: Covering relations graph before addition of being_supplier1

query19

query15

query1

query4

query10 query17

query9

query18

query13

query16

query2 query7

query14

… is covered by …

… is now also covered by …

Steelmans

Numbers in circles show the order in which these new relations are discovered.

Figure 6: Covering relations graph after addition of being_supplier1

0$(

//4 #

.1/

./'5

% "

5 # '$

#

.%%####/##

%

&? '

(

%

/ :

" $ ' '

$%

B

%B(

$ %

% "

#

'% ./

( ' OA EDEEQL% &

."5#2!/# being_supplierpaying%

%B

'#

' . /

'%

!&

P%%P

%

)LEDEE%

EdeeOccurrence

EdeeQuery

EdeeNumber

EdeeSymbol

EdeeConcept

EdeeCoverer

NumberIDNumberValue

OccurrenceRoleParticipant

QueryIDCriterionTypeCriterionValue

SymbolIDSymbolText

ConceptID

CoveredCoverer

Figure 7: Data model used in EDEE

&#$

%

3

.

'

% " I<

# #

Q+3?R% B

% @#$

$ #

% $ '

+.:: =G Q;H;3LR#

%

"

$ '

% &

(

%"$

.WJ% /% "

#

2 &

%"#

%B

#'#

%

& # '

% B

$# # ( .W4%J/#

.W4% /#'.W4%5/# .W4%4/#.W4%1/#

.W4%?/%

/ , ?:1

& ( (

###

%

##%

#

%

&P#P#P

3

%(*

=0#=0#=0#=0#=0#=0#=0#=0#=0%

=

3P%

#!$

Examples:

By Guideline 1, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

owning owning

owns "

owned "

is/has overdrawn being overdrawn / overdrawing

6 *

$,,./

%)*

*" =0 (#C

" C =#C

" C ### 5%

#

%

& (# (# (# (# (# (#

(#(#(#(#(#P

%

='

2 &

Examples:

By Guideline 2, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

registration registering

acceptance accepting

approval approving

delivery delivering

breakage breaking

failure failing

Examples from Application Scenario (§1.2):

tolerance (Clause D.1) tolerating

payment (Clause P.3) paying (Table 3, p80)

violation (Clause L.3) violating (Table 13, p152)

instigation ( " ) instigating ( " )

compensation ( " ) compensating

obligation ( " ) being obliged (Table 11, p143)

.#JL/# #

%

#!$

P# (#P#P

%

=

Examples:

By Guideline 3, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

illness being ill (state)

membership being a member (state)

allegedly alleging (event)

Examples from Application Scenario (§1.2):

thickness (Clause D.1) being thick

More specifically, ‘being thick’, indicates an occurrence of measuring

where dimension_measured is ‘thickness’ (see §4.3)

"

%

" P0 P0# =0#

=0#=0#=0#=0#=0

##5%

=

2 &

B

(%

&P#P#P#P#P#P#P#(#P#

P #

%

=4

Examples:

By Guideline 5, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

employer employing

director directing

registrar registering

payee paying

applicant applying

resident residing

delivered delivering

forbidden forbidding

analyst analysing

Examples from Application Scenario:

paid (Clause C.4) paying (see Table 3, p80)

employee (Clause P.2) employing

supplier (Clause P.3) supplying (see Table 3, p80)

prohibited (Clause P.3) prohibiting (see Table 5, p130)

fulfilled (Clause L.1) fulfilling (see Table 11, p143)

violated (Clause L.2) violating (see Table 13, p152)

entitled (Clause L.3) being entitled

More specifically, ‘being entitled’ or ‘having a right’, implies an occurrence of someone else

‘being obliged’ (see Guideline 14, p111; Table 13, p152).

#!$

'#

%)#

employee . /#

employer#(( .

/% # .W4%1/

% '#

=[role-name]

must …0#=[role-name] must not …0#=[role-name] can …0% ) =Qapplicants] can

register for the conference by completing the registration form before the deadline0%

BEmployeeManager,(

.Person/#(I

%

.

/#

./%

2 &

/' : 19!

+ '.

/%

+ ' . /

=0#=0#=0#=0*

/ 'P #

.W5%5/P #

/ '##

%

=

Examples from Application Scenario:

By Guideline 6, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Query in EDEEQL (p84)

employees (that are) older

than 25

(Clause P.2)

[participants in role [=employee] in

[occurrences of [employing]]]

intersection

[participants in role [=aged] in

occurrences of [being_aged] where

[participants in role [=age] are [>25]]

payments (that are) more

than $10,000

(Clause P.3)

occurrences of [paying] where [>10,000]

is [=paid_amount]

(query4 in Figure 2, p85)

!$314

H (

EDEEQL.J/%

=2

Examples:

By Guideline 7, (Provenance)

(Evidence) (Consequence)

Appearance of Word / Symbol … indicates … EDEEQL Set Operator

‘and’, ‘also’, ‘with’, ‘that’, ‘which’, ‘where’, ‘who’,

and adjectives or adjectival clauses

e.g. ‘low-carbon [adj.] steel’; ‘steel that is low in

carbon’; ‘steel with low-carbon content’)

intersection

e.g. steel ∩∩∩∩ low-carbon things

‘and’, ‘or’, comma (‘,’), semi-colon (‘;’), bullet (list).

e.g. customers and employees

union

e.g. customers ∪∪∪∪ employees

‘but’, ‘not’, ‘except’, ‘excluding’, ‘apart from’,

‘besides’, ’without’, ‘with the exception of’, ‘save’,

‘however’, ‘although’

e.g. ‘customers but not gold customers’

difference

e.g. customers – gold customers

BJ!P=0#=0#=0#

=(0#=0#=0#=0#=0#=0#=0#

=0# (

P '

.W?%J/%"#

.W?%5/#

((

.W1%?%3/%

=8

Examples:

By Guideline 8, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Query

‘above’ a query that selects all clauses that appear above

the current clause in the current document

J! = 0 Q&A !! R %

2 &

/ 9 1

" '%

# # '

.J%5/###

% '.

/%

" .=0# =0# %/ ' =0 F

=0# =0 F =0 F =0 . P# P#

P#P#P#P#P/#=0#=0#=0#=0#=0#

=0F=0F=0#=0#=0#=0#

#.

W4%1/% B '# P W4%?P

.%% =# 0 =]50< =#

0=≤J!0/%"

II%

=-

Examples:

By Guideline 9, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

no counting, with count = 0

all counting (where two counts are equal)

e.g. one interpretation of ‘all clerks are married’ is that ‘count (clerks)’ = ‘count (clerks

participating in role married in occurrences of being_married)’. Consistent with

this is the interpretation of the sentence as ‘the participants in an occurrence of being-married

are the results of (select the set of clerks)’.

three management

signatures are needed

counting, of occurrences of signing by

managers

1$

only managers possess

company credit cards

‘zero non-managers possess company credit

cards’ or “count (occurrences of

possessing with credit cards in role

[=possessed] and (universe minus

managers) in role [=possessor]); if the

result of the counting exceeds zero, the

counted items violate policy”

Examples from Application Scenario:

all (Clause L.1) counting, where count of actual

occurrences = count of obliged

occurrences (see Table 11, p143)

some (Clause L.2) counting, where count of actual

occurrences < count of obliged

occurrences (see Table 13, p152)

low carbon (Clause D.1) measuring, of carbon content, and comparing

(§4.4) to threshold

= '0#

'#'%

=(

For instance:

Regular Quantifier … becomes … Frequency Adverb (Quantifier over Occurrences)

no never / at no time / not once

all always

some sometimes / occasionally

few rarely / seldom / almost never / hardly ever

many often / regularly

most usually / normally / almost always

one once

two twice

2 &

Examples:

By Guideline 10, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

Steelmans never

delivered on time

counting, with (count of on-time

occurrences of delivering by Steelmans) = 0

" # #

%

=

Examples from Application Scenario:

By Guideline 11, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

1600 x 400 x 5.0 mm

(Clause D.1)

measuring: at least three measuring

occurrences, where steel is item_measured

and length, width, and thickness are the

dimension_measured

P

7&0QA2!#1!RP$'./#

.%%5#1/##.%%

#/%)# $

*

measuring1 (occurrence instance)

(role) (participant)

item_measured: sheet4

quantity_measured: 5.02

unit_of_measure: mm

dimension_measured: thickness

measurer: Bob (Quality Controller 3)

J?!!#4!!#

!%J[ .

!$

(7J!! 1(/ #P

P ' #

=0# %J.W1%1/%

/ : 1

# # # #

.%%/

%

%

"

*

$=0#=0#=0#C #=0

P# P# P# P# P .%% =0#

=0/#$P#P#P

=0# =0# =0# =0# =0#

=0#=0#=0#=0#=0#=0#=0#=0#

=0#=0#=0%

='

Examples:

By Guideline 12, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Occurrences of Type

the lowest cost sorting by cost

the higher priced item sorting by price

before 1st October comparing temporal order

too long / long enough comparing to a deadline or threshold

2 &

Examples from Application Scenario:

more than $10,000

(Clause P.3)

comparing to threshold measured in units of

dollars

older than 25

(Clause P.2)

comparing to an age threshold measured in

years

@.%%J

5! /# * =0# =0#

=0#=0#=0#=C C 0#=0#=0#= 0#

=0#=0#=0#=0#=0/%

=

Examples from Application Scenario:

± 0.040 mm

(Clause D.1)

comparing to upper and lower bounds

# #

'.J%1/

# . / #

%

=I#0%

" .%%/#

%)#=0

# $

# = 0

# # % &

#

%

5)3)4$

/4 > !1

. /#

#< # ( %

. /

P %% %

./ P

%%%

=0#=0#=0#=0#

=F 0# = 0# =0# =0# =0# =0# =0#

=FF0#=F0#

.=0#=0#C /

.W1%4/# .W1%5/# .W1%?/% A$

P P% " #

#

5 .W1%1/# .W1%5% /%

=

Examples:

By Guideline 14, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … (Prima facie) Occurrences of Type

acceptable permitting to accept / power to bring about

an occurrence of accepting

tolerable permitting to tolerate / power to bring

about an occurrence of tolerating

payable being-obliged to pay

2 &

Examples from Application Scenario:

SkyHi must pay Steelmans

(Clause C.1)

being-obliged to pay (§5.6)

Clerks may not buy steel

(Clause P.1)

prohibiting buying (§5.3)

legal disability of clerks to buy (§5.3.2)

SkyHi has the right to return

the steel within 30 days

(similarly “The steel is

returnable within 30 days”)

(Clause C.3)

power to bring about an occurrence of

returning in terms of that clause (§5.5)

“steel” shall mean …

(Clause D.1)

a power to bring about an occurrence of

being-steel for any item that meets the

criteria (§5.5)

party entitled to compensation

(Clause C.3)

another party being-obliged to do

compensating (§5.6.2)

# =0# =0# = 0# =0# =0

* =SkyHi must (similarly shall/have-to/will/ought-to) pay Steelmans $25,0000

=$; T 1#!!!0% # =0 =0

*=SkyHi can (may) distribute steel in the East Anglia region0

=$;

0% )#=0 # =Steelmans must not

supply to other distributors0 = 2 3

0%##%

-Q-35R# =0=0

X% =Managers must sign purchase orders0

=

0#

%

& I

%&./#

# # .=&

)3#)4$

0/< .= Y0/<

#JJ##.=Z0/<

.=& 0/% "

-Q-3?R%"

. / QL?# ?3# H21R

.A/<#$3;&.JL/%

/ ,!1

5 .W1%1/

%

% " # # # #

# %

$

QL?#"32R<

%

%J#=0# #

P # .W5%5/ P

% c1 '

=0#=#

%J0' (7J!! 1#

%

=0# =#

JJ=&0 (%# Q"D33R% # # ## './Q"D33R%

2 &

%J0 P P % ,

W1% W1%1%

% &

,( '# (#

%##

.'/ % "$

*

.W5%5% /#

.W5%5%5/%".?/%

7 .

W1%1/

#%

% &

%&

# ' .

/#

#%

)3#)4$

)5 .W1%1/ % 7.

/## ,

(#

% #

=0# = C C 0# =0

#

%# =0#=0#

=0# =0

%

=4

Examples:

By Guideline 15, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Power of Type

The steel is returned if/when it is shipped

to the registered address of Steelmans

An act of (successful) shipping brings

about an occurrence of returning

The steel is returned by/through shipping

it to the registered address of Steelmans

"

To / In order to return the steel, ship it to

the registered address of Steelmans

"

=0 I

.= 0/% "

.# $;/%

1%1 5%

2 &

" =0# =0# =

0# = 0# = 0# =0# = 0#

% "# .W1%5% /#

.W1%?%3/#*

# $%

=

Examples:

By Guideline 16, (Provenance)

(Evidence) (Consequence)

Appearance of Word … indicates … Immunity of Type / Voidance

The steel may be returned provided / as

long as / on condition that it is

undamaged.

if the steel is damaged, then

(according to this clause), count

(returnings of this steel) = 0,

or, alternatively, all obligations

resulting from this return are voided.

The steel may be returned unless it is

damaged.

"

In order to return the steel, it must be

undamaged.

"

##%)#=

0 # # .

# # /#

%)#C

The steel may be trucked by CargoCarriers in order to return it.

C .

=may0W4%1/%;#

5#

%A#

%"#,

$ $

%

!&

#

#%

#

#%

/2 :

"

'

% " #

#

% "

%B

P #

# =0 =P0#

=# U!0 .W4%5/<

$ =0# = 0# =P0

.W4%1/%

B'#(((

#

% $

%B$

## % $

% "

'( !"

"

(#

I%

2 &

.W %5%5/%

& #

# # # (

$%

4

E0 ' " . # JL/ P

P

##%&5

%"##

'"

# -

% & # P

###P%

& ?# ' (

$ (I

%

$(

%)#L$

% "$

E0

( $

%

6)

B

.1%J/%

& 1%J%J# E0

' "% 1%J%

E0 *

'

E0'

$ %

##

# .1% P1%?/#

'

%

4/ 5

& (

I % & # I

% "

##% &#,

* # ##

# # % B

,#

%

&I##(#

#

#%

8'-!"

(

#I

%

B # # #

%

.W1%?/#.W1%4/#.W1%5/#

.W1%1/% % D#

% B

%

)2 EDEE%

#

' #

% ) 2#

#$.J/

. /% " .5/#

.4/% "

%

" ($#

%"

$%

(I#

I# #

I %

* #%

'

%

'-(!"

#

##

.(#(#(

I/#

#

$%

6)

!"#$%$&'

(

#$%$()*+,-) -.%)/'

0,11/ 2

deduceobligations instances

Provisions

Stored Queries

Regular Occurrences

findapplicable provisions

dynamically…

checkif occurrences fit descriptionbusiness &

environmentaloccurrences

asynchronously fulfil

obligations3 %4

.51

contract-relatedoccurrences

Figure 8: General architecture of EDEE

(#(#(.W %J#W % #W %5/

$

.W % %1/% & #

%&

# I

I%B#

%

)##

#

# # <

Q+ !!JR% "

$#

% B'

#

%@#'.

/ *

##

%B#

##

%

$A.?5/#(

.

(/#

.%% ' /#

%

# %

(#

'(%&#

%;+$0.#

?1/=the doctor must immediately visit heart attack victims0

#$#

($ '$ % ; +$0 #

#$.

/% #

#%&

%+$#

% #

#%

=0%

BE0'".#JL/

# #

(%

6)

4// + C, <

& # E0

* # # #

%

* =+ $; T 1#!!!

0E0*

∃e1 ( asserting(e1) ∧ Subject(e1,Mary) ∧ Object(e1,[φ]) ) → (Veridical(e1) ↔ φ)

Formula 2

φ Formula 1 .2J/ # #

= 0% "$=[…]0 '

' < =+

0=0% "

+0$;T 1#!!!./

$;T 1#!!!%

* & E0 # $;

TJ!#!!!*

∃e2 ( prohibiting(e2) ∧ IsAccordingToClause(e2,c) ∧ Object(e2,[φ]) ) →

(Violated(e2,c) ↔ φ)

Formula 3

φ $;

TJ!#!!!%"$;#

c##TJ!#!!!%

& # # E0

InSystemOfNorms(e,n) #

IsAccordingToClause(e,c) # =C

# ./c# C 0% B ,

. /

%

"#=

0#=

0#./

% ) # ( A Q"D33#

J44R$;T 4#433#

%

* & E0 # $;

*

∃e3 ( permitting(e3) ∧ IsAccordingToClause(e3,c) ∧ Object(e3,[φ]) ) → (¬Violated(e3,c))

Formula 4

E=0%+#

= 0%

# Q12R#

QA22R#

% B

E ##

./# % A0

# # Q3LR#

, p p

%;#I

./

P =0 QA22R =0 Q3LR P

% "

*

# % +

## A#

, % "#

%

6)

=0#D

QALLR#=0%

QALL#JLR#$

'%H.

##/

%

1 * & E0 # $;

*

∃e4 ( ought(e4) ∧ IsAccordingToClause(e4,c) ∧ Object(e4,[φ]) ) → (Violated(e4,c) ↔ ¬φ)

Formula 5

"$;#

c##$;T 1#!!!%E

0Q12R#=φ

0$=# φ#0%

4//' + C ,

<

E0##<

.W5%J#W1%J%J/%B%B

-'[φ]'P

# ' % " '

#

% " # '

#%

) # ./

$#

%"

#

#

I% B ' #

# #

' % "

###

'%

B # # #

#

*

%%)# F#

*#0% B$

# # #

./%;#

P)#F#*#0#P#

###

%B'P

P ' #

%"' #

% "'P #

P # . /

# ./

'%'#=($0#

%#($

' #

%

" # #

# .WJ% /#

E0 % B #

## # ;Q;L2R#

%

''(!"

%

6)

4/'

" '#

',%D

(=0$

,% ) #

=0 ,

*,PX #Y

P%

) #

'*,IsAccordingTo(e,

ClauseX)%"

( .

( /% #

,#P

%)#="$#-##

20 .

/<2% "=-0

2###

% % B=

20=%J0##

$-$#

# % &

#

#=0*$#

$./%

& ,

% & #

# #

P #

I%

,

$ D QD !!JR $#

$#+Q+ !!JR%#

# % @#

$( =II 0

!%2 #!%

#00#

%&#=II

#2%?0

# 0%

=0 =0

%3%J

##

#

% , =

0#$(=

0%

4/

B * #

./%

4// H

H % "

E% &

#

# %

%5 .= TJ!#!!! 0/

6)

WJ% % "=0

"1%;#Query10'

* #

TJ!#!!!%"Query10 24%

Occurrence Role Participant

prohibited Query10 prohibiting1

isAccordingTo Clause P.3

domain Query10

isAccordingTo Clause 82

violating_function1

violated prohibiting1

Query10 (see page 84) = occurrences of paying where more than $10,000 is in role=paid ∩

occurrences of paying where a supplier is in role=payee

Table 5: A schema for storing a violable general prohibition

violating_function1#Query10

violating_function1.Query10/% B

$

' % "#

#paying1#"5#Query10

violating_function1#

violating_function1.paying1/#."1/#

# prohibiting1# % "

violating_function1.paying1/

*

violating1 = .'/

source_rule: violating_function1 ./

source_occurrence: paying1 ./

violated: prohibiting1

violating1.1'/'

.violating_function1/

.paying1/%"$./##

source_rule

source_occurrence%

& #prohibiting1# #

%

" ?# (

#%

Occurrence Role Participant

domain Query10

prohibited |Query10|12

prohibiting_function1

isAccordingTo Clause P.3

Query10 (see page 84) = occurrences of paying where more than $10,000 is in role=paid ∩

occurrences of paying where a supplier is in role=payee

Table 6: Generation of specific prohibition instances from general prohibitions

paying1# T 1#!!! ." 5# 2!/#

#

*

prohibiting2 = .'/

source_rule: prohibiting_function1 ./

source_occurrence: paying1 ./

prohibited: paying1

prohibiting2 .

prohibiting_function1(paying1)/ # #

#paying1%

J " |… | % B

|… | ' % " " ?* paying1 Query10# prohibiting_function1(paying1)#prohibiting2#paying1 |Query10| prohibitedprohibiting2%

6)

"-0Q-3?R

( # S# 60 ( #

I./#C#

I # S# ( #S% "#

#

% " #

% )#-0#S#

;0Q;L2R#

#60

(##

./%

#

,%="0$

< $

="0%

#

'%"

%

%

4//' . B!

&=0=0%&

# 0

% ;0 Q;L2R

% B $ %J

.WJ% / $

% "L *

$I.count

Query5010/%"

%

Occurrence Role Participant

counted Query501

count 0

counting1

isAccordingTo Clause P.1

Query501 = occurrences where a clerk is buyer ∩ occurrences where steel is bought

Table 7: A schema for storing a disability or immunity (inviolable prohibition)

;0Q;L2R

* #

.%%

/%"

% & " L# .Query501/ seller<

$ %

"##

$%

)# =$

0#

#

# % B

F #

%

=0#

. /# %

% & #

'4 4!"

%D

%

6)

. /% &

$$#

%&$

#%&#$

##=%J0

.$

/% ; # ,

##

= %J0#

%"

%J0#

%

4/

= 1.% /0#

.WJ% /# % & 1

./# 15

. # / % -

Q-3?R# =C C 0

./=0=0%

=0

=0=

0%#

.W1%1/%

B *

%

4/ / H !

H D = 0

QALL#+$2?#7-32R# W1%J%J% "

.W1%5/#

= # #

0%

@

% ) #

% "

./%"#

0

% & EQE !! R

80 :

,% ; ( #

# # (

((((

%

4/ /' . !

&E%&

D =$ 0

$

#

E QE !!JR A QA22R#

Q12R#%"#=0

% " =$ 0%

% =7$= 0

6)

'= 10% " #

#'

% "

I% " 2 % &

;<Q;L2R

P%%%

Occurrence Role Participant

permitted Query502 permitting1

isAccordingTo Clause P.2

counted Query503

count 0

counting1

isAccordingTo Clause 2.6

Query502 = occurrences where employee older than 25 is buyer ∩ occurrences where steel is bought

Query503 = occurrences of violating brought about by occurrences in Query502

(i.e. occurrences of violating where source_occurrence is in Query502)

Table 8: A schema for storing an inviolable general permission (privilege)

&#permitting1# ##

" 3 #

%

Occurrence Role Participant

domain Query502

permitted |Query502|

permitting_function1

isAccordingTo Clause P.2

Table 9: Generation of specific permission instances from general permissions

)##

=0=0(

7.

% 7

%&#

(#

%= 1.% /0%"

$ *

• 0.

/##

. /%

#

#

#.I/

%

4/4 $;

&-0Q-3?R*

((

% =% *

10%"

"J!%

42(!"

P

Q;L2RP

%

6)

Occurrence Role Participant

buying_function1 domain Query504

isAccordingTo Clause P.2

buyer Query505

bought Query506

returning_function1 domain Query507

isAccordingTo Clause C.3

returned Query508

returner Query509

Query504 = (occurrences where an employee older than 25 is buyer ∩ occurrences where steel is bought) –

occurrences where Clause P.2 is isAccordingTo13

Query505 = participants in role buyer in occurrence |Query504|

Query506 = participants in role bought in occurrence |Query504|

Query507 = (occurrences of returning where count of days since (occurrence of purchasing for participant in

role returned) is ≤ 30) – occurrences where Clause C.3 is isAccordingTo

Query508 = participants in role returner in occurrence |Query507|

Query509 = participants in role returned in occurrence |Query507|

Table 10: A schema for storing powers

& " J! buying_function1

%#-)&$

.Query504/%buying4

4!(+% buying4 Query504

buying_function1()%buying4

Query504 buying_function1(Query504)#

buying_function1(buying1). &#

#buying$

-)&$% # buying6#

$-)&$#buying6

Query504buying_function1%

J5 " * # % % % "=(0=C C 0%

7.

# "J! returning_function1

#%5#5!

%

P # P $

* # #

being_steel.%J/%

.W4%5/#

being_steel # # measuring%

being_steel%Jall14

*being_Fe360isAccordingTo

Euro-Norm 10025< measuring item_measured

quantity_measured1600#unit_of_measuremm#dimension_measuredheight<

measuring quantity_measured 400# unit_of_measure mm#

dimension_measuredwidth<%

7 (((

(((,5# ##

; Q;L2R# % ;

=0 8

:< # $ =0 8 ,

0:%;#

<

,

%"

J1<;=0%

" #

#.

/###%B J4"allWJ%L%J1#((being-obliged % ;# # # % &# #buyingowning % " # # * %% %

6)

%

violating #

being_obliged_function2(…)#being-obliged.

(=0/ % 7- Q-3?R

$Q33R

#

#

%&#;#$x

. / .

/ % ; =0

<

=0%#x

. /#

. /% " $

;8:#

x%#

##

#%"

#,.

/.#

/%

" .%% /

'#'*

7.

4/4/ 1? ?!

'.WJ%1/(

=(0# '

#%&

# . /

% )# C '

./%=(0

=0Q7-32R<

=0=0.L!/%

4/4/' ?!

&##

#%B

.(/ ' #

' %

.(/'#

J?%

#$#+#@Q+@ !!JR

$% 7# # - Q7-32R

(

% B ( '% "

' I

(# ( # (

.W5%5/

% " (

#

J?"#$#(% (* $%###%

2(!"

D(

%

6)

% " # = x0

%)#

'#

%

( #

'

%

4/ 1 ,!

" # # (% "

' #

##((

##((((#

##%

4// 1

"$ =$; 0 G$=### 0 $## 0

.%J /% " '*=

#J !!J#T 1#!!!$;0#

#

%"'$

%"##

'% " $;

. %J/ being_obliged1 " JJ# Query19#

24# '

# being_obliged1% "

J!$;.% /being_obliged2"JJ%

&# $#

$3#4

#$;

JL%

B =0 A%J

% & '

=0P # '

' . # / P

=0% # ./ %

@"JJ%

Occurrence Role Participant

obliged Query19 being_obliged1

IsAccordingTo Clause C.1

obliged Query510 being_obliged2

IsAccordingTo Clause C.2

domain Query511

fulfilled Query512

fulfilling_function1

IsAccordingTo Clause L.1

Query19 (see page 84) = first (occurrence of SkyHi paying Steelmans $25,000 for the delivery,

where paying is before 1 September 2001)

Query510 = first ((occurrence of delivering where (delivered is steel and participates in role item_measured in

an occurrence of measuring where quantity_measured is 10 and unit_of_measure is tons)), intersection

(occurrences of delivering which are before 1 October 2001))

Query511 = occurrences of count(results of |Query513|) being equal to max-possible-results(|Query513|)

Query512 = occurrences of being_obliged where (query counted in |Query511|) is obliged

Query513 (not shown in table) = queries in role obliged in occurrences of being_obliged

Table 11: Initial schema for storing obligations and their fulfilment conditions

# " JJ

' (

%"#

#

JL#$;%HW1%?%3%

6)

#

%

AA .W %?/

%

#*

Pα =def ¬O¬α

((#α#α%

& # $

P ' P

%

# % "

#

.#/%

B=0=0%

* A

=J!0#A

J! % &

##

$%B

delivering1$consignment1.J!

/deliveredSteelmansdeliverer%$;

J!#

*

delivering1 (on 15 September 2001) = (occurrence instance)

(role) (participant)

delivered: consignment1 (measured as 10 tons of steel)

deliverer: Steelmans

delivering2 (on 20 September 2001) =

delivered: consignment2 (measured as 10 tons of steel)

deliverer: Steelmans

"A .= J! 0/

J1#

$3#4

' % # #

%

./*$#

=0% . /

# #P

P%

B #

#%D

QD !!!R $

%"%

#A

% "

% $; J!

J- !!JPP

%"$AJ!#

A*

OA

=J!0%;#

#0#

$;Y&A#*

OA

# #

*

OA ∧ OA

(standard propositional logic)

OA18

J2 OAO(A∧B) A%AO(A∧B)OA

6)

A#

% +$Q+$33R

#

%B#

#

$ % ##

J!.#A/#*

OA ∧ A ∧ OA ∧ A

(standard propositional logic)

OA ∧ A

" % +

##

*

OA ∧ A

" A A % 0

Q12R

.OA =def (¬A→Violation)/# 0

A%

"#.

/%

# #

EQE !!JR% E

. O / .

Violation/A%B

, E0 # #

((%

O(A∧B)%+.%%#O1(A∧B) O1(A)/ $ O1%

$3#4

& #

J being-obliged2# "JJ

.J45/%"##being-obliged20%

7#"JJ#

'.W5%5/delivering1

.being-obliged2/.being-obliged20/%"delivering1

' . '

P =first0'/

%

#,'

% E QE !!JR

$ Q !! R sake_of()

%

#

.%% ((# ((#

/#allocatingE0sake_of()

%B"J <

'' %

6)

Occurrence Role Participant

obliged Query510 being-obliged2

IsAccordingTo Clause C.2

obliged Query514 being-obliged20

IsAccordingTo Clause C.2

Query510 = first ((occurrence of delivering where (delivered is steel and participates in role item_measured in

an occurrence of measuring where quantity_measured is 10 and unit_measured is tons)), intersection

(occurrences of delivering which are before 1 October 2001) intersection (participants in role allocated in

occurrences of allocating where allocatedTo is being_obliged2 and allocationBasis is FIFO))

Query514 = first ((occurrence of delivering where (delivered is steel and participates in role item_measured in

an occurrence of measuring where quantity_measured is 10 and unit_measured is tons)), intersection

(occurrences of delivering which are before 1 October 2001) intersection (participants in role allocated in

occurrences of allocating where allocatedTo is being_obliged20 and allocationBasis is FIFO))

Table 12: Corrected schema for storing obligations:

with performance allocation constraints added

B'#

#%)#

*

allocating1

allocated: delivery1

allocatedTo: being_obliged2

allocationBasis: FIFO (first in, first out)

allocating2

allocated: delivery2

allocatedTo: being_obliged20

allocationBasis: FIFO (first in, first out)

B % B

#

!.#/

% &#.#

/ #

.# /% 7

#((

$3#4

#%

#

I(# $% B$

%

6(#

' #

J!#*

fulfilling1

fulfilled: being_obliged2

fulfiller: delivering1

fulfilling2

fulfilled: being_obliged20

fulfiller: delivering2

" # $

$% #

.%%delivering1#paying1/%

#$J3%

$%

$##$%

$ # ) 3

#)J!%

J37$#,%

6)

4(678/47

Clause C.2:

Steelmans

must deliver

10 tons of

steel before

1st October

2001.being_obliged2

obliged:

0 →→→→

29= query510 =

first (allocated) occurrence of

Steelmans delivering 10 tons of steel

before 1 October 2001.

Figure 9: A not-yet-fulfilled-or-violated obligation

4(678/47

Clause C.2:

Steelmans

must deliver

10 tons of

steel before

1st October

2001.being_obliged2

obliged:

29= query510 =

first (allocated) occurrence of

Steelmans delivering 10 tons of steel

before 1 October 2001.

delivering1

!

1→→→→ "

Figure 10: A fulfilled obligation

" '( ( (

=$(II

0% $

,.%%Q !! R/*,

#II,%'(

$3#4

'=first of ((delivering a thick-base pizza) union (delivering a burrito

with extra cheese))0% '#

%

&

( A*

'#

##

.%%=J!0/%

4//' H "

"#being_obliged1being_obliged2#$;#

<

% & # %

% A%5

%P#

P

% #

.%%(<%%/#

%

& #

% =0 A%

# . / '

.J !!J%J#J !!J% /#

!% "J5

!7##'I## =./0. /% "'" # # # =0=0=0%& # # #

%E#ought(e1)# # violating(e1)%

6)

% "

. / .

A%5/% )JJ #

$J43%

H(=0%

& %

#

.W1%?%4/.W1%?%3/#%

Occurrence Role Participant

domain Query515

violated Query516

violating_function1

IsAccordingTo Clause L.2

domain Query517

obliged Query518

being_obliged_function2

IsAccordingTo Clause L.3

Query513 = see page 143

Query515 = occurrences of count(results of |Query513|), after their deadlines,

being < max-possible-results(|Query513|)

Query516 = occurrences of being_obliged where (query counted in |Query515|) is obliged

Query517 = occurrences of successfully instigating prescribed procedure following

occurrences of violation of occurrences of being-obliged

Query518 = first occurrence of paying damages for the violation for which

legal action was instigated in |Query517|

Table 13: A schema for storing violation conditions, and

consequent liability (secondary obligations) to pay damages *#being_obliged1##violating1#violatedviolating1being_obliged1%)#

(( C %#( % H C % C ##I#% ;# C %" C # #P##P#$%

$3#4

4(678/47

Clause C.2:

Steelmans

must deliver

10 tons of

steel before

1st October

2001.being_obliged2

obliged:

0 →→→→

29= query510 =

first (allocated) occurrence of

Steelmans delivering 10 tons of steel

before 1 October 2001.

Figure 11: A violated obligation

B'Y

& $ J !!J

'J !!J%;#

%B

J !!J#

J !!J#

% =D 0

% @# 5

J#

violating_function1%

6)

4// ,

Bbeing_obliged1"JJ"J5#

*

• .(/*payerQuery19

.$;/

• *payerQuery518

.$;/

• * payee Query19

./

• *instigatorQuery517

.

/

• *payeeQuery518

.#/

• * # I

# . # %J

$;/

' "

#

. +$ Q+$2?R/#

%

(

(%&#

%

2!"

#

##

##

#%

$3#4

4// ! ??

#

Q3LR% " #

$$Q3LR%"

. /#

((.

((# #

# # /%

=0

. ?/

./((

. W1%?%3/% " #

."J5/#

%

4//4

# $ # * .%%

/ %B

.W1%?% / # #

#

%

# %4

# %5%

" J4

being_obliged_function3# being_obliged

=#%50%

6)

Occurrence Role Participant

domain Query519

obliged Query520

being_obliged_function3

isAccordingTo Clause C.4

Query519 = occurrences of returning where participant in role isAccordingTo is Clause C.3

Query520 = first occurrence of refunding where (refunded is SkyHi) and (participant in role refunded_amount is

(total of participants in role paid_amount in (occurrences of paying where (participant in role paid_for is

(participant in role returned in |Query519|)))))

Table 14: A schema for storing a conditional obligation

) " J! .

/"J4.

/# # returning1#

5! #

#returning11#

%5% returning11# #

#being_obliged31#

% " # returning11#

returning_function1(returning1)# # being_obliged31#

being_obliged_function3(returning11)#*

returning11 = .'/

source_rule: returning_function1 ./

source_occurrence: returning1 ./

returned: steel purchased in purchasing1

returner: SkyHi

(((((((((((((((((((((((((((((((((

being_obliged31 = .'/

source_rule: being_obliged_function3 ./

source_occurrence: returning11 ./

obliged: Query521

Query521 = first occurrence of refunding total amount paid for purchasing1

' !"

B

#

##

#

%

$3#4

)J )J5#

#

% & # $ P7

# P

%

Figure 12: Birth of a child from parents

& '&

()*

returning11

# $

% $&&'

being_obliged31 $

source_rule: being_obliged_function3+Clause C.4,

source_occurrence: returning11

being_obliged_function3domain:occurrences ofreturning according to Clause C.3

…isAccordingTo:Clause C.4

4(678/47

Clause C.4:

In the event of a

return in terms

of Clause C.3

above,

Steelmans shall

refund SkyHi

-./

.0/

/

Figure 13: Birth of an obligation instance from policy and evidence

6)

4// 1? ? ? ?

%"((

((

.%%#

# ((/ #

% (

.4 /%

(((%;#

((

( # ( #

%

4//2 :!

./

# 2

3 T 1#!!!J !!J%

;#

% A%5

# =

0% &A%5

#/

% @ #% "

*

ƒ : occurrences of successfully instigating → occurrences of being-obliged

'' !"

&

%

'2!"

%

$3#4

" ƒ

% & " J5# ƒ

being_obliged_function2% being_obliged_function2 $

instigating being-obliged% )

instigating1# #

being_obliged_function2(instigating1) being_obliged_function2

A%5% &#

#

.%% being_obliged_function2/

%

being_obliged_function2(instigating1)

*

being_obliged21 = .'/

source_rule: being_obliged_function2 ./

source_occurrence: instigating1 ./

obliged: Query522

Query522 = first occurrence of paying damages for the violation for which

legal action was instigated in instigating1

being_obliged21 .21 ' /

.being_obliged_function2/

.instigating1/% " $

./# #

source_rulesource_occurrence

%

Query522

% & " J5 . J1 /

'#Query517#

%D

'24(!"

#

%

6)

|Query517| '% |Query517|

'

% )# instigating1 % "#Query518

.first occurrence of paying damages for the violation for which legal action was instigated in |Query517|/#

Query522 .first occurrence of paying damages for the violation for which legal action was

instigated in instigating1/#being_obliged_function2(instigating1)#$

being_obliged21#instigating1%

" A0

7QDABB31R$0Q33R

#.W %1%L/%&#

# # # # %

;#

=0

% & #

##./

%

4//8 .

)

#

% ;# ' # '

#

#

% + Q+35R

#

'$QA !!JR%

, P # # P

%

' '!"

&./

$%

$3#4

# #

%

# being_obliged4# (

( 5! !!J%

% & #

'# Query523# the first occurrence of

generating, on 30 September 2001, year end reports, by a report-writing component%#

#

J# '

% ('

#

% 0

'#Query523#%

BP%%

$##$%#'

0#

'%

4//- ;"3

B

.W1%?% #W1%?%1/%

PP

% " = 0Q"D33#

J4?R% )#(

#

# . / % = 0

J " # ( #$$%

2(!"

(

%

##

%

6)

Q"D33# J4LR# =,0 Q"D33# J43R#

#

./%A=0Q"D33#

J1 R %

=0##%A

$%

&A.?5/0

*OA ∧ A##¬OA

%#

#being_obliged2."JJ#J45/##

% B

##%)*

fulfilling1

fulfilled: being_obliged2

violating1

violated: being_obliged2

being_void1

voided: being_obliged2

#

' %

A$% "A(

#

%

$3#4

#

*

.# # (/

% B

P "J1 P

%

Occurrence Role Participant

domain Query524 ceasing_function1

ceased Query525

Query524 = (occurrences of fulfilling) union (occurrences of violating) union (occurrences of being_void)

Query525 = participants in role theme23 in |Query524|

Table 15: Defining termination or cessation of an obligation

# fulfilling1# being_obliged2#

*

ceasing1 = .'/

source_rule: ceasing_function1 ./

source_occurrence: fulfilling1 ./

ceased: being_obliged2

& # 7& . ?J/ I QA2!#3LR% . ?/# % 5 theme * fulfilled# violated# voided ( I =0 $Q31< !!!R%

' !"

"

.%%=0

=0/

%

6)

"

*

Commercial Trade Act

A party is only obliged to fulfil obligations that have not ceased. Clause L.4

A%4 # = 0

"J?%

Occurrence Role Participant

domain Query526

obliged Query527

being_obliged_function4

isAccordingTo Clause L.4

Query526 = (occurrences of being_obliged) minus (participants in role ceased in occurrences of ceasing)

Query527 = participants in role obliged in |Query526|

Table 16: Defining ‘current’ (active) obligations

B $ being_obliged_function4

.W1%?%4/# $

# . being_obliged/

% &

<J!1%

)J4)J1(

(%

$3#4

Observation in 1975conception1

Observation in 1976

Observation in 1901

Observation in 1981

birth1

being_alive1

Observation in 2076

Observation in 2101

death1

Figure 14: Life cycle of a person

Observation at 1 Feb(No prima facie obligations)

Observation at 15 August(Prima facie obligations according to both clauses. Clause L.4 is the one we choose as describing all-things-

considered obligations.)

Clause C.2(prima facie obligation)

According to…Clause L.4

(current, all-things-considered obligation)

being_obliged_42

Observation at 1 November(No all-things-considered obligation:

The function defined in Clause L.4 does not create an obligation on 1 Nov because its domain only contains

obligations that do not participate in occurrences of ceasing.)

being_obliged2

being_obliged2

Steelmans delivers steel: delivering1Query (bucket) is filled: filling1

Obligation is fulfilled: fulfilling1Obligation ceases: ceasing1

source_rule: being_obliged_function4source_occurrence: returning11

Figure 15: Life cycle of an obligation instance

6)

4/2 :

B

E0 ' "

%

B P

'P

# #

% B

%

####

#

####%

%

&#

./ P

$7((.W %1%L/#

% , #

#

%

&#,

;##D#E#+$#-#

#

=C 0 %B

=C 0*

• .1%4%J/#

#

%

• .1%4% /%

('!"

#

%

' -!"

./#

#

%

'!"

)

P

###

Q;L2RP

%

!&

• .W1%1/%

.W1%?/%

.W1%?/%

#

% )#

' (

#

# % +

%

'84!"

"

#

(

%

*5 6

,

& ( (

# %

(

##%

B # .W?%J/#

*

$%

# #

.W?% /% .W?%5/

##

% #

% B

.W?%4/# # # (

# #

%

8(9#

/ *5 ".L:

B . 1/ # #

%B#

P#'P

A%"

."J5#J1 <"J4#J1?<"J?#J?4/#

."3#J5?/#."?#J5J/%B

$# # #

%B

.W1%?%3/*(

#$

0##%

A%

.%%

# #

/# '

#

%B

. /

P

5 $

%B

0 %

.%%W1% #W1%?%J/ isAccordingTo

####

. Clause C.4/

''!"

@P#

#

#,P#

P

0%

(/&+!

%being_in#

.%% Section 1.1/#

.Supply Agreement Between SkyHi and Steelmans/%#

.%%Managing Director/

.%%Steelmans/#.%%Philadelphia#

February 8th 2002/%

I./

# (# # (

#

.W % /%"

#$

#

( % ) # $

( * =all terms of the contract dated 1 April 2001 between

Steelmans and SkyHi are null and void0# =the provisions of Section 3 shall override (that is, conflicting

provisions are void)0# =subject to the conditions listed below …0% "

. 6 2# J!1/% & #

=The Meal Deal Offer0#=Summer

Specials0# =Premium Promotion0$

./ %

$%

.%% #

/<

I % 7(

# $ % )

#$=,0#

#%

8(9#

%QEE2?RD

7%"$*

[proposition] on [date] by Section [section number] if [conditions]

)*

x acquires British citizenship on 16 March 1987 by Section 11.1 if …

(%

) # JJ%

JJ%J#'JJ%J*

x acquires British citizenship on 16 March 1987 by Section 11.1 if …

and not [x is prevented by Section 11.2 from acquiring British citizenship]

B

((#

x acquires British citizenship on 16 March 1987 by Section 11.1

##

x acquires British citizenship on 16 March 1987 by the law as a whole

"

#%

%

B % 8((:Q;+3LR#

8 :*

%

B$#)J?##

# %

% "

* W1%?%1W1%?%3#

./%"#

# % " $

.%%/

(/&+!

% ) JL

#%

4-!

9:

Section 1:

SkyHi must pay

Steelmans

$25,000 before

1st September

2001.

1(.

2

$

being_obliged1 =isAccordingTo: Clause C.1

Figure 16: Document vs. utterance provenance

Observations at 1 February

Observations at 1 November

4-!

9:

Section 1:

SkyHi must pay

Steelmans

$25,000 before

1st September

2001.

1&%%

1&%

being_obliged1 =isAccordingTo: Clause C.1

being_in1 =contents: Clause C.1container: Section 1

being_obliged259 =isAccordingTo: Clause C.4

being_in2 =contents: Clause C.4container: Section 1

4-!

9:

Section 1:

SkyHi must pay

Steelmans

$5,000 before

15th September

2001.

7*EDEE 'H .%%Clause C.1#Clause C.4/#

.%%Section 1/(%

Figure 17: Document history: obligations and document labels

8(9#

/' ,

.1/'

#

'%

.W %?/ 4

.W %5/#"JL

1%

, .'C /

,"

%

,'"

.W?% %J/%

1

," .

/#

.

/QA22<+$22R%

. W?% %

Q D !! R/%

;

!

.

!

, " ." /x

y I

?%

;

.

4 " $ # %B%

1"% ?"I#I%

-'-!"

%

#

, .'C /

,4"

% "

Q+$2?<-3?R%"

# # #

#

#%

* $

3

,"

% "

%"

%

1

* $

,2" +

%;+$0.#

?1/ % " (

= 0 Q+34R

#

'

%

1

,8" ./ #

%

* $

,-" #

%

Table 17: Conflict detection rules

*

8(9#

/'/ *5"1 $

A##

$;##being_supplier1#"5.2!/%

)#TJ!#!!!

%5#"1.J5!/%

$; #%J# T 1#!!!#

J !!J#%

#P%%<

paying % " JJ . J45/

#being_obliged1# .#

/'Query19%

7#@ .JL4/#

.Query19/ ' #

# ($ #

being_supplier1#Query19Query10 .W5%5%5/% )#Query10

.Query100prohibiting1<

"1#J5!/%

B .

/.

/% " % "

)J2%

#

Clause C.1:SkyHi must pay

Steelmans$25,000.

Clause P.3:Payments of more than $10,000 to suppliers

are prohibited.

query19 =first (allocated) occurrence of

paying $25,000 to Steelmans

query10 = occurrences of paying

more than $10,000 to suppliers

obliged:

prohibited:

Figure 18: Conflict shown by overlap between obliged and prohibited occurrences

"EDEE0(

* W5%5%5 W5%5%4#

# being_supplier1 . /#

Query10 ./Query19 ./ %

@)1)?.

35/#Query19.being_obliged1/Query10

.prohibiting1/%)J3#

being_supplier1# #

Query19Query10 % ) !

being_supplier1Query19

Query10

%

8(9#

… is covered by …

query19

query15

query1

query4

query10 query17

query9

query18

query13

query16

query2 query7

query14

Steelmans

Figure 19: Covering relations graph before addition of being_supplier1, highlighting the obliged and prohibited occurrences, with no route connecting them

query19

query15

query1

query4

query10 query17

query9

query18

query13

query16

query2 query7

query14

… is covered by …

… is now also covered by …

Steelmans

Numbers in circles show the order in which these new relations are discovered.

3

Figure 20: Covering relations graph after addition of being_supplier1, highlighting the obliged and prohibited occurrences, the connecting route, and the dynamically-discovered conflict

#

B*

conflicting1 =

conflictor: being_obliged1

conflictor: prohibiting1

BW?%5%J

###

%

/'/' *5'"1

$;#%J.Contract

Between SkyHi and Steelmans entered into on 1st August 2001WJ% / 0

$## %D#$;#

%2. "/5"# %&

J1 !!J#

delivering1 J J1

.5!J1/%

#

'=first of (occurrences of paying for delivering1 before 1st September)0=first of (occurrences of

paying for delivering1 before 15th October)0PP

( % #) J

%

8(9#

Clause C.1:SkyHi must pay …

before 1st September.

Clause C.8:SkyHi must pay within 30 days of

delivery

being_obliged1

obliged:(first of)

occurrences of SkyHipaying for delivering1

before 1 September

being_obliged209

obliged:(first of)

occurrences of SkyHi paying for delivering1

by 15 October

Figure 21: Initial view: conflict between obligations of different strictness

& # ) J %

.W1%4% /%

*

2I=&"&$3

23%"$%2#5!#

5! P # (

5! L%D

@5@4.JL4/#%J

(5!%

L+#Iviolatingsource_occurrence countingI.0/#.J1/%

)

/

&$%B

%

*

"

@ % "

$%.#

JL /%

?H "

@

##

%

H "

& #

%

& #

.QD !! #

D !! R# W1%?%3/#

($ % B

(

#% (

(

* (

##%"(

%

"#

W?% #*

'!"

(

%

8(9#

// *5 " $

& W?% %J #

% B

0.%% /

% )#$

,*

Powers of Agents: Settled Principles of English Law28

An occurrence of an agent promising something on behalf of their

principal brings about an occurrence of their principal being obliged to

do the promised action.

Clause L.5

An occurrence of being aware of a prohibition that conflicts29 with an

obligation in that contract, brings about an occurrence of the

obligation being void30. That is, an obligation is void in the event that

the reliant party knew that the agent did not have the authority to

enter into the contract.

Clause L.6

2@$+#)A##.15.J332<4%<D/# %"D%@#$ %

3B # %B$### % =@ 0 < $ , EDEE # $ EDEE $%

5! "# 5%;##%

)

Social Conventions

An occurrence of a party reading a given clause brings about an

occurrence of that party being aware of the legal relation mentioned

by that clause (that is, the obligation, prohibition, or function

associated with that clause).

Clause S.1

An occurrence of a party P being obliged, in obligation Q, to pay party

R, brings about an occurrence of R being beneficiary of the obligation

Q.

Clause S.2

B# W1%?%J# being_obliged1.

/# % A%1

* %A

-#$$;%"

promising1"J2%

Occurrence Role Participant

promiser John promising1

promised Query19

Query19 (see page 84) = first (occurrence of SkyHi paying Steelmans $25,000 for the delivery,

where paying is before 1 September 2001)

Table 18: Representing a promise by an agent on behalf of a principal

B.

A%1/being_obliged_function5"J3%

8(9#

Occurrence Role Participant

domain Query528

obliged Query529

being_obliged_function5

isAccordingTo Clause L.5

Query528 = occurrences of promising

Query529 = participants in role [=promised] in |Query528|

Table 19: Representing the rule that a promise by an agent binds their principal

A$being_obliged1#

*

being_obliged1 = .'/

source_rule: being_obliged_function5 ./

source_occurrence: promising1 ./

obliged: Query19 ."J2/

Query19being_obliged1participants in role [=promised] in

promising1 P %% # promising1# I

'#Query529#"J3%

A%?#%J#% .J2 /

" !#" J#" %

)

Occurrence Role Participant

domain Query530

voided Query531

being_void_function1

isAccordingTo Clause L.6

Query530 = occurrences of being_aware

Informally, Query531 = obligations that are in conflict with provisions the aware party is aware of which are also

obligations where the aware party benefits

Formally, Query531 = (occurrences of being_obliged) intersection (participants in role [=conflictor] in

occurrences where participants in role [=conflictor] are participants in the role [=aware_of] in |Query530|)

intersection (participants in role [=benefit] in occurrences where participant in role [=beneficiary] is participant in

role [=aware] in |Query530|)

Table 20: Representing the rule that a prima facie obligation on a principal is voided

in the case that the reliant party was aware of lack of authority of the agent

Occurrence Role Participant

domain Query532

aware Query533

aware_of Query534

being_aware_function1

isAccordingTo Clause S.1

Query532 = occurrences of reading

Query533 = participants in role [=reader] of |Query532|

Query534 = occurrences where [participant in role [=read] in |Query532|] is in role [=isAccordingTo]

Table 21: Representing the rule that an occurrence of reading a clause brings about an

occurrence of being aware of the legal relation directly mentioned by the clause

8(9#

Occurrence Role Participant

domain Query535

benefit |Query535|

beneficiary Query536

being_beneficiary_function1

isAccordingTo Clause S.2

Query535 = occurrences of being_obliged

Informally, Query536 = ‘payee’ in the obligation in |Query535|

Formally, Query536 = results of the query returned by (Value where CriterionType is [=participant] and QueryID

is in ((subqueries of the query returned by (participants in role [=obliged] in |Query535|)) intersection (QueryIDs

where CriterionType is [=role] and Value is the query ([=payee]))))

(see Figure 3, page 85, for an example of a stored query)

Table 22: Representing the rule that being payee in an obligation to pay implies

being beneficiary of that obligation

$;0

(# $;0

# reading1# %5 .

<1/#

#Steelmans% "#

*

reading1 =

read: Clause P.3

reader: Steelmans

7#% ." /#

being_obliged1 .W1%?%J/

being_beneficiary*

being_beneficiary1 = .'/

source_rule: being_beneficiary_function1 .<" /

source_occurrence: being_obliged1 ./

benefit: being_obliged1

beneficiary: Steelmans .payeebeing_obliged1/

)

B reading1 # (

$ 'Query532

being_aware_function1." J/%"reading1

*

being_aware1 = .'/

source_rule: being_aware_function1 .<" J#J21/

source_occurrence: reading1 ./

aware: Steelmans

aware_of: prohibiting1

"being_aware1*

reading1 # prohibiting1 J5!#

'occurrences where [participant in role [=read] in reading1] is in role [=isAccordingTo] . #

#reading1# Query534" J/prohibiting1%prohibiting1

aware_of being_aware1% #Steelmans aware

being_aware1 participants in role [=reader] of reading1.#

#reading1# Query533" J/%

7# ($ being_aware1

Query530" !%"# being_aware

being_void_function1 being_void being_void1% &

being_obliged1voided*

being_void1 = .'/

source_rule: being_void_function1 .<" !#J21/

source_occurrence: being_aware1 ./

voided: being_obliged1

8(9#

"I#$*

reading1.J2?/U %5

being_obliged1.J24/U $; . # %J/

T 1#!!!

prohibiting1.J5!/U TJ!#!!!

C#*

being_aware1.J2L/U prohibiting1

being_beneficiary1.J2?/U being_obliged1

conflicting1.JL3/U # being_obliged1#

prohibiting1.W?% %J/%

B*

being_void1.J2L/U #being_obliged1#

%

C being_obliged1# prohibiting1

conflictingbeing_obliged1%

#being_obliged1#voided being_void#

being_obliged_function4.J?4/#(

( . A%4# J?4/% "# '

=# A%4#$;Y0

###$;$

%

&.being_obliged1<

J24/ #

.being_obliged_function5# J24/% ;#

#

#((#% "(

.# /

.#/

; +$0 Q;+3LR 8

)

: 8:% & . ,

/#(%

&. /#

%

& $'=Y0

=0#being_obliged1%;#=0

'=0* =#

A%1.J2 /#0%D$being_obliged1#

(( A%4

being_obliged_function4 .J?4/%

7 # ,

.

being_obliged_function4/#

#

% )#$$;0

#

# $; . /

%

//' *5'" $

@W?% % #

* . / J

. $;0 " / J1

%& ##

5! # %

'!"

@'

%

###

#Q6A33R%

8(9#

< .

being_obliged_function4# J?4/ ((

%

<

<#

% &

#

%;<

#%& $;

J! *

% & $; # *

"%

/ <

& %.#JL /#

%

t1#t2%7. /

#%'

# '

% ,

<'# %B#

%

B#W1%?%3#(.A%4/

%7#

# I(

.W?%5%J/%)

*%#>

'# => %

4!"

"

P

P(

%

) # ( <

. ) /

%

Date Commentary Session Transcript A party is only obliged to fulfil obligations that have not ceased

(Clause L.4; pg 164)

% INSERT being_obliged_function4 (pg 164)

Is SkyHi obliged to pay, according to Clause L.4?

% SELECT occurrences of being_obliged WHERE isAccordingTo=Clause L.4 AND obliged >= Query19 (pg 84)

1 Jan 2001

No (no obligations exist yet). > 0 results.

John promises SkyHi will pay Steelmans $25,000

% INSERT promising1 (pg 183)

SkyHi is obliged to pay Steelmans $25,000

=> being_obliged_function5(promising1) (alias: being_obliged1)

(pg 184) Is SkyHi obliged to pay, according to Clause L.4?

(Same SELECT query as above)

1 Aug 2001

Yes, they are. (being_obliged1 is in the range of the function being_obliged_function4, and the function therefore produces a result.)

> being_obliged_function4 (being_obliged1) > 1 result(s).

Web log evidence now indicates that Steelmans read Clause P.3 prior to entering into the contract.

% INSERT reading1 (pg 186)

Therefore, Steelmans was aware that payments of more than $10,000 were against company policy

=> being_aware_function1(reading1) (alias: being_aware1)

(pg 187) … …

Therefore, according to Clause L.6 (pg 182), the obligation to pay is voided.

=> being_void_function1(being_obliged1) (alias: being_void1)

(pg 187) Is SkyHi obliged to pay, according to Clause L.4 ?

(Same SELECT query as above)

No, they are not. > 0 results.

10 Aug 2001

Reason: The prima facie obligation is void and has therefore ceased. being_obliged_function4 therefore no longer produces an all-things-considered ‘obligation in terms of Clause L.4’ .

Figure 22: Transcript of a session:

adding and querying contracting and workflow occurrences

) ) # '=$;

#A%4Y0=70J- !!J#=Z0

J#=70.J!

8(9#

/$;0 %

%

7 # J1 !!J# $ #

$ !!JJ4!!#$;

% B SELECT' #

!!J J4!!5J% " '# J1

$ !!J J4!!#

being_obliged_function4(being_obliged1)##$

!!JJ4!!#$;%

/4 :

B(*

'

I %

%

'

(%

& . 1/#

(

###

% B

.W1%?%3/ (

.#/ $

.#/#%

&#

.%%

5J 7# ' ./ ./%

!&

## #%/ .W?%J/#

.W?% /# .W?%5/ %

"$#

#%B

.W?%4/%

# #

(

.W %5/ (

.W %?/%

& # $

%

2

7 *

( (%

%"

# #

. L%J/ . L% / % L%5

%

2/ 7

D#$

# '

%"

%

(I *

#

%

:*()

+ % &

##

'% ##

#%

2// .

# '

% " ($ .W5%5/$

'#( '%"

'

%)# '

prohibited#

%

"$ = TJ!#!!! 0%

" 1 W1%5 Query10

prohibited prohibiting1% 7#

'./

%"###

$;##being_supplier1."5#2!/

(% being_supplier1 (

$ % " ($

#being_supplier1##'

[occurrences of [being_supplier]].W5%5% /'prohibited

% 7 #paying1# % "(

$ paying1 Query10% '$ $

Query10 Participant

prohibiting1Occurrence%paying1Query10#

#paying1 % ) 5

( %

)*

7 9

#

1:

H

Figure 23: Immediate detection

" ( # $

' #

% # #

%

2//' ,

" ($

* #

$ % ;# '

% (

$ ( % # $

##

'%

%

#= 0#=" 0#

=($ I0#%"#

# (

:*()

# (

'%

"*

J% 5*

"'./

%" '

%

% ( *

D $ '

%&$#'

($

# .) 4/% "

' % )

'

'

%)#

paying# payer payee#

$'

payer # payee

% $ ' payer

$'payee%#6(+

B Q6+B3LR # $ $ #

%

(

7 9

#

&

Figure 24: Delayed detection with bottom-up batching

2/' *

#

# % B

*

. /

%*

$% B

% # #

,#%&

' #

% @ '

%B(#

%;#= 0

=0. /#

'%

:*()

2/'/ .

.W1%J/

# $

# '

$%"

0 P #

# #

P $ % "

#

# #

##%

. 5?/ (

% B #

% &#

# $ being-obliged

<) 1%"%

#.%%/

$%

"

# % #

. /#

%

!"

(

7 9

#

'

,

Figure 25: Intervention by diligent components

2/'/'

&#$#'

#%

' .%%/

% B

.W?% /% &

#

% " #

#

'

# % B

.%% ## /

$ '# % "

=0

./

%

:*()

2/'/

&

# # .%%

/#

%&#

(((

(##

# % "

.I/%&#

##

'%

) % ;

%&

%B#"L W1%5#

$ %J%

(

2/ *,**.

+ -

( .EDEE/%EDEE

QD !!J#D !!JR

% EDEE .WL%J%J/#

(.WL%J% /#.WL% %5/%

" EDEE $% 7$

.(((

##/%

."5#2!/# ."2#J5?/# # ."1#

J5!/#%"

# $ <

%

"((

$( #

'' % EDEE (

-D( % "

' (

( (

<

%

%

(

#

Q33R%

EDEE # :6

0 ->) ) 9 :% "

#'#

:*()

.%% /

.TableStore/% B ' # $

( '#

(' .*$&$&"#

? /% " '

$

% B .5?/

# EDEE

$ % & Occurrence

#%TableStore.addOccurrence(…)

%"

$

.W2%4% /%

.

DBTableStore / ( . MemoryTableStore /%

DBTableStoreMemoryTableStoreTableStore#

( #

EDEEQL#TableStore%

" resolve(String EdeeQL) EDEE0 TableStore

' EDEEQL ( %

@'OA#I

'I %&('#

I#-0HashMap.get()%

&#,(

' .%% -# VV#

HD/ ( # OAOA

%&#((

#,(#('

%

(

EDEE0 CoverageChecker

'

'% EDEE

%

'< '

%

'

% EDEE0 CoverageChecker

#

(($Q !! R%

-.

# H# &/

*

• -

%

• O((

# $ .

/'%

• B # , # #

('%)(

' .

$/% )(

# # '

( % +

#

# #'

-%

• B ( . / (

( % O( #

###(%

--!"

'

,

#

,#%

:*()

• (##

$.WL%J% /%

##

I#

((.W2%4/%

2/ :

" EDEE

% B

.5/.1/#

.W5%5% /#

$ ' .W5%5%5

?/%

&#(*

#

.W1%?%J/

. /

$

.WL% %J/

./

#

.WL% % WL% %5/

./

!&

#

('

.W1%5%J#W1%?% /

. /

#

.W1%1/

.W1%5% /

.

B/

.W1%?% /

.

F/

" EDEE

%

8

" #

.W2%J/ .W2% /% EDEE0

.W2%5/% )#

.W2%4/%

8/ :

", I

(

%

EDEE%"

$ %

(

*'.W5%J/#

.W2%J%J/# (

.W2%J% /#.W2%J%5/#

,( ( .W2%J%4/#

(.W2%J%1/#.W2%J%?/%

; &

.W2%J%L/#(.W2%J%2/#

'I.W2%J%3/%

8// *

%Q AB34R

#

=0% 6Q AB34R

$#$

,%

; Q;32R

%)#Manager

Employee (

I%

'# OA'P

P

% ) #

''*

SELECT manager_ID FROM Employee WHERE Employee.salary > 10000

SELECT manager_id FROM EmployeeManager, Employee

WHERE EmployeeManager.employee_ID = Employee.employee_ID

AND Employee.salary > 10000.

;0 ( #O

. 9/##7# (

OA%

&( #

* One manager manages each employee Many managers

manage each Employee

!

# $

% " #

'# # (

# # ,

%

8//' 3?

)Q)32R,,(

# #

%,%&

,(#EmployeeManager(

Person% Employee Manager '

, # '

Manager%

EmployeeManager%"

ManagerEmployee'#

Employee Manager% ,(

,F

%

E%QE@@ !!!R)0#(

,(I$

, #$ ,

% '

% @ ( ,

#,%

"( *

being_employed .#

employee/ managing .# manager/% B ,(

' #

; &

(

#%

" ,( # TenuredEmployee

#,Employee

TenuredEmployee#

% & # (

being_tenured% "

' (% "

# #

# P P (

%(

(##,(

# Employee#TenuredEmployee#

$%

,( # ( #

% &#

% " (

$

./ ' %

'###

Q !! R%

8// .

W2%J%J W2%J% #

% Manager

Employee#

%

#

'%@ managing#'#

!

manager managed#

%

8// ?

@ " . ?/ "@ " . L/

, # % )

#@ " "@ " x <= 4 x < 3#

A ∪ BB ∩ C% EDEE0($

# # # ,

'%"$

%

" $# ' (

%

$ #

#7)+

.W %1%L/% 7 ) + #

' ( # .

W1%?%L/#%

8//4 ?

+#(($#@+

I #

% 0

# $(#

% '

#

Customer#Product#% "

( < '

I ( % +

; &

# 7 : : Q+ !!JR#

A.A/#;"+A<meta>#

K+A#

%K+A. C@7;

,Q& !!JR: $=C< Q !!JR

#

% (

#

,# #%

8// *5

&

A , + 60 &A Q&33R%

"#%"

%

%

8//2 ,$

" (( . J1/

# . OA OA/

D+

# EDEE% ;# QD !!J# D !!J#

D !! #D !! R#

-D( OA(3 ( 5 %

(%

5 "SELECT'%:9; /(##-D(#SELECTEDEE%

'

8//8 7?

$OA.J1/#

./#

./%

8//- *5 G

) # #

(

% " $ #

%

' ##

(# # '

'I%

8/' 0#

"$ I

# % "

$

' .W2% %J/# '#

.W2% % /%$ .W2%5/%

8/'/ :

@ (# (# (

% "

(

%

%

; &

8/'/' .

" $(#

$ ' '% ) # $;0

''* being_supplierSkyHisupplied

#supplier%)

# Query1 (properly) covering Query4#Query4

(properly) covering Query10# *

'Query10'

coveringQuery10 covered#

coverers coverings# % )I# #

EdeeCovererCoveredCoverer#=

0 . 23 31/% ;#

##%

8/'/ : $ $

" EDEE

% ,

' -D#

%

8/

EDEE0.W2%5%J/

.W2%5% / % .W2%5%5/

EDEE0%

8// < 5

( O(n2) n '

.###'#'(#'(

( / % #

'#'#

P#P./

%)#Query10⊂Query4⊂

Query1 . W5%5%4/

#<covered, coverer>5*

<query10, query4># <query10, query1># <query4, query1>% &

'

n'(n × (n - 1)) ÷ 2# O(n2)

%

" #

%

8//' 5

" #

#(%

&#*

.J/ $.W5%J/

. / . 1/

% '

J!'.W5% /%

.5/ I (

$.WL%J%JWL%J% /%

; &

*5:"E$: $

B$%

-#(#-H+%

" 5

%

Machine Name Operating System Database Java CPU(s) Memory

teme Microsoft Windows

2000 Professional

Microsoft Access

2000

1.3.0 800 Mhz AMD

Athlon

256 MB

citadel Microsoft Windows

XP Professional

Microsoft Access

2002

1.4.0_01 500 Mhz

Pentium III

256 MB

jetset Microsoft Windows

2000

Microsoft Access

2000

1.3.1 500 Mhz

Pentium III

256 MB

All Windows platforms employed Sun’s JDBC-ODBC driver, included with their respective Java distributions.

flute Red Hat Linux 7.2 PostgreSQL 7.2.1 1.4.0_01 1.4 Ghz AMD

Athlon

512 MB

hot-spare-00 (elbe) Red Hat Linux 7.1 PostgreSQL 7.0.3 1.4.0_01 2 x 1.4 Ghz

AMD Athlon

2.5 GB

hot-spare-01 (nidd) Red Hat Linux 7.1 PostgreSQL 7.0.3 1.4.0_01 2 x 1.4 Ghz

AMD Athlon

512 MB

hot-spare-02 (loire) Red Hat Linux 7.2 PostgreSQL 7.2.1 1.4.0_01 2 x 1.4 Ghz

AMD Athlon

882 MB

hot-spare-03 (lyd) Red Hat Linux 7.1 PostgreSQL 7.0.3 1.4.0_01 1.4 Ghz AMD

Athlon

878 MB

gargantubrain Red Hat Linux 7.1

(bastardised); Linux

2.4.9-18smp kernel

PostgreSQL 7.1.3-3 1.4.1beta 4 x 800 Mhz

Intel Itanium

(IA-64)

16 GB

All Unix platforms employed the Postgres JDBC driver that is included with the PostgreSQL 7.1 distribution.

Table 23: Software and hardware specifications of machines used for experiments

" #

-#+'

Double(EdeeNumber#Float

(%

7

B '( # #

#

.W5%5#?/'% B

# #

%"I*

J% 1![ # 1![

%

#being_obliged1##prohibiting1#W?% %J%"

# 8to (some occurrence) (some amount) to (some participant):

8to pay $25,000 to Steelmans:% #

8against (more-than/less-than) (some amount) (some role) to (some role):#

8against more-than $10,000 paid to a supplier:%@

.# 1[ /

=(0#

(',

'%

% ![ .

being_supplier paying W5%J/# ![ 4 #

![ 4# ![

4 # ![

%

5% .%% occurrence_type-er

occurrence_type-ed#suppli-er#suppli-ed/#

.%% occurrence_type-er# occurrence_type-ee# occurrence_type-ent# pay-er# pay-ee#

paym-ent/%

4% ![ .

SkyHiSteelmans W5%J/# ![ 4#

; &

![ 4 #

![ 4# ![

%

1% 1![ 'more-than1![less-

than%

?% .amounts/#!

J#!!!#!!!%

" #

##

%

%"

.Seed A = 1029353288745/#

citadel jetset .Seed B =

1029273107527/%

) ?" 4 '

Seed A%# '

% " '

.n/I#n2#

.W2%5%J/%

50

150

250

350

450 1

151

3010

1,000

2,000

3,000

4,000

5,000

6,000

Unique Identifiers In Database

OccurrencesProvisions

5,000-6,000

4,000-5,000

3,000-4,000

2,000-3,000

1,000-2,000

0-1,000

Figure 26: Number of unique identifiers (n), as number of provisions and occurrences vary

50 100 150 200 250 300 350 400 450 5001 190 302 418 538 663 794 907 1,029 1,141 1,263

51 876 982 1,098 1,218 1,343 1,474 1,587 1,709 1,821 1,943101 1,508 1,612 1,723 1,843 1,968 2,099 2,212 2,334 2,446 2,568151 2,200 2,304 2,403 2,506 2,631 2,762 2,875 2,997 3,109 3,231201 2,869 2,973 3,072 3,167 3,287 3,418 3,531 3,653 3,765 3,887251 3,559 3,663 3,762 3,857 3,970 4,085 4,198 4,320 4,432 4,554301 4,195 4,299 4,398 4,493 4,606 4,716 4,822 4,944 5,056 5,178351 4,855 4,959 5,058 5,153 5,266 5,376 5,482 5,602 5,713 5,835

Number of Occurrences

Num

ber o

f P

rovi

sion

s

Table 24: Number of unique identifiers (n), as number of provisions and occurrences vary

; &

&# #

' $ % " (

$ (I* (I J# ($

# (I 1!# ($

1!.WL%J%JWL%J% /%

$

&#*

"

J% $ ($ % ) L

" 1

% " ( ) L

W2%5%J%)

2 " ? %

(I J%

% $($#%) 3

." L/ #

#(#teme%)5!.

" L" 2/

1J#(IJ(I1!%)

5J." 3/#

#(#teme%)5 .

" 3 " 5!/

1J#(IJ(I

1!%

5% ($#

EdeeCoverer%)55"5J

I # Seed A% ) 54

" 5 I #

%

4% ($ #

EdeeCoverer % ) 51 " 55

I #

Seed A%7#

('

'.W2%5%J#) ? J/%

"#I(($

+ * !% 1+D

#!%1+D J! J! # 31+D 51J

!!%

1% % )

5?#Seed A#

%)5L.

" 54 " 51/ #

(I J (I 1!% ) ) 5L# 1J

#%

; &

flute: y = 129.79x4 - 574.09x3 + 1070x2 - 86.167x - 684.8

hot-spare-02: y = 127.24x4 - 580.81x3 + 1115.2x2 - 677.94x - 39.169

jetset: y = 43.4x4 - 69.753x3 + 1405.5x2 - 4630x + 3532.6

citadel: y = 18.976x4 + 314.5x3 - 847.29x2 + 446.03x + 177.58

teme: y = 6.4935x4 + 190.5x3 - 475.14x2 + 574.63x - 287

-50

0

50

100

150

200

250

300

350

1 51 101 151 201 251 301 351

Thousands

Number of Provisions

Tota

l Tim

e in

Sec

onds

teme

citadel

jetset

flute

hot-spare-02

flute (trend)

hot-spare-02 (trend)

jetset (trend)

citadel (trend)

teme (trend)

Figure 27: Total time, in seconds, to insert and coverage-check provisions,

for best performing installations, with trend-lines fitted

teme citadel jetset flute hot-spare-00 hot-spare-01 hot-spare-02 hot-spare-03 gargantubrain1 2.5 4.1 2.8 2.3 1.8 1.8 1.0 2.0 2.5

51 613.0 794.3 768.7 493.2 1,072.3 1,053.3 251.7 1,066.7 5,978.7101 2,806.4 3,872.1 3,885.1 3,792.3 38,436.2 38,275.1 2,712.9 38,402.6 235,319.5151 8,275.3 12,908.7 13,042.7 13,159.4 330,584.8 328,217.0 10,946.2 328,737.1201 18,546.9 32,606.8 33,748.6 34,852.2 30,414.0251 35,681.3 65,416.0 69,879.0 80,641.8 76,281.1301 61,343.2 114,650.3 118,250.7 166,717.8 155,840.9351 98,047.5 188,430.7 199,033.4 304,569.4 289,757.6

Num

ber

of

Pro

visi

ons

Machine Name

Blank cells appear because tests on poorly-performing configurations were manually terminated at an early stage.

Table 25: Total time, in seconds, to insert and coverage-check provisions,

comparing various installations

0

500

1000

1500

2000

2500

1 51 101 151 201 251 301 351

Provisions

Ave

rage

Tim

e in

Sec

onds

Per

P

rovi

sion

teme

citadel

jetset

flute

hot-spare-00

hot-spare-01

hot-spare-02

hot-spare-03

gargantubrain

Figure 28: Average time, in seconds per provision, to insert and coverage-check provisions,

comparing various installations

teme citadel jetset flute hot-spare-00 hot-spare-01 hot-spare-02 hot-spare-03 gargantubrain1 2.5 4.1 2.8 2.3 1.8 1.8 1.0 2.0 2.5

51 12.0 15.6 15.1 9.7 21.0 20.7 4.9 20.9 117.2101 27.8 38.3 38.5 37.5 380.6 379.0 26.9 380.2 2329.9151 54.8 85.5 86.4 87.1 2189.3 2173.6 72.5 2177.1201 92.3 162.2 167.9 173.4 151.3251 142.2 260.6 278.4 321.3 303.9301 203.8 380.9 392.9 553.9 517.7351 279.3 536.8 567.0 867.7 825.5

Num

ber o

f P

rovi

sion

s

Machine Name

Blank cells appear because tests on poorly-performing configurations were manually terminated at an early stage.

Table 26: Average time, in seconds per provision, to insert and coverage-check provisions,

comparing various installations

; &

50 100 150 200 250 300 350 400 450 5001

151

301

0

10

20

30

40

50

60

70

Total Time in Seconds

Thousands

Occurrences

Provisions

60-70

50-60

40-50

30-40

20-30

10-20

0-10

Figure 29: Total time, in seconds, to insert and coverage-check occurrences,

on machine teme, for a varying number of stored provisions, and batch-size = 1

0

5

10

15

20

25

30

35

40

50 100 150 200 250 300 350 400 450 500

Thousands

Occurrences

Tota

l Tim

e in

Sec

onds

Batch Size 1

Batch Size 50

Figure 30: Total time, in seconds, to insert and coverage-check occurrences,

on machine teme, for 251 stored provisions, and different batch-sizes

50 100 150 200 250 300 350 400 450 5001 20 37 54 74 94 117 140 164 193 219

51 232 389 587 863 1,092 1,339 1,579 1,793 2,113 2,412101 659 1,108 1,626 2,411 3,051 3,736 4,405 4,990 5,884 6,715151 1,522 2,527 3,407 4,748 6,082 7,536 8,866 10,118 11,955 13,591201 2,771 4,574 6,086 8,152 10,155 12,694 14,941 17,164 20,370 23,181251 4,343 7,207 9,618 12,788 15,686 18,609 22,032 25,313 30,233 34,459301 6,124 10,104 13,624 18,227 22,478 26,472 31,031 35,621 42,797 48,932351 8,577 14,463 19,382 25,860 31,956 37,627 43,884 49,989 59,647 68,285

Number of Occurrences

Num

ber

of

Pro

visi

ons

Table 27: Total time, in seconds, to insert and coverage-check occurrences,

on machine teme, for batch-size = 1

" L" 2)5!%

50 100 150 200 250 300 350 400 450 5001 5 20 31 45 61 78 95 111 131 154

51 10 244 401 598 865 1,100 1,344 1,564 1,777 2,097101 12 664 1,119 1,671 2,486 3,197 3,932 4,582 5,206 6,076151 14 1,527 2,497 3,382 4,689 6,023 7,474 8,714 9,986 11,712201 16 2,789 4,556 6,116 8,104 10,149 12,682 14,794 17,028 20,061251 19 4,324 6,935 9,379 12,410 15,300 18,301 21,387 24,615 29,331

Number of Occurrences

Num

ber

of

Pro

visi

ons

Table 28: Total time, in seconds, to insert and coverage-check occurrences,

on machine teme, for batch-size = 50

; &

50

150

250

350

450 1

2010

20

40

60

80

100

120

140

160

180

Average Time in Seconds Per Occurrence

Occurrences

Provisions

160.0-180.0

140.0-160.0

120.0-140.0

100.0-120.0

80.0-100.0

60.0-80.0

40.0-60.0

20.0-40.0

0.0-20.0

Figure 31: Average time, in seconds per occurrence, to insert and coverage-check

occurrences, on machine teme, for a varying number of stored provisions, and batch-size = 1

0

10

20

30

40

50

60

70

80

90

100

50 100 150 200 250 300 350 400 450 500

Occurrences

Ave

rage

Tim

e in

Sec

onds

Per

Occ

urre

nce

Batch Size 1

Batch Size 50

Figure 32: Average time, in seconds per occurrence, to insert and coverage-check

occurrences, on machine teme, with 251 stored provisions, and varying batch-sizes

50 100 150 200 250 300 350 400 450 5001 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.4

51 4.6 3.9 3.9 4.3 4.4 4.5 4.5 4.5 4.7 4.8101 13.2 11.1 10.8 12.1 12.2 12.5 12.6 12.5 13.1 13.4151 30.4 25.3 22.7 23.7 24.3 25.1 25.3 25.3 26.6 27.2201 55.4 45.7 40.6 40.8 40.6 42.3 42.7 42.9 45.3 46.4251 86.9 72.1 64.1 63.9 62.7 62.0 62.9 63.3 67.2 68.9301 122.5 101.0 90.8 91.1 89.9 88.2 88.7 89.1 95.1 97.9351 171.5 144.6 129.2 129.3 127.8 125.4 125.4 125.0 132.5 136.6

Number of Occurrences

Num

ber

of

Pro

visi

ons

Table 29: Average time, in seconds per occurrence, to insert and coverage-check

occurrences, on machine teme, for batch-size = 1

" 3"5!)5 %

50 100 150 200 250 300 350 400 450 5001 0.1 0.2 0.2 0.2 0.2 0.3 0.3 0.3 0.3 0.3

51 0.2 2.4 2.7 3.0 3.5 3.7 3.8 3.9 3.9 4.2101 0.2 6.6 7.5 8.4 9.9 10.7 11.2 11.5 11.6 12.2151 0.3 15.3 16.6 16.9 18.8 20.1 21.4 21.8 22.2 23.4201 0.3 27.9 30.4 30.6 32.4 33.8 36.2 37.0 37.8 40.1251 0.4 43.2 46.2 46.9 49.6 51.0 52.3 53.5 54.7 58.7

Number of Occurrences

Num

ber o

f P

rovi

sion

s

Table 30: Average time, in seconds per occurrence, to insert and coverage-check

occurrences, on machine teme, for batch-size = 50

; &

0

20

40

60

80

100

120

140

160

1 51 101 151 201 251 301 351

Thousands

Provisions

Tota

l Row

s In

Ede

eCov

erer

Figure 33: Total space for provisions, in rows of EdeeCoverer table

(theoretical limit = n2 where n = number of unique identifiers in database)

Total Space1 7

51 2,972101 12,572151 28,031201 49,007251 75,563301 107,949351 146,659

Num

ber o

f P

rovi

sion

s

Table 31: Total space for provisions, in rows of EdeeCoverer table

0

50

100

150

200

250

300

350

400

450

1 51 101 151 201 251 301 351

Provisions

Ave

rage

Row

s In

Ede

eCov

erer

Per

P

rovi

sion

Figure 34: Average space for provisions, in rows of EdeeCoverer table

(theoretical limit = n where n = number of unique identifiers in database)

Average Space Per Provision

1 751 58

101 124151 186201 244251 301301 359351 418

Num

ber o

f P

rovi

sion

s

Table 32: Average space for provisions, in rows of EdeeCoverer table

; &

50 100 150 200 250 300 350 400 450 5001

151

301

0

5

10

15

20

25

30

35

40

45

Total Rows in EdeeCoverer

Thousands

Occurrences

Provisions

40-45

35-40

30-35

25-30

20-25

15-20

10-15

5-10

0-5

Figure 35: Total space for occurrences, in rows of EdeeCoverer table,

for varying numbers of provisions

(theoretical limit = n2 where n = number of unique identifiers in database)

50 100 150 200 250 300 350 400 450 5001 26 33 45 64 75 90 101 120 147 167

51 687 1,183 1,717 2,423 2,972 3,544 4,115 4,595 5,308 5,921101 1,433 2,620 3,699 5,272 6,500 7,766 8,990 10,053 11,514 12,816151 2,331 4,326 5,578 7,325 9,036 10,832 12,559 14,109 16,217 18,043201 3,276 6,276 7,911 10,050 12,075 14,488 16,721 18,811 21,637 24,010251 4,150 7,913 10,200 12,781 15,051 17,390 20,169 22,708 26,174 29,030301 5,125 9,873 12,699 15,753 18,570 21,279 24,316 27,326 31,387 34,727351 6,502 12,969 16,325 19,925 23,451 26,780 30,351 33,838 38,556 42,486

Number of Occurrences

Num

ber o

f P

rovi

sion

s

Table 33: Total space for occurrences, in rows of EdeeCoverer table,

for varying numbers of provisions

5010

015

020

025

030

035

040

045

0

500

1

151

3010

50

100

150

200

250

300

Total Conflicts Detected

Occurrences

Provisions

250-300

200-250

150-200

100-150

50-100

0-50

Figure 36: Total conflicts detected between individual prohibitions and obligations, for

varying numbers of provisions and occurrences

0

20

40

60

80

100

120

140

160

50 100 150 200 250 300 350 400 450 500

Occurrences

Tota

l Con

flict

s D

etec

ted

Batch Size 1

Batch Size 50

Figure 37: Total conflicts detected between individual prohibitions and obligations,

for 251 stored provisions, comparing different batch-sizes

; &

50 100 150 200 250 300 350 400 450 5001 0 0 0 0 0 0 0 0 0 0

51 1 4 5 5 5 5 5 5 5 5101 3 12 15 16 17 17 18 22 22 22151 12 31 39 42 44 45 50 56 57 57201 21 60 70 79 84 87 94 103 108 108251 27 73 91 102 109 115 127 136 143 143301 37 94 119 132 143 152 167 176 185 185351 57 151 179 197 217 231 250 264 273 274

Number of Occurrences

Num

ber o

f P

rovi

sion

s

Table 34: Total conflicts detected between individual prohibitions and obligations,

for batch-size = 1

"54"51)5L%

50 100 150 200 250 300 350 400 450 5001 0 0 0 0 0 0 0 0 0 0

51 0 1 4 4 4 4 4 4 4 4101 0 3 12 16 16 17 17 18 22 22151 0 11 27 36 38 40 41 46 52 53201 0 22 60 75 78 83 86 93 102 107251 0 28 73 97 102 109 115 127 136 143

Num

ber o

f P

rovi

sion

s

Number of Occurrences

Table 35: Total conflicts detected between individual prohibitions and obligations,

for batch-size = 50

#

# , (

%)5?EDEE

(%

#teme#$ 2!.

1/ ($ #

51J%#$ J5?.,

/ $#51J1!!

% ) ( # $

%

#)5!.# #)5 /

I# .)5L/#

($ %

) LB

+ A #

A

%&) L

(

% # 0 top #

.33[

I/#!%1[I%

)# # .postmaster/

32[ #-. [/

#%

B(

(#($#

(# $

(%

; &

8//

EDEE0

# EDEE0 $

%

EDEE

.W %J/ ( % "

?!! ?

@+ Q)-A !!JR%

# EDEE#

%

.W % /#

%

& # + ($P

D$&(@QA !!!R

P$'J!!!.'/%

+#'

,'%

$ #

% " . ?/ 7

+$ N D $% &A6

J!Q&A6 !!JR%

.=+0 $/# .=BI0/#

.=B0/# (

.=@0/QD6A+3JR%"=+0$

2 # =BI0 $ 55 % "

$#=B0#J25J?5L<

$ (5,JJ.@JV

4%!%5# 1 J%!3 /%

#

,(

$# $ % )

$#,((

'.W % %5#W2%J%4/%&#

#

% B

#

.W2%5% /%

$ # %

A ($ QDABB31# A22R (7(

#$Q33#+ !!JR

$ .%% 5/%

$

# %

& # % . # JL /#

# .

W % #WL%5/I

1!! %%

B

$ % B

$

% B

( #

# (.W2%5% /%

; &

8/ 30 #

" $

%&#

.W2%4%J/% )$

P .W2%4% /

$ .W2%4%5/ P

.W2%4%4W2%4%1/%

8/ / .

$ $ (

#

%

& $

. W2% %5/#

%

+ '

. W2%5%J/# (# %

'

<

'$##

% " ( # (

%B

%

8/ /' ?

B # #

# $ . 5/

. 1/% & # #

'

$

( ($

$%

% " EDEE

% ;#

(

%

8/ /

EDEE

% "

%D$*

(

% ) # 8user privileges may change:#

8may: authorizing% I

P

authorized % "

#%

#

P

%)

#8upon confirmation of registration, members will be able to log-in to a member’s

area of the site: 8confirmation:

confirming .%%

8confirmation by a customer services representative:/%

; &

& # '

%"

%##

'

#

%

8/ / ,

" I $

I %

#

# I

I

%

%7

##(

%

8/ /4

"

%(

#

% &

##%

!&

8/4 :

" I $

%

B' .W2%J/.W2% /%&#

.W2%5/%&

# #

#(%

$ .W2%4/# %

& #

<

I % B

(

(#$%

" %

-

"

"

$%&

$##

# # % " $

(

. /%&*

-/

!

".W %J/(.W %5/#

(.W %J% #W %J%5#W %5%J/% $.strings#

integers#dates/%

B # #

' .W5%J/%

5

= FF C0%

</

.W5% /

%EDEE

./ '#

.W5%5/

'%

-/'

!

&

.W %5/

.W %1/#

'I.W %5%5/%

"'$

% "

# .W4%J(W4%?/

$

# #

' %

'##

$%

-/

6 6$4!

$ .W %4/ $ $( .W %4%J/

.W %4% /%#=0

.W %1/

% ( .W %5/

( < <

< (

.W %5%4/% .W %?/#

.W %5%4#

W %?%4/%

E0 ' " .W %J%J/# $

% B E0

* ( .W5%J/<

I./#

.W1%J%J/< allocatingSake(… )

.W5%J# W1%?%J/<

.W1%?% /<

.W1%4/<;0 # # #

.W1%1#W1%5% /<=0

= 0 .W1%?%J# W1%?% /< # #

#

.W1%?%5/%

$ , .W1% /# .W1%5/#

.W1%4/#.W1%1/#.W1%?/%(

.W1%1%J#W1%1% /%

</

((((.W1%?%?/%B

.W1%?%1/.W1%?% /#(((

.W1%?%4#W1%?%3/#,.W1%?%2/.W1%?%L/%

-/

!

& # #

%7%@(

.W % /#(.W % % /%

.W % %5/ (

.W % %4/%.W %5/

.W %5%1/%.W %?/

# ( .W %?% /#

=0 .W %?%J/ #

#.W %?%1/%

B(

0*##

.W1%?%3/% - 5 $

.W5%5#W?% /%

.W?%5/#

< # ( .W?%4/% "

$ .

(/

.W?%J/'%

-/4

2!

'

.W5%5/

# .-

/% @

( % B

P.WL%J%J/

.WL%J% / P P

.WL% %J/# .WL% % /#

.WL% %5/% " > #

EDEE .WL%5/% " ((( ((

$ # $#

%

-/ :

'

I* # # '#

% @'<

%

B # #

'

%

.WJ% /*

</

# # #

%#

D+##'#I%"

$* $

%AD+

# # % D

##

<$

% #'#

' (# $% )

(($ ' #

%

(# (

I % &

$#

% " # #

I

'%"

<

##

% "

( % " $

( #

(###

((((%

5

9:

" '.W5% /%

" 5? I ' # # % "

,'%

Name Examples Syntax in EDEEQL grammar33

Algebraic, Alphabetic, and Date Queries Greater than, Less than, Equal to < 10 < ‘Jeff’ < 10 Nov 2001

> 10 > ‘Jeff’ > 10 Nov 2001 = 10 = ‘Jeff’ = 10 Nov 2001

< (less-than) > (greater-than) = (equal-to)

Set-Theoretic Queries Concept Identification = Steelmans = (identified-concept) Union Q1 ∪ … ∪ Qn (uniand) UNION (uniand) UNION … (uniand)

Intersection Q1 ∩ … ∩ Qn (intersectand) INTERSECTION (intersectand) INTERSECTION … (intersectand)

Difference Q1 – Q2 or Q1 but not Q2

(differor) – (differand) or (differor) BUT_NOT (differand)

Empty Set ∅ EMPTY_SET

Universal Set U UNIVERSE Not / Complement (U - A1) UNIVERSE – (differand)

Triplet Queries Participant Query participants in role payer in

paying1 PARTICIPANTS IN ROLE (role) IN (occurrence)

Occurrence Query

occurrences of paying where $25,000 is paid

OCCURRENCES OF (type) WHERE (participant) IS/ARE (role)

Role Query roles of Steelmans in paying1 ROLES (participant) IN (occurrence)

Ordinal Queries Item in Position

1st of [occurrences of paying where $25,000 is paid] in ascending temporal order

(position) OF (set) IN ASCENDING / DESCENDING (sequence) ORDER

Inbuilt and User-Defined Operations Various count(occurrences of paying where $25,000 is paid),

max-possible-results(first of occurrences of paying), average(…), sum(…), min(…), max(…), …

(operation-name) (set)

Table 36: Types of query 55CriterionTypes $# CAPITALS%<#>#=# – %''$=[ … ]0%

1&!

7#'$'#"

OQUERYIDS OCCURRENCES#

CRITERIONTYPE ROLE#VALUES PARTICIPANTS%"#

) )5.21/#'QueryID-CriterionType-

ValueOccurrence-Role-Participant%

/ 9

" '* '# #

% " '

"5L# '=U?% 0#=]L0#

=_30 . '/% query901# query902#

query903'54%

QueryID CriterionType Value

query901 equal-to 6.2 (n1)35

query902 less-than 7 (n2)

query903 greater-than 9 (n3)

Table 37: Representation of basic algebraic queries:

equality, strictly less than, and strictly greater than

O = '0# = '0# =0 .

/#

' ('

%)='0

'''#=0'

'

'%

54#'3!!0#''%

51#(#EdeeNumber .31/% ) <# *%%n1#n2#n3n1=6.2#n2=7#n3=9%

1

/' 9

' '#

'

%" '

" 52 # ' =UD0# =]7$0# =_0

. '/%

QueryID CriterionType Value

query904 equal-to ‘Brian’ (s4)36

query905 less-than ‘Niki’ (s5)

query906 greater-than ‘Peter’ (s6)

Table 38: Representation of basic alphabetic queries:

equality, strictly less than, and strictly greater than

' .WJ%J/# '

('%

/ :?< 9

(' # # # # #

###./%

' '

%"./'

=0% "

'"53*

5?#(#EdeeSymbol.31/%)<#*%%s4#s5#s6s4=‘Brian’#s5=‘Niki’#s6=‘Peter’%

1&!

QueryID CriterionType Value

uniand query601

uniand query602

query907

… …

Table 39: Representation of a union query

. &' '

% " ./

'=0%"

'

"4!*

QueryID CriterionType Value

intersectand query601

intersectand query602

query908

… …

Table 40: Representation of an intersection query

, '' .%%

/ ' % "

./ '

=0 =0% "

'"4J*

QueryID CriterionType Value

differor query601 query909

differand query602

Table 41: Representation of a difference query

! 1

: '%

"

%

*: ' % "

%

. 'c1

c1 #

%&'

'

'%"

'"4 *

QueryID CriterionType Value

query910 identified-concept c1

Table 42: Representation of an identification query that returns c1 if c1 is in the database

> .=0/'

%

./'

% ' $

# <

'

% "

"45*

QueryID CriterionType Value

query911 counted query601

Table 43: Representation of a query that counts the results of another query.

1&!

/ 1?9

(''

# # % (

'$((<

. /

%" ('*

1

<

(

% "44

%

QueryID CriterionType Value

query1 type paying

occurrence query1

participant query2

query4

role query3

Table 44: Representation of an occurrence query

6# =0' $ $

"41*

Occurrence Role Participant

[match role criterion] [match participant criterion]

Table 45: A graphical representation of the ‘search window’ used to

resolve an occurrence query

$1

"4?<

(

%

QueryID CriterionType Value

occurrence query5 query7

role query6

Table 46: Representation of a participant query

6# =0 ' $ $

"4L*

Occurrence Role Participant

[match occurrence criterion] [match role criterion]

Table 47: A graphical representation of the ‘search window’ used to

resolve a participant query

"42<(

%

QueryID CriterionType Value

participant query912 query914

occurrence query913

Table 48: Representation of a role query

6# = 0 ' $ $

"43*

1&!

Occurrence Role Participant

[match occurrence criterion] [match participant criterion]

Table 49: A graphical representation of the ‘search window’ used to resolve a role query

/4 19

'

'# '% &

."1!/##$#

'./<

%&./###$

#'<%

QueryID CriterionType Value

position 1

set query914

direction ascending

query915

sequence temporal

Table 50: Representation of an ordinal item-in-position query

/ >9

O % 7 '

' % (

'#(#''

%"(#(

#''%

()

/2 <*

not#and#or#any-K .%%

F K/# all# none% "

(

%@#(

#(

5L% "

$ .%% (($ =0 /% "

' < %%

(''

% " 1J

(#(%

5L) # P # (.%%paying1/P%

1&!

Example Condition

Set-Theoretic, Occurrence-Centric Evaluation (Implemented using the Occurrence-Centric Queries and Cardinality Queries defined earlier)

8: @ 8 = 0 :% & '##%

8 52 :

& 8 = 0 : I.%%/##%

8 :

@8= 0:8= 0:% % & I .%% I I /# #%7.%%I/%

8 :

&8=0:8=0:##%

8 any two or more

of39* #

# :

8 . . = 0=0= 0// : ## # .%% /% " *8./ :#8=0:8=0:8= 0 :% # .%%/<$.8any two or more of%%%:/%7(#./ < 8./././:*

- k#=any-k of0#

- $=any X of*C0X(%

all/none *C

any-k# k (.all/I.none/%

Table 51: Evaluating truth conditions in a set-theoretic, occurrence-centric manner

52 B Courier font .%% not# and# or# any-k# %/ %

537#any-k( ('#=any k or more0=any k or less0%

5'

#

"

'% " ' *

' # # # # ,

#'%"(

##

'# %

,(%

%)

'/ $

O # # #, #

'%"*

• '## . /'#D#

'D

. = 0/ ' % "

'D(

% #

D

%" ! !

%"=0'

%'OJ'O #

OJ O

QA !!!R% O P D$#

&(@#+P

#'I#QA !!!R%

# '

%

• '##

'# '%

# #'

(%)# $#

- -# # ' 8 #: .

(/8 A A:%

'## '#D# ./

' D

. ' / J ./

' D% " '#

# (

7

'% "('%

@ %5% 22

'%

• '##'#D#

' .

'/ J 'D%#

(

D%

• '##F '#D#

'

'D%

• '## '#D#

''D#

'D#

' ' D #

'D%

B./

%

'# # # '

'%)''#

? ! '

' ' % # #

' .W1%5/#

'#

##

.WL%J%J/%

%)

'/' ,$

*$&$& 8# '. /'

.universe/%

*$&$&$ 'type%

*$&$&" ' '

.%% ' /%

& (

#'

'

%

*$&$&8 ' . / '

' uniands%

*$&$&= "# ' '

'%

*$&$&D #'O

'CovererEdeeCoverer

.23#31# J?/OCovered%

*$&$&A ' '

intersectands '< # '

intersectands '%

*$&$&E *'(' equal-to

'<('#less-

than < # (

' greater-than %

'%

4!"'CriterionTypesJ%

#7)&

*$&$&! '('#O#*'('#

equal-to ' equal-to O<

(' less-than

equal-to O<#('

greater-than equal-to O%

('#O# ('

less-than less-than O%

('#O#(

' greater-than greater-than

O%'%

*$&$& # .# # / (

' identified-concept

(#(#(%

(#

being-identical

%('

('# identified-concept

'((

being-identical%

*$&$& (''

identified-concept%

*$&$& $ 'differor%%%payments but

not large paymentspayments%

*$&$& " ' 'intersectand

% %% full payments intersection large payments intersection late payments

full payments#large payments#late payments%

%)

*$&$& 8 '#O#'##

0intersectands O0intersectands%%%full

payments intersection large payments intersection late payments full

payments intersection large payments full payments intersection late payments

large payments intersection late payments%

*$&$& = ' '

uniands '%

*$&$& D '# O# '# # 0

occurrenceO0occurrence#0 role

O0 role % '#

'%

*$&$& A 'occurrence%

*$&$& E .'/ ' set % %% 1st

[persons] in descending height orderpersons%

*$&$& ! # # .%% /

# Ω# Ω.Ω(J.//# Ω(J

Ω% ) # - .

( / symbolsStartingWith()

. /

% " firstLetterOf()

4J% ## (

$=Brian0%B##

./ firstLetterOf() #

# ./

symbolsStartingWith()%

4J7#symbolsStartingWith() # - # % & # # firstLetterOf()# # - % & # (#%&#%%

#7&&

firstLetterOf() =Brian0 =B0% B $

symbolsStartingWith() $

=B0#./=Brian0%

"##firstLetterOf()#

=Brian0 symbolsStartingWith(`B’)% "

.

/

% )# #

%

7 (

'( ' % O

is-covered-by.%%is-a-subset-of/#

covers.%%is-a-superset-of/%

'/ ,$

*$&"& '#O#' '#O#

differor%

*$&"&$ '# O# ' '# O#

occurrence#role#participant%

*$&"&" '#O#''#O#

intersectand%

%)

*$&"&8 '(

set%&(

*

(

#%

# %

(*((last_average

x last_count)+total_of_new_values)÷(last_count+number_of_new_values)%

'/ ,$

'differandsP#differand

#'

differand % # differand

' # .%% $

/ '#%

"

'%"'

'P%%'%

&

&

( .%&'((()# %&'(()# %&'(()# %&'(()# %&'(()#

%&'((')# %&'((')# %*&'((')# %*&'((')# %*&'((')# %+'((')#

%,--)/ %

%,-2) -#A(6# % 11%

%#E%J33L%

%=70-2) D#6(+;#B -%""@&@

+ % ) - 0,9.+

,- +% % J4L(J12% "# S%

+J33L%

%+-) @ E-;% O6 )

A )% & + @

E - ./* + 0 ) 8 (

4 - + 2(4-.+ 83% % J23( !5% #

E%-5(1#J33?%

%-4) -% 41>% % D,%

+$#%J331%

%48) @% @ A + A%

?L%%J!!(J!5%J312%

%') @%A#7#@%*%4.5?/%%5?(43%J3? %

%<='(() "6%http://www.atg.com/% !!J%

%2) -A%%555% %%

J3L?%

%&8) D % " % 1)% 3% % 1(J?%

J32?%

&

%&&E-2) D -# D -# ; % A % ,777

)-%4.1/%%42(1L%J33L%

%&&E7-4) D -# D -# ; @# + E%

%)$,'0

+ 457%B#D%%J42(J11%J331%

%&,;<'((() D @B;#)# A @+# " Z(;% )

"% ,:

7-%1.J/%) !!!%

%&*'(() D BA%http://www.bea.com/products/weblogic/server/index.shtml% !!J%

%&88) D-% 74% % #E%

J322%

%&3--) D #) #H%"

I B$ + % -

,00% .J/% %?1(J!4% )

J333%

%&3;-) DI +# ) -# A -% I " +%

),777-0)%$#%J33?%

%&=;7-) D#6"#AD#+$% I

@ * ) % ) A

,-<1+(%J33J%

*http://www.cs.utexas.edu/ftp/pub/ops5-benchmark-suite/HOW.TO.USE%

%&E&-) D-#;#D-% )$+

+ % - 45 4

24.+3%J.4/%%4!3(4J3%J33?%

%&E77'(() D-#;#+#+E#ZB %

) +6% ! , ' ) . /

0 + , > 2).0!3% A# 7%

!!!%A7 J51%% ?1P 2J%

(H%D#6% !!J%

&

%&E77'((') D-#;#+#+E#I%D

+% 05 ) 7% -

B N%"%

%&A0--) D # -GIG' -(+# I 7# B$ % +$

%,777-%%52(41%-J333%

%&'((() DI%DI"B%

*http://www.blazesoft.com/products/docrequest.html

*J+ !!!%

%&'(() DI +% > 4 0% + !!J%

http://www.crypto.com/trustmgt/kn.html%

%&;7'(() D-# A+# +E% " (

%&QAA !!JR%%J!LPJJ3%

%&;00-4) D@B;#A@+#B@B # B% +&(

I"7%)

%5,-00%J331%

%&7-) D+$%&@%)

!!" - 0,9.+ , - +%

%4 P42%J335%

%&7&E'((() D-# +E# D-# ;@# + # +7 # #

+% 6 %,777-%

55.5/%%?2PLL%+ !!!%

%& -) D +% B * " A

%&D+-./*+1

40B) ,'

+1,-02+7.4;!D3% #% %

J33?%

%& '((() D+%

"%4:)%1. /%%25(JJ % !!!%

%& '(() D$"6%') (% !!J%

http://www.brokat.com/cgi-bin/wpnav.cgi

&

%&:'(() D@#AA%(*0*0(*0*%

!!J% * http://www.brsolutions.com/rulespeak_download,

ruletrack.shtml

%&:E&-8) D -# +# ; # D -% & @(B

(+%)

,777 ' 7 - 7

2'7;,-7 !!E3 ' - ) %

#%-J332%

%&-4) D-)+@@%A@(K*,+

A% , ) $ , - (

0 < 10 5 ( 2(@0;!=3% # "

7%J331%

%'(() 6%"A& (*B

Y,-,

7(07,2009**$## 3%A0'#

&%&D7*22(21 2!(?J(L% !!J%

%-4) A)%7+@%

)6,-,15

2,-,1;!=3%B#%% !J( !3%+J331%

%-8) A)%@

0% & $$ ; +7 ./* 4 1

, 0B 45 0 + 1 - 0%

%&%% 4L( ?4%J332%

%:- ) # "# "% 7*

,( % $#

,- <1+ % #%

J334%

%:-2) A# )# % " I

% ) 0 , -

, 15% +#% +% % 55( 4 %

J33L%

&

%,,3-8) #7 #I#)# H6% +7*)B

9+ 7 *)&"@%

)@& AP+%+J332%

%,7'(() -#$-#+S#@E%

4-* %&QAA !!JR%

%J(JL%

%,>3'(() 6# 7 # ) % " - & (

B)+%

,777057% L.3/% % 2 L(21!%

!!J%

%,<0'((() -#B #")#BZ%7O*

O&%)$###-0,9.+

,- +% #"K% %5L3(53!%

+ !!!%

%8() D)%AA%D)%

1B,%%%J3!( !5# ?2(

LL%J32!%

%=8-) 76%A%-- %

5 .4/%%444(412%J323%

%.,*-4) - , + 7% %

J331%

%++-) $#EH# #E(E%

% * >6-,0*!"#"!%

&#)%

6#)A%J335%

%;'(() $ - A -% + ;(D % &

QAA !!JR%%J!LPJJ3%

%;>'((() $ -# A -# 7' % A

@ +%) A,

- ) 5 * * 2*;$###3%

D$#%+E%%J J(J5 % !!!%

&!"#

%;M'((() 6#AA#S)% +(+

&%,777-%%2 (23%) !!!%

%7- ) $+% *

A % + 5 7& J4.J/%

7J334%

%7- ) $B)+%))%4 %(

H%D#6%J334%

%'((() - % A + D

&% ,- , 7

(07 ,2009**$###3% A0'#&#

&D722(21 2!(1 (2%-( !!!%

%'((() % 1B , 0)%

%#E%J?#%55J(54?% !!!%

%0-8) I#@# BA%

7 * & % * ->-0

ED"!E% # %

D#%J332%

%:--) +B# 6# @@%

AD+D 7+

&%1)%J333%

%<-) $ D " % * 00B +1

(5K*';K0';%B$75%

" & %

;%J33?%

%<-) $D"%*00B1(5*

+-%B$71%"

&%;%J33?%

%<H-8) #"$@#H)#@#E%

+( BBB*@% ,777

057% 4.1/%%5? (5L1%+J332%

$%&

%,'((') 7%)65+ 0%

"% # & #

A% !! %

%70-) 0 # + --# B @-% $

(( (( % ,15% 4%

%LL(JJJ%J33?%)( -J332%

%,-2) $%A("A*

% ) 10%

%% J5( %J33L%

%,-8) $% A +A% 15

,0B=,-,1+

2,+93,4*-%)#&%J332%

%,--) $ % 1( * 1

-% "% # & #

A%J333%

%,'((() $%+A%+7L'

1,021,0$##3%6%

!!!%

%,'((() -% ' 4 %5B ( *

+%(B%@#+% !!!%

%,8() %77%#%J32!%

%,-) "%101%1%"%

#A%%JL(?3%J33?%

%,&'(() $"D-%")$+"

(% ) 6 , - 7

- *% H % # "K% "+# &)&# &7)@+%

%5?!(52J% !!J%

%,,+;'(() #+#E@#A"#7"7#)7#+B#

$ ;;% D(( +A

(($%,(0:%4!.J/% !!J%

&

%,,;:'(() 7# 7# A # 7% "

A%&QAA !!JR%%J2(52%

%,,7'(() $#$"#+" % ()

0% )7*-,'97-'

*7(%S% !!J%

%,'((() % *7

( % ' 4

,08,-

02$###3%D#%- !!!%

%,3=='((() E@#);#6I#6#H%+

;* D ,( D+%

* $###&#=% " @ 6%

&"#S% !!!%

%,+-2) ) E @% A

"A%,)"#

%5,-002%,-00;!A3%;%J33L%

%,+-8) ) E@% "

"A%,:7-%5. /%

%?L(2?%B J332(33%

%,+--) E+%#$

7 % ) $# , -

,02,-,03%#7%J333%

%,;:,'(() 7# A # 7# 7%

+ A% ) ,777H,6,),

0 ,45 2,;$## 3& # B% +

!!J%

%,7'(() $ + " % "

%1,021,03 $-

' + 70% & %

%LLJ(LLL% !!J%

& &

%, $82) +% &"@ % ) !

,- 05 72,-07 !EA3%

+%+#%% 2L( 22%J32L%

%,:-4) $ +% (

% ) =-,- ,15

2,-,1!=3%+%%? (L!%J331%

%,:-2) $+-%"@A%,

0%JJ.JF /%%?(JL%J33L%

%,:'((') $ +-% )AD

)$% + 0 0% 55.5/% & )

+ (%% ?L( 3!%- !! %

%,:'((() )# )# @ @% B7VV* A

(K+%,)=,-

4 1 , 0 241+(;$###3%

H#)% !!!%

%,0-4) )B;%%&B

@ ) @ ./* , 0 - * %

B%%% 4 ( ?!%J331%

%,0H-) )# B ;# H % + *

% )

, 0 , 0% % 45( 1 %

J33?%

%*;0- ) B # A B # B 7% * B

" ,( +Y

) - 0-% +% 7Z$#7Z%

%54!(54L%J334%

%*:--) "#H#$6% ;#&*

%,%J!2.J( /%%JL3( 11%J333%

%33- ) )I +- ) 7% 05 + ( 7

0 % @ 34%!L% & &$#

aS %J334%

&'

%3E'(() )(; -%:700:)%732(

2 !?% 7 A% A# % !!J%

*http://herzberg.ca.sandia.gov/jess/

%3A-) )@A-$+%-) 0B0,%

-B %#E%J33J%

%3A;'(() ) )# - ;# A )# -# @ E# %

)&H)F%

)$## 0,9.+-%+ !!J%

%3+'(() )@ E@% D %

&B+## B6 ./* .05

7,,% A7 % (H%

D#6%%1!(?L% !!J%

%3 8') )A% @ " * F ,

%,%J3.J/%%JL(5L%

J32 %

%3 $-8) ) +% @% )B

/%(B%@#+%J332%

*http://www.aw.com/cseng/titles/0-201-89542-0/apsupp/roles2-1.html

%3-') )7 % ./ % 057

:%L.1/%%5 5(554%J33 %

%3::-8) )7 ##@% P

7-AA% &%) .%/* 1

( ) 0 7 , '

21.)0*;!E3%+#E%-J332%A7

J113%(H%D#6%J333%

%3::--) )7 ##@%-72-73

1<"&#%&&$S%

J333%

%=,-) 6IE@% ,(

%) ,'*+ 0%

#E%J335%

' '" &

%=,- ) 6IE@%

7% ) 8 , '

*,+7B+ 0% ;#"%

)J334%

%=A:-') 67#-;H#%

* + % ) E

, - < 1 + ( 2<1+(;!$3% H#

%J33 %

%=A:-') 67;#-;H#%

,( % ) , -

+20,9.+3%#%%2J(3!%J33 %

%=;--) 6D7#AZ#;Z%D

@ *A K+A% &B+

.%/*) -- 7-27-!!3% #

%+%7Z$#7Z%7J333%

%=7-4) 6# +$&% + I *#

'# % + 7 (% J2. /% % 5(J2%

J331%

%= -2) 6 %9 ) + 0 % ;

A"@;A(3L(2 %D#E%-J33L%

%='((() 6@+%&+*

%,0% 1. /%%L5(2L% !!!%

%=- ) 6@%-1B,%

%#E%%3L%J334%

%=:::'((() 6I +# D# $( E% +$

" K+A% ) 0

- ,02-,0$###3% AD#%

!!!%

%=<-8) 6"% (B$

H % &7#@E# I- ./* )

,6,),-+ 0).+

)B5;!E%%J332%

&( )

%E-8) ;"%,(@+.@+F7&+/%4*D#

+ E# 6 ./* % ,

0%%J332%

%E'(() ; % G@% !!J%http://www.haley.com/

%E-') ; 7% @ " %

)-0,9.+-%%43(12%-J33 %

%E-4) ;-%""%>,>-(,,!D

# % D$ &

#&%#&A%J331%

%E&&7-) ;@#D-#D-# +E% DA

% ) - 0,9.)0 7

';!D%#&%J33?%

%E-) ;@%.0,0B.0,50%

"%A%+J33?%

%E&-2) ; 7# D # % I "

"67$%*>6-,0*!A#$ %

& #)%6#)A%7J33L%

%EE-2) ;;E% 9>,+7(*)/& 6*&*

&$%J33L%*http://www.businessrulesgroup.org/

*1+ !!!%

%E+-) ;;E% "@% 59 7

0 15% )# &% + A@ && H% b5 45%

J335%

%E+>H-8) ; 7#E +#7A# $-D# H%

" "+% * !E##E%

)& %6#)A%-J332%

%E7-2) ;+$% 7@@%

&+A .%/* 10% E% #"

7%%5J5(55 %J33L%

%E 28) ;B7% 61-:*%

$BB%6%B#"%J3L2%

( *+,&

%E -') ;&+%%)

D 7 - . / . ) 27-..);!$3%

(H%D%% 2L(5!2%J33 %

%E;--) ;-#@#AE7%

A* A ,% )

'%;A#D#E%7J333%

%EH'((() ; -# )# HI % 0 7%

%#E% !!!%

%E:-8) ;+7+%-%,777,-%

. /%%3!(3J%+(J332%

%EH'(() ; + H H% "* A @ D

%&QAA !!JR%%22(J!?%

%EHE-2) ;-#HD#;%7A

+* 6I E&% + 5

7% 5.J/% &* 7 A D

.B$ J33?/% % # "

7%%L3(3 %-J33L%

%.:8-) &%65)

)60%A#E%J323%http://www.iasc.org.uk/

%.:-2) & % ,

0B,0""27)03% A#E% J33L% *

http://www.iasc.org.uk/

%.:-8) & % ,

0B ,0 "A 2) - 1 - 3%

A#E%J332%*http://www.iasc.org.uk/

%.&7'(() &D+@%http://www.research.ibm.com/rules/home.html

%.;1='(() &A6&%&A6D@% !!J%

http://www.ilog.com/products/rules/rules_2001.pdf

%.'(() &K+A+% !!J%http://www.ipedo.com/

&*- .

%.:1-4) & I .&F& -"JF JFB6L/%.

+ ) M * M ) $B 6% &

J!L4?( F&"("@K%3! %J331%

%.:1--) & I%+ 10F1%

&F& 3!L1%J333%

%.:1--) & I% , M .

+ ) M , + 1% &F&

J4L1!%J333%

%A3>'((() - 7@# ) # 7 "-# 0D # # D%

D+%,:

,%J4. /%%J41(J23% !!!%

%A '((') --&%-0% 4+

)&.)&/%A#I%

!! %

%A7'((() -$ +-;% 01)% ;%

7-%%433(145#?!L(? 3% !!!%

%A:-) --&+% IA

*"7% J +-(-

B @- ./* + 1 - 0B 4 0

0%E%J335%

%A:-) - -& +%

% : ,9)1% 4.5/% %4 L(

445%J33?%

%A:'((() --& +% (&% 0,

' 6 7 - 267-;##3% B

#%#% !!!%

%A::-2) -, # # H% A A

%),77700

)%$#%%J?4(JL4%+J33L%

%%% &

%++'(() EI #EB#EI&%H(D (

(I B$ % ) 0

, ' 70 270;# 3% @# &%

A 7 J35% (H% D#

6%%L4(22% !!J%

%+=H--) E+#6#H$-%-.'5B-65

70)*,7H$ED"=+#4%J333%

%+-8) E % $ D " ) A

D % ) " %5,

- 0 0 2%,-00;!E3% E # ;% -

J332%

%+-8) E % Θ" A KJ F"

O%)" %5,-00

2%,-00!E3% E # ;% & %

%JL?(J21%-J332%

%+'(() E%@,*

" ' " @

% 7 , - , 15

2,-,1$## 3%A#+%+%%J22(J31%+ !!J%

%+7-) E+%#"#

%)$D%5,

-00%E#;%& %

%435(1! %-J335%

%+7-2) E + % +

B$*"

)% -,0% J1.4/% +

%7Z$#7Z%%5 J(5?L%J33L%

%+ -2) E"% +% +

+ +, 6 7

6>%$H%;#6%J33L%

%+-) E;@%6+1%E%

J335%

&% %"

%+-4) ED @% Z*6 (

%,777057% J.J!/%

J331%

%+-8) E@%P"-D"%,)

. / . 1 0 2..10$D3% & %

J332%

%+ -2) E%&)A%+)

1%&7" )@%#7%-J33L%

%+-2) E 6# @( # @I B % , (

*65*)%"@2F3L%

&#AI%J33L%

%+-8) E 6# @( # @I B %

B$+P@(% &B #

7 6 ./* - - M

.)%A7J5?4%

(H%D#6%%33(J !%J332%

%+'((() E 6# @( # @I B * $

$ ,# %-

-0%5 .J/%+ !!!%

%+:'(() E6#@(#@IB #$$+%D(

,(% - - %

44.4/%%33(J!4% !!J%

%+H- ) E 6# @( # @I B # H % "6*

+$,(%:. /

.)%4%J334%

%+:8) E$ @ +% A( % 45

9-%4% ;+;#A"(H% %?L(31%

J32?%

%+<'((() E "Z(;% A+

% , : 7

-%1.J/%) !!!%

$/" &

%;'(() A% 6(@' *6

"% =,777,0 *72*7;# 3%

"#%% 43( ?5% !!J%

%;&>--) A-#D@#7'%A%)

D 4- ,2,!!3% +&"%

#+%% 3J( 32%-J333%

%;,-') A @+ I % ) & * &

&%,,0%-J33 %

%;8() A@+%-4+,+B1-+ 6-%

"%.

& +/# " B #

%#%-J32!%

%;88) A @+% D % - .

,0?. /%%2L(J!2%J322%

%;-8) A @+% " % : 7

0,7-%2.5/%%5(2%J332%

%;22) A A% ) - M 0 15 1% @

%#"7%J3LL%

%;'((() A E% 0 , 0 7%

% !!!%

%; '((() A+% --) 61% +"%

A% !!!%

%;1--) AE"%+;D@

%-:%4 .5/%% J( 5J%J333%

%;:,7'(() AE#A##+7% 7D

%,0:%JJ.5/%D$%

#E%% 3( 4L% !!J%

%;<--) AA# # "B % O & (

& % ,777 5 +

7%JJ.4/%-FJ333%

&

%;- ) A@+@Z%K* %:

,0%J .J/%%J41(J?3%J331%

%;:-2) A +% D@,+%)

,777 7 + . / - ' 27+.-;!A3%

6#%%5?(4L%J33L%

%;:--) A +% (D

+% ,777 05 7% &

& +% 1.?/% % 21 (2?3% 7F

J333%

%7#8) +$%)@@@%:

)1%J1%%4!5(4 1%J32?%

%7#88) +$%@*HA%&

-.%/**)%%#E%%?3(

3 %J322%

%7#--) +$%)A%&+7

$$;./*41,0&450

+1-0%&%#"7%

% 3(15%J333%

%7&-8) + D -% D * @D(D %

)>074,L-..0;!E%)#7+%%JJL(J5J%J332%

%7&&-4) + S# D # D # @ E% D

%$,'0

+ 45720+47;!=3%B#%-

J331%

%7-') + +- D% ) B %

@ @ @ J21!1 .2!345/ JJFJ!F3 % &D+ @ %

7J33 %

%7,&:-) +@+##D@-#B%

(B

'J3??%&+-.%/*67%

DD$%#E%J3?3%

, -&

%7-8) +I +% + P ; #

7# &%&E#$

# + S ./* ) $ , 7

+ . /-'27+.-;!E3%& %7J332%

%7*:0'(() +D# #-#B% )-,

M< 0%& ")@)5!?!% !!J%

*http://www.ietf.org/rfc/rfc3060.txt?number=3060

%7-2) + D% . /.05-% % ;%

7-%J33L%

%7--) +D%((6..05B,+(-%

*http://www.eiffel.com/doc/manuals/technology/contract/

%7=<7-8) +I+# 6 # ""# +(B $ # B;# D +#

A B % "

% , : - , 0%

L.4/%B%% 43( L4%J332%

%7'(() +%http://www.microsoft.com/siteserver/% !!J%

%7'(() +%http://www.microsoft.com/commerceserver/% !!J%

%7-4) + S% 7 . + 0% "%

#O%%J14( 42%

J331%

%782) +$ % "@ "* &

% )04- ,2,

EA3%+E%)#%J32L%

%7 '((() + % EO+A )AD*

A%,:7-%1.J/%) !!!%

%71'(() +-D#HA#@7%7A

(6 % "! ,

-. /.102..10>0$## 3%

D#%-( !!J%

&0 .

%7 28) +% ##% 1)%

% % 4J1(454% J3L2% @ % " S ./*

J4*"%%7Z$#

7Z%%J3J( J %J32J%

%7:-) +- +% ;

+% ,777:0-% JJ.3/% %

J4!4(J4J4%J335%

%7:- ) +-+%

+% : .-% 4.J/% %

%J( %J334%

%7:-2) +( + +% 6 +* 6I

+A%,777H,.)H(-0+

07:%4. /%-J33L%

%7:7'(() + +# +# + D% " @

%$' 4,

0=,-%+#

% + !!J% ;$"@

;A( !!J(J !%*http://www.hpl.hp.com/techreports/2001/HPL-2001-120.pdf

%7:D-4) + # +# Z 7% ) 0

+ 0% @ @ 31FJ!%

#&%A#E%J331%

%7'((() +$7;H%A(6&*

+ ; % -

057%3.5/%% L5(5!1% !!!%

%7<'(() +$"A% &FA%

:)1%5!%%J11(J21% !!J%

%70-) +--B @-%+1-0B40

0%-B %#E%J335%

%>:A-8) 7"-##-7@%@(

% ) ",-

02,-0!E3%#)%% ( 3%J332%

-/ &

%1:'(() I &

.&/%,)0-% !!J%

*http://www.oasis-open.org/committees/provision/Intro-102301.doc

%1:'((') I &

.&/% .0,0 L1 - ) )

0<$&#%- !! %

*http://www.oasis-open.org/committees/ebxml-cppa/documents/ebcpp-2.0.pdf

%17-) + +7 %

'%,-*7%

#%J33?%

%17='(() , + 6% +6 + A

#HJ%4% !!J%

*http://www.omg.org/technology/documents/formal/uml.htm

%-() "% 707B00 0%

+&"%#+%J33!%

%,--) 7BI%%--0%

5J.J/%%?5(J!5%J333%

%*:'((() - # -+# -% *

% , - 6

)%+#% !!!%

%;'((() @ A % O

H% ) $D , - < 1

+ 2<1+($###3%%424(431% !!!%

%:-2) $$ ; +% A ((

%&7.%/*+ +1B74

4 *% A 7% ?5% E

%% 5( ? %J33L%

%:-8) $E%D

+% & I # -, # ./*

+ M*)% A7 J533%

(H%D#6%% 1L( 2!%J332%

&/"

%:<'(() "&%@@&&% !!J%

http://www.pst.com/rete.htm

%-) 6% A E @%

) 6,'-1

2-1'!D3%E$A%D%% 55( 4 %+

J33?%

%:8) @@ ##-%"A@%>

15:%55. ?L/%J325%

%-8) @I B % + "6 P

&% & O 6# # D(

"-+./* ) !,-+ 7

02+7L;!E3% H#% J332% A

7 J4?!% (H% D# 6%

J332%

%=0'((') @+#6D7#B+%7

% -,% &

" %)# !! %

%'(() @ 6% A&* " D % !!J%

* http://www.ghg.net/clips/CLIPS.html http://www.ghgcorp.com/clips/CLIPS-

FAQ

%M3'(() @#Sc'#)%

+% ) , - ,

- 0 2,-,-0$## 3% K# % A 7

3%(H%D#6%%JL (JL?%

7 !!J%

%:&E'((() D##D-#;+#"% D

@ 4%)>>9$%#%- !!!%

*http://www.elvin.dstc.edu.au/doc/papers/index.html

%:&-8) + D-% @

%)5;!E%%%445P412%J332%

% &

%:-) ) -% & # # % &

D+ - ./* +140%

%%J34( J1%J33?%

%:-) $ % ( + 0% "%

A%J33?%

%:--) +% " B$ % ,777-%

-(J333%

%:A-2) )# -# - -&%

I%&@.%/*"#%5,

-00%%5L5(52 %J33L%

%:,'((() +B $ -% H %

-0,% %%J?1(J23% !!!%

%:-) -@% 0 B %

%J3?3%

%:--) +% A % ) '% ;

A#D#E%7J333%

%:'(() +% " 7 % -

-1% .4/%%12J(? % !!J%

%:=<H'((() # 6 +# " )# H -# A -# A -% "

A .A/ H J%!

% 4,0,* D8=!% 7 &

".7&"/%6#+% !!!%

%:E88) $+# ; 7# % ""6@ @

+%057%J4.L/%-J322%

%:.;'((') &A &% ' N - !! % *

http://www.sil.org/linguistics/GlossaryOfLinguisticTerms/WhatIsDiscourseDeixis.htm

%:+-) $+EI6% "7(6

+%-- %54.J!/%J33J%

%:+-4) )E$@%H %,)

$ , - 1 ) 2,-1) !=3% +&" %

#+%%?L(2 %J331%

&%%

%:;;'(() +#A-#A .%/* ))+

0 45B , ' 2) $## 3% D# E%

A 7 J331% (H% D#

6%- !!J%

%: - ) +%+%:

450% .4/%%J334%

%: -4) +%+&%),777

$,'0+ 457

20+47!=3%B#D%-J331%

%: '((() +#7#7D%7)0*-99*H !D #"&0)B

0 0 ) + 0% &

#% !!!%

%:;88) "#A(#@A%&A

D+ *%) !EE

-0,9.+-+%#&A%%4!4(

4J %-J322%

%:8() @% " 7 * ;(

% ,777-%

3.J /%J32!%

%: '(() 6"K+A%http://www.softwareag.com/tamino/% !!J%

%: $'((() -)% 5 *B 1 ) -

6%D$F%6#% !!!%

%:'((() +% 40*7%

"% A% -

!!!%

%::++8) +-#)#E$@#EI$)#;#;"%

"D7A%--%

3.1/%%5L!(52?%+J32?%

1"2&

%:'((') $I % 1 O 5 <P

%% &$ A &H

@(Ba"; .@B";/%

#6% !! %)%

%:'((() +% )% "#4%!%

#&# %- !!!%

%:H84) -@H$% 6,1%

%#E%J321%

%:--) # B+# &D%

7$ %,777-%-(J333%

%:,'((() 6# @ @# I -A6% A

% + 5

7%51%%J J(J5?% !!!%

%<&--) " D -A% - -% E A%

A#E%J333%

%<=>1-') "#6#7# $ D% O

(%) !!$-0,9.+,

- +% # % % 5 J(55!% -

J33 %

%< -8) " -% ,B , )%

BAA%7Z$#7Z%%J(14%J332%

%< --) "%7* -65'5

0%"%S%J333%

%<<--) " Z(; " B % A +

%

,:7-2,:7-3% 5. /% %2L(J!4% B

J332(J333%

%<0'(() " E B 6% ( D @*

% , ) , ' . 7

0B07.2.7007.$## 3%@#&%

!!J%

&"2324

%<0'(() "EB6%( +D

D@% ,) $#,- -

27*$## 3%Z$#-% 7 !!J%

%7-) +% 01)+01>*)+; 9B

*"&"%J33?%

% '(() %

http://www.ness-europe.com/products/usoftdeveloperseries/default.htm. !!J%

%-) B+% " 6 @ (7(

B$ + % & 7 B$ " ./*

) , ' - , )

, 7 2,),-?!D3% % JL3( !J% # +%

7J33?%

%EE- ) B+# ; E+# ; 6-% +

$(7(% &+6#

#+6./* ) 0'-

0-')4*6%%5J(1!%J334%

%H-) H$;-%%%J33?%

%H'(() HA%http://www.versata.com/. !!J%

%04) B6;%A%%?!%%J(J1%J31J%

%0'((() B 6% ( I

&%&-%DI%$./*+

,0B 8,777,(' +

,0%H#A%+ !!!%

%0'(() B 6% " (,(@ +(+* "

H D% *%

"% !!J%

%07-4) B$ + .B+/% " B$ @

+* & J%J% -## ##"% J331% *

http://www.wfmc.org/standards/docs.htm

%0-) B-%"@%,777

5+7%2.4/%%125(131%J33?%

2,5 26&

%0-4) B @% +

"% ) ,6,)H,777

,0,45% D#%

+J331%

%0@'(() B; KA% (% !,6,)$&D'

-+ 0,7-02+0!3% !!J%

[[[[ This page exists just to force the printer beech to print the last page of the bibliography ]]]]

[[[[ This page exists just to force the printer beech to print the last page of the bibliography ]]]]

[[[[ This page exists just to force the printer beech to print the last page of the bibliography ]]]]

[[[[ This page exists just to force the printer beech to print the last page of the bibliography ]]]]

top related