Table 44 — UML attributes in “order” operation normal response
Name Definition
Data type and value Optionality
productID Unique identifier for specific
resource being ordered Character String type, not empty
Values from catalogue metadata One Mandatory
orderType Type of order request
OrderType CodeList, with allowed values of:
orderEstimate, orderQuoteAndSubmit,
orderMonitor, and orderCancel
One Mandatory
orderID Unique identifier for this order
Character String type, not empty Value assigned by client
One Mandatory orderStatus
Current status of the order CodeList data type
a
One Mandatory resourceEstimate Estimate
of the resources needed to
process andor deliver the requested resource. Examples of
these resources are time until delivery and cost.
Character String type, not empty Values TBD
One Mandatory
orderInformation Specification of current order, as
provided by client or modified by server during resource estimation
OrderSpecification data type, see Annex C
One Mandatory
a Possible orderStatus values are orderBeingEstimated, orderEstimated, orderBeingQuoted, orderBeingProcessed, orderCompleted,
orderNotValid, and orderCancelled.
7.3 Protocol, interface and operation specializations
The catalogue service specification includes recognized Protocol Bindings, formerly known as Implementation Profiles. Clause 11 defines the rules by which an Application
Profile as a dependent specification can be written. Protocol Bindings shall implement the features present in the General Model, described in Clause 7 following the optionality
expressed there. Protocol Bindings interpret the general model in the referenced implementation environment. These artifacts are discussed in detail in Subclause 7.2 and
the Protocol Binding clauses of this document.
7.4 Dynamic model
7.4.1 Introduction
The Catalogue Interface defines a stateful session a stateless interface will be added in future versions of this Implementation Specification. This subclause defines the states of
the session and the allowed transitions between the states. All other state transitions are disallowed and are consider errors if exhibited by a server.
A physical server may support more than one session. Each of the sessions is independent when viewed from the interface defined by this specification.
In the state models below, a transition is typically triggered by a request. Following the messaging model introduced earlier, a Request is paired with a Response. Generally, a
58
Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved.
transaction in this model is bounded by a request-response pair. Note that a transaction can be statused or cancelled while it is active, i.e., before a response is issued. Once the
server has sent a Response, the server treats the receipt of a StatusRequest or CancelRequest as an error, to which it responds gracefully. Gracefully means that the
server should respond with a StatusResponse or a CancelResponse with a diagnostic indicating that the RequestIDtoStatus or the RequestIDtoCancel is not recognised. The
server shall not change state in response to a StatusRequest or CancelRequest when the transaction is complete, i.e., a Response has been sent.
7.4.2 UML state diagram notation
The state diagrams in the following subclauses use the UML notation. Figure 17 provides a summary of the UML notation used in the following subclauses. Transitions are the
paths between states. A transition will occur if the event occurs and the guard condition is true. If a transition occurs, the Action is completed prior to entering the next state.
Composite states contain multiple sub-states. Both the Sequential Composite State and the Concurrent Composite State types are used in model for the Catalogue Interface. In a
Sequential Composite State only one sub-state is active at any given time. UML defines that when a transition enters Concurrent Composite State all of the sub-states are active,
although some of the sub-states may remain in the Initial State. When exiting a composite state, all sub-states are exited as well.
State A State B
Event Action Event Action
Event Action
State A State B
Event Action Event Action
State A
Simple State
Event [guard condition] Action
Transition
Initial State Final State
Sequential, Composite State
Concurrent, Composite State
Figure 17 — UML state diagram notation
7.4.3 Catalogue server state machine