Skip to content
BryanHunt edited this page Aug 1, 2012 · 6 revisions

State

A State represents a node in a graph that, together with other states and state transitions, forms a state machine. A state may have any number of state transitions specified by a TaskType.

{
  "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//State",
  "name" : "String"
}

StateChange

{
  "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateChange",
  "transition" : { "$ref" : "StateTransition URI" },
  "initiatedOn" : "Date",
  "initiatedBy" : { "$ref" : "Entity URI" }
}

StateGroup

{
  "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateGroup",
  "name" : "String",
  "states" : [{ "$ref" : "State URI" }]
}

StateMachine

{
  "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateMachine",
  "states" : [{ "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//State" }],
  "transitions" : [{ "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateTransition" }],
  "transitionsbyState" : [{ "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateTransitionMapping" }],
  "stateGroups" : [{ "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateGroup" }],
  "startingState" : { "$ref" : "State URI" }
}

StateTransition

A State transition represents a directed connection between states in a state machine. A state transition has an end state that becomes the current state when the transition is activated.

{
  "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateTransition",
  "name" : "String",
  "targetState" : { "$ref" : "State URI" }
}

StateTransitionMapping

{
  "eClass" : "http://www.eclipselabs.org/etrack/domain/state#//StateTransitionMapping",
  "key" : { "$ref" : "State URI" },
  "value" : [{ "$ref" : "StateTransitionURI" }]
}

Clone this wiki locally