This post describes my attempts to use the OASIS specification WS-Calendar as a component of EMIX. WS-Calendar specifies how to share schedules and sequences in web services. EMIX (Energy Market Information Exchange) provides price and product descriptions for products that vary over time, including electrical power. Both standards are currently in development.
Electric energy has seasons of abundance and scarcity as do agricultural commodities. Electric energy’s seasons are measured in days instead of in years. EMIX uses WS-Calendar to describe products whose supply and value change rapidly over time.
Five KW at 2:00 AM is not the same product as Five KW at 2:00 PM. EMIX describes products for which time, the interval in which it is delivered, is an essential attribute. For energy purchases made in consecutive intervals, prices and quantities may vary for each interval. EMIX describes products for which a key characteristic is variance over time, whether the product is generation or load reduction, wind or coal, power or regulation.
For the simplest product, the dispatch of power, EMIX is simply a product description (constant power), a start date and time, a duration, a quantity, and a price. If the rate and price have been set in advance, the dispatching communication might be simple “start at 3:00 (reference uri to product), for 45 minutes.”
It is often desirable to discuss a sequence of intervals in which to purchase electric energy. In any set of intervals, most information would be redundant. The same product could be described again and again, once for each interval. Only a few characteristics, perhaps only price, or quantity, might change per interval. EMIX specifies product information once, and then specifies only the changes in each interval.
Some energy products have characteristics that present a consistent pattern over time, whenever purchased. A generator may run at half speed for an hour while warming up. A responsive load may require 15 minutes before load reduction. These characteristics may hold true whether generation or response is requested for 15 minutes of 15 hours. EMIX specifies these invariant characteristics as part of a product, while offering the variable run-time to the market.
The EMIX Product Description specifies the characteristics of a product at a given instant in time. The EMIX Product uses WS-Calendar to express how that product varies over time. WS-Calendar describes how a single specification can be shared between a sequence of time intervals, and a gluon, which describes aspects of the specification shared by all, including, perhaps, the schedule for the sequence. WS-Calendar also another gluon can associate with the another gluon to influence a gluon-sequence information set.
A sequence could also have 10 consecutive 15 minute intervals, each with a different quantity (or different price). Rather than expressing a product description, a start date and time, a quantity, and a price, 10 times, EMIX uses a gluon associated with the sequence, letting you put the product description, start date and time, and price in the gluon, and have only the quantity in each interval.
If a market rule stated that there was no price for a ramp period, the first interval could have a price of zero. In that case, that first interval could have a price of zero (blocking the price coming from the gluon). All other intervals could get the price from above.
The same override capabilities go to any variable. If the ramp periods have a fixed time, but the run time is variable (describing a typical generation resource, and perhaps most DR assets) then the duration can be expressed in the gluon, inherited by all intervals that themselves do not have a duration, i.e., the generation load, and ignored by those that do, i.e., the ramp times.
But the simplest (one price, one time, one interval, one duration, one amount) explicit invocation, and the simplest implicit (do that thing, one time) invocation are still invoking the EMIX Product, consisting of a Gluon holding a Product Definition, Start Time, and a sequence.