Template: SwedishDefence:MeterInformation

This section specifies the template MeterInformation.

The specification comprises a SysML Block that represents the template and an associated Parametric Diagram that defines the templates and PLCS PSMTemplate objects instantiated by the MeterInformation template.

The specification comprises the following sections:

NOTE    An explanation of a template and its specification is provided in the Template overview
The MeterInformation template describes how to represent a Part that is a meter, and provides additional information required for meters.

No templates have been explicitly defined as being related to the MeterInformation template.

NOTE    The MeterInformation template may make reference to other templates as part of the Parametric Diagram. These are not listed here.

Figure 1 shows the SysML Block that represents the template. The Block is an abstraction representing a pattern of templates and PLCS PSMTemplate objects.

The properties, i.e. the SysML Block Part, Reference and Value properties, of the template's SysML Block are described in the Template Properties section.

The output ports shown on the template's SysML Block are described in the template output ports section.

The constraints shown on the template's SysML Block are described in the template constraints section.

The SysML Parametric diagrams for the template Block are shown in template parametric diagram section.

Figure 1 -  Template block definition diagram for MeterInformation

The following SysML Part, Reference, and Value properties are defined for this template:

References:
definedFor [1] (Template: SwedishDefence:ItemDefinition)
The ItemDefinition that the Meter info is defined for.
measures [1] (Template: SwedishDefence:OperationalPropertyDefinition)
The Operational Property being measured.
Parts:
meterValueType [0..1] (ValueType: ExternalOwlObject)
Indicates what type of value the meter provides, e.g. maximum value, minimum value, mean value.
meterPresentationCategory [0..1] (ValueType: ExternalOwlClass)
Indicates the value presentation method used by the meter, e.g. numeric, symbolic, text.
The reference data used is restricted to the following set:
textBasedMeter(TextbaseradMätare,t.ex.enBilsVIN-nummer) = http://plcs.fmv.se/rd/SwedishDefence-rdl-en#meterPresentationCategory_textBased
meterPropertyDefinition [1] (ValueType: ExternalOwlObject)
Reference to OWL class that defines (classifies) the meter by category.
The reference data used is restricted to the following set:
maxValue [0..1] (Template: SwedishDefence:PropertyValue)
Maximum value given by the meter.
minValue [0..1] (Template: SwedishDefence:PropertyValue)
Minimum value given by the meter.
overturnValue [0..1] (Template: SwedishDefence:PropertyValue)
The value at which a counter reaches its maximum and starts over again. Used only for counters.
The reference data used in Template: SwedishDefence:PropertyValue is restricted as follows:
RDL constraint 1:
overturnValue constraint
The reference data for:
OASIS:PropertyValueNumeric.property -> ExternalOwlObject.individual
is restricted to the following individual:
Values:
decimalsForCalculations [0..1] (Integer)
The number of decimals used to manage and calculate the value, e.g. decimals used for sampling and storage of values.
decimalsForPresentation [0..1] (Integer)
The number of decimals used to present the value.

There are no output ports are defined for this template.

The following constraints are defined for this template:

Constraint: maxValid
Specification: (OCL2.0)
maxValue.oclIsUndefined xor maxValue.operationalPropertyDefinition = operationalPropertyDefinition
Maximum value given by the meter.!
Constraint: minValid
Specification: (OCL2.0)
minValue.oclIsUndefined xor minValue.operationalPropertyDefinition = operationalPropertyDefinition
Minimum value given by the meter.
Constraint: overturnValid
Specification: (OCL2.0)
overturnValue.oclIsUndefined xor overturnValue.operationalPropertyDefinition = operationalPropertyDefinition
The value at which a counter reaches its maximum and starts over again. Used only for counters.

This section describes the template's Parametric Diagram. The diagram details the pattern of templates and PLCS PSMTemplate objects that are required to represent the template MeterInformation.

The public properties, i.e. those visible in the template's SysML block (See Figure 1) are shown on the left of a Parametric Diagram.

NOTE    Restrictions on the reference data to be set on the public properties is defined in the Template Properties section.

The output ports are shown on the right of a Parametric Diagram.

PLCS PSM objects are shaded khaki and Templates are shaded light green in a Parametric Diagram.

Figure 2 -  MeterInformation

The following blocks are instantiated by this template and bound to private parts of the template as shown in the Parametric Diagram section:

Private Part Property:meterPresentationCategoryClass [0..1] (Template: OASIS:Classifier)
Private Part Property:pva [1] (Block: Ap239Ap233Psm:PropertyValueAssignment)
Private Part Property:theValues [1] (Block: Ap239Ap233Psm:ValueSet)
Private Reference Property:theProperty [1] (Block: Ap239Ap233Psm:ExternalPropertyDefinition)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the ExternalPropertyDefinition:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: UR1
Specification: (OCL2.0)
ExternalPropertyDefinition::allInstances()->isUnique(definition)
Private Part Property:metreTypeMQ [0..1] (Block: Ap239Ap233Psm:MeasureQualification)
Private Reference Property:qual [0..1] (Block: Ap239Ap233Psm:ExternalTypeQualifier)
Private Reference Property:qualValue [0..1] (Block: Ap239Ap233Psm:Proxy)
Private Part Property:chooseDefinedFor [1] ( Constraint Block: SwedishDefence:MeterInformation:PartDefinitionOrItemOfSupply)
Private Part Property:combineValues [1] ( Constraint Block: SwedishDefence:MeterInformation:CombineValues)
Private Part Property:combineMQs [1] ( Constraint Block: SwedishDefence:MeterInformation:CombineMeasureQualifiers)
Private Reference Property:dfc [0..1] (Block: Ap239Ap233Psm:PrecisionQualifier)
Private Reference Property:classCalculationPrecision [0..1] (Block: Ap239Ap233Psm:ExternalOwlClass)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the ExternalOwlClass:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: ur1
Specification: (OCL2.0)
ExternalOwlClass::allInstances()->isUnique(class)
Private Reference Property:dfp [0..1] (Block: Ap239Ap233Psm:PrecisionQualifier)
Private Reference Property:individualPresentationPrecision [0..1] (Block: Ap239Ap233Psm:ExternalOwlClass)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the ExternalOwlClass:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: ur1
Specification: (OCL2.0)
ExternalOwlClass::allInstances()->isUnique(class)
Private Part Property:pda [1] (Block: Ap239Ap233Psm:PropertyDefinitionAssignment)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the PropertyDefinitionAssignment:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: UR1
Specification: (OCL2.0)
PropertyDefinitionAssignment::allInstances()->isUnique(Sequence{assignedTo, assignedPropertyDefinition})
Private Part Property:calculationMQ [0..1] (Block: Ap239Ap233Psm:MeasureQualification)
Private Reference Property:classExternalTypeMeasureQualification [0..1] (Block: Ap239Ap233Psm:ExternalOwlClass)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the ExternalOwlClass:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: ur1
Specification: (OCL2.0)
ExternalOwlClass::allInstances()->isUnique(class)
Private Part Property:externalTypeMQclass [0..1] (Block: Ap239Ap233Psm:Classification)
Private Part Property:calculationMQclass [0..1] (Block: Ap239Ap233Psm:Classification)
Private Part Property:presentationMQ [0..1] (Block: Ap239Ap233Psm:MeasureQualification)
Private Part Property:presentationMQclass [0..1] (Block: Ap239Ap233Psm:Classification)

There are no instances that have been instantiated in this template.

Figure 3 shows the constraint blocks that have been created in the template.

Constraint Blocks are typically used to combine blocks into a collection that can then be bound to a property. For example, combining a set of identifications that can then be bound to property of type Identification.

Constraints diagram
Figure 3 -  Constraint block diagram for MeterInformation

The following constraint blocks have been created:

Constraint: PartDefinitionOrItemOfSupply
Specification: (OCL2.0)
assigned = if not partDefinition.oclIsUndefined() then partDefinition else itemOfSupply endif
Constraint: CombineMeasureQualifiers
Specification: (OCL2.0)
combined = Set {mQual1, mQual2, mQual3}
Constraint: CombineValues
Specification: (OCL2.0)
combined = Set {value1, value2, value3}

No example data sets have been provided for this Template.

Issue reporting