1: doctype "./plans.g.etl";
2:
3: plan Regular {
4: value BASE_RATE : Quantity {
5: past => 10.0 * USD/KwH;
6: after 1999-12-01 => 12.0 * USD/KwH;
7: };
8: event USAGE {
9: after 1999-10-01 => account base_usage <- BASE_RATE * usage;
10: };
11: event SERVICE_CALL {
12: after 1999-10-01 => account service <- fee * 0.5 + $ 10.0;
13: after 1999-12-01 => account service <- fee * 0.5 + $ 15.0;
14: };
15: event TAX {
16: after 1999-10-01 => account tax <- fee * 0.055;
17: };
18: };
19:
20: plan LowPay {
21: value BASE_RATE : Quantity {
22: past => 10.0*USD/KwH;
23: };
24: value REDUCED_RATE : Quantity {
25: past => 5.0*USD/KwH;
26: };
27: value CAP : Quantity {
28: past => 50.0 * KwH;
29: after 1999-10-01 => 60.0 * KwH;
30: };
31: event USAGE {
32: after 1999-10-01 => account base_usage <- if usage > CAP then BASE_RATE * usage else REDUCED_RATE * usage;
33: };
34: event SERVICE_CALL {
35: after 1999-10-01 => account service <- $ 10.0;
36: after 1999-12-01 => account service <- fee * 0.5 + $ 15.0;
37: };
38: event TAX {
39: after 1999-10-01 => account tax <- fee * 0.055;
40: };
41: };