eiConstraintType overlaps Emix:constraints.
From EMIX: "Constraints are extrinsic to the product delivery but effect how a partner may request performance of a service. Performance constraints may be tied to the basic mechanical needs of the resource or to the business needs of the source. These constraints can affect the market value of the resource or the repeated invocation of a resource. It is possible for a given underlying resource to be offered to the market with different constraints and therefor different values. It is possible for a given underlying resource to be offered to the market with different constraints and therefor different values."
The Constraints are defined as follows: (starred elements map directly to existng constraints)
Minimum Response Duration The shortest Duration for which the resource will accept a request to maintain a response before returning to pre-request levels.
Maximum Response Duration The longest Duration for which the resource will accept a request.
Minimum Recovery Duration The minimum Duration that the Resource requires after the end of a response the resource has is ready to respond to a new request.
Minimum Duration Between Invocations The minimum Duration that the Resource requires after receiving a request before the resource has is ready to respond to a new request.
*Minimum Notification Time The minimum Duration that the Resource requires for Notification before initiating a response to a request.
Response Time Duration required from receipt of a request to supplying the requested level of response by the resource
Maximum Invocations Per Duration Maximum number of invocations of service during a given duration
**Maximum Consecutive Durations Maximum consecutive durations in which service can be invoked, e.g., it will not accept requests on more than 3 consecutive days.
Minimum Starts Per Duration The fewest Requests that the resource will accept during any duration. This constraint is typically used in market rather than in resource descriptions
*Maximum Run Duration The Maximum duration for which a resource will accept a request
Minimum Run Duration The Minimum duration for which a resource will accept a request
Minimum Load Constraint on Minimum Load that a Resource can maintain
Maximum Power Constraint on Maximum Power available from a resource
Maximum Energy Constraint on Maximum Energy available from a resource
Minimum Load Reduction Constraint on Minimum Load Reduction resource can make
Constraint Schedule A schedule of time during which a resource will accept requests. The schedule may include multiple availability windows, i.e., an availability in May, can include weekday mornings and Thursday afternoons. The scheduled duration must be entirely within a single instance of an availability window.
Market Requirements are the market portion of Constraints, i.e., they are used to state the offeror's expectations about a tender.It is possible for a given underlying resource to be offered to the market with different Requirements and therefor different values.
Market Requirements are defined as follows:
Minimum Economic Requirement Minimum net remuneration this resource requires from a total response
Required Startup Cost Minimum remunuration required from start-up of this service.
Minimum Resource Cost Resource requires this amount per period, i.e., a minimum requirement for $100 / hour at whatever rate
There are a couple missing pieces, i.e., BlackoutSchedule and optIn Schedule, OptOut Schedule. These could be submitted back to EMIX or subclassed from Constraints w/I EI.
<xs:element name="eiConstraint" type="eitc:EiConstraintProposedType"/>
<xs:complexType name="EiConstraintType">
<xs:sequence>
<xs:element ref="eitc:constraintID" minOccurs="1" maxOccurs="1"/>
<xs:element name="maxEventDuration" type="xs:duration" minOccurs="0" maxOccurs="1"/>
<!-- Maximum Run Duration -->
<xs:element name="notificationInterval" type="xs:duration" minOccurs="1" maxOccurs="1"/>
<!-- Minimum Notification Time -->
<xs:element ref="eitc:resourceID" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="eitc:transactionName" minOccurs="1" maxOccurs="1"/>
<xs:element ref="eitc:venID" minOccurs="0" maxOccurs="1"/>
<xs:element ref="eitc:notificationWindow" minOccurs="0" maxOccurs="1"/>
<xs:element ref="eitc:eventWindow" minOccurs="0" maxOccurs="1"/>
<xs:element name="acceptSchedule" type="eitc:EiConstraintScheduleType" nillable="true" minOccurs="0" maxOccurs="1"/>
<xs:element name="notAcceptSchedule" type="eitc:EiConstraintScheduleType" nillable="true" minOccurs="0" maxOccurs="1"/>
<xs:element name="maxConsecutiveDays" type="eitc:EiConstraintScheduleType" minOccurs="0" maxOccurs="1"/>
<xs:element name="validDateTimes" nillable="true">
<xs:complexType>
<xs:annotation>
<xs:documentation>These are the date/times during which a DR Event may be issued. If undefined then it is assumed that the DR Event may be issued at any time except as specified by the other constraints such as the black out dates and times.</xs:documentation>
</xs:annotation>
<xs:sequence/>
</xs:complexType>
</xs:element>
<xs:element ref="eitc:maxConsecutiveDaysFilter"/>
<xs:element ref="eitc:blackOutDateTimes" minOccurs="0"/>
</xs:sequence>
<xs:attribute ref="eitc:schemaVersion" use="optional">
</xs:attribute>
</xs:complexType>
<xs:element name="eiConstraintSchedule" type="eitc:EiConstraintScheduleType"/>
<xs:complexType name="EiConstraintScheduleType">
<xs:annotation>
<xs:documentation>[wtc]For now a class with a wscal::Schedule and the associated behavior</xs:documentation>
<xs:appinfo>[tc]Look to Constraints class from EMIX</xs:appinfo>
</xs:annotation>
<xs:sequence>
<xs:element name="consecutiveDays" type="xs:unsignedInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Changed from days:unsignedLong in PR01</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="filter" type="eitc:EiConstraintBehavior" minOccurs="1" maxOccurs="1"/>
<xs:element name="schedule" type="emix:BusinessScheduleType" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute ref="eitc:schemaVersion" use="optional"/>
</xs:complexType>
</xs:schema>