MapType

MapTypes are contained in metrics and outbound events and determine how and when each of these are updated and set.

Elements
Name Min-max Description
trigger 0 - 1 The triggers that can cause the map to start.
outputValue 1 - 1 A required expression that, when evaluated, results in the output value of the map.
description 0 - 1 A user-provided description of the map.
Attributes
None
Restrictions
The following terms are used in the restrictions:
  • Safe Contexts: a set of all ContextType that are guaranteed to exist for all possible executions.
  • Prime Movers: a set of all InboundEventType and TimeIntervalsType that can originate the execution.
  • Implicit Trigger: A metric map runs based on one of the following triggers:
    • An explicit trigger, if there is one.
    • An implicit trigger with an onEvent for every inbound event referenced, if any inbound events are referenced.
    • An implicit trigger with an onValueChange for every base metric referenced (except references to itself).
Outbound event maps do not have implicit triggers.
  • Maps for outbound events:
    • The map cannot use singleValue, which is only valid for metrics.
    • The map cannot contain any circular references in its trigger chain.
    • In map assignments:
      • leftValue must be an assignable lvalue.
      • All leftValues and rightValues must exist; that is, they cannot be omitted or empty.
      • The leftValue type must match the rightValue type.
    • A map trigger reference must exist (that is, map/trigger/ref must be specified).
    • The map trigger reference:
      • Must contain a valid reference.
      • Must reference a trigger or inbound event.
      • The referenced trigger or inbound event must be in the parent or a descendant context.
    • In map expressions that use (expression, rightValue):
      • The referenced objects must exist. Their existence is verified by XPathExpression.
      • The referenced objects must be inboundEvents, baseMetrics, or, if the map is in a KPI context, KPI values, targets, or ranges (no triggers or outboundEvents).
      • The referenced baseMetrics must provably exist. (They must all be in a Safe Context; see "Safe Contexts.")
      • The union of all references made by all expressions in this map can reference zero or one inboundEvent (multiple times but all the same event).
    • In map expressions that use (expression, leftValue, rightValue), the initial context is the containing context.
    • If the map references an inboundEvent:
      • The map must be started only by that inboundEvent. (The inboundEvent must be the only Prime Mover and the map cannot start without the inboundEvent existing; see "Prime Movers.")
      • The inboundEvent must be in the current context or a descendant context.
    • You will get a warning if the map references a trigger that will never fire.
  • Maps for keyMetrics:
    • The map cannot use assignment, which is valid only for outboundEvents.
    • The map cannot contain any circular references in its trigger chain.
    • A map trigger reference must not exist (the map/trigger element is not allowed).
    • In map expressions that use (expression, xxxxxXxxxx):
      • The expression can reference only one inboundEvent (or a literal, but not a metric, counter, or stopwatch).
      • The expression type must match the type of the metric.
    • If the map references an inboundEvent:
      • The inboundEvent must be a creationEvent.
      • The inboundEvent must be in the same context.
      the inboundEvent must be a creationEvent.
    • (Warning) No implicit trigger will fire.
  • Maps for metrics:
    • The map cannot use assignment, which is valid only for outboundEvents.
    • The map cannot contain any circular references in its trigger chain.
    • A map trigger reference may or may not exist (that is, map/trigger/ref is optional). (See "Implicit Trigger.")
    • The map trigger reference:
      • Must contain a valid reference.
      • Must reference a trigger or inboundEvent.
      • The referenced trigger or inbound event must be in the parent or a descendant context.
    • In map expressions that use (expression, xxxxxXxxxx), the expression type must match the type of the metric.
    • In map expressions that use (expression, rightValue):
      • The referenced objects must exist. Their existence is verified by XPathExpression.
      • The referenced objects must be inboundEvents, baseMetrics, or, if the map is in a KPI context, KPI values, targets, or ranges (no triggers or outboundEvents).
      • The referenced baseMetrics must provably exist. (They must all be in a Safe Context, see "Safe Contexts.")
      • The union of all references made by all expressions in this map can reference zero or one inboundEvent (multiple times but all the same event).
    • In map expressions that use (expression, leftValue, rightValue), the initial context is the containing context.
    • If the map references an inboundEvent:
      • The map must be started only by that inboundEvent. (The inboundEvent must be the only Prime Mover and the map cannot start without the inboundEvent existing; see "Prime Movers.")
      • The inboundEvent must be in the parent context or a descendant context.
Schema definition
<xsd:complexType name="MapType" >
    <xsd:complexContent>
        <xsd:extension base="mon:DescribableElementType">
            <xsd:sequence>
                <xsd:element name="trigger" type="mon:ReferenceType" 
                      minOccurs="0" maxOccurs="1" />            
                <xsd:element name="outputValue" 
                      type="mon:ValueSpecificationType" minOccurs="1" 
                      maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>