Skip to main content

opcua:Variable

Mapped https://mapped.com/schema/mapped/1.0/opcua#Variable

An OPC UA DataVariable (OPC 10000-3 §5.6.2, §5.6.4): a node that contains a value, reached through HasComponent. Properties are Variables too (§5.6.3) but are stored as opcua:Property or as fields of their parent. Live values are timeseries on the mapped:Point that links to the Variable with mapped:hasExternalReference. A Variable with component Variables is usually a structure, which a Brick Thing may link to instead.

Propose a change

Hierarchy​

Parent classes: opcua:Node

Subclasses: none, this is a leaf class.

Facts​

FactValue
URIhttps://mapped.com/schema/mapped/1.0/opcua#Variable
SourceMapped
ProtobufOPCUA_VARIABLE
GraphQLOPCUAVariable
DeprecatedNo

Properties​

PropertyTypeRequiredDefaultDescription
opcua:accessLevelArray<string>The Variable's AccessLevel attribute (OPC 10000-3 §5.6.2), decoded into the names of its set bits from AccessLevelType (OPC 10000-3 §8.57): CurrentRead, CurrentWrite, HistoryRead, HistoryWrite, SemanticChange, StatusWrite, TimestampWrite. CurrentWrite means the point can be commanded. UserAccessLevel is not stored because it describes the connector's session, not the point.
opcua:arrayDimensionsstringThe maximum length of each dimension of an array value, in the opcua.array_dimensions JSON shape: the ArrayDimensions attribute of a Variable or Property (OPC 10000-3 §5.6.2), or StructureField.ArrayDimensions of an opcua:Field (§8.51). One entry per dimension, in order; 0 means the maximum is unknown. Written only when the value is an array.
opcua:engineeringUnitsstringThe Variable's EngineeringUnits Property (OPC 10000-8 §5.3.2.2), an EUInformation (§5.6.4), in the opcua.eu_information JSON shape: namespaceUri, unitId, displayName and description, plus uneceCode, the UNECE common code decoded from unitId (§5.6.4.4). QUDT indexes units by that code, so it is the shortest path from an OPC UA unit to a Brick unit.
opcua:euRangestringThe Variable's EURange Property (OPC 10000-8 §5.3.2.2): the value range likely in normal operation, in the opcua.range JSON shape {low, high}.
opcua:falseStatestringText of the FalseState Property of a TwoStateDiscreteType Variable (OPC 10000-8 §5.3.3.2): what a false value means, such as STOP, OPEN or DISABLE.
opcua:trueStatestringText of the TrueState Property of a TwoStateDiscreteType Variable (OPC 10000-8 §5.3.3.2): what a true value means, such as RUN, CLOSE or ENABLE.
opcua:valueRankintegerThe ValueRank of a Variable or Property (OPC 10000-3 §5.6.2): n > 0 for an array of exactly n dimensions, 0 for one or more dimensions, -1 for a scalar, -2 for a scalar or an array of any rank, -3 for a scalar or one dimension. On an opcua:Field it is StructureField.ValueRank (§8.51), only -1 or n > 0. An array rarely maps to a single Point.

exactType is always opcua:Variable.

Inherited properties (18)
PropertyTypeRequiredDefaultDescription
connectedDataSourceIdstringThe id of the origin data source of an entity. This id is already a part of mappingKey but important for faster query.
connectorIdsArray<string>The ids of the connectors associated with the entity.
dateCreateddateTimeDatetime when it is created.
dateUpdateddateTimeDatetime when it is updated last time.
descriptionstring
enrichmentSourceConnectorIdstringThe id of the source connector with which the vertex, whether it's a property bag or a derived entity, is associated.
idstringYesA globally unique ID in Mapped services.
isVirtualbooleanfalseIf this is true, the corresponding entity is virtual, meaning it doesn't exist in the real world but fabricated in the Mapped's system.
mappingKeystringThe origin of the entity. More detailed definition is available at here.
namestring
opcua:browseNamestringThe name part of the node's BrowseName (OPC 10000-3 §5.2.4), a QualifiedName; the namespace part is opcua:browseNameNamespaceUri. The DisplayName and Description attributes are stored as mapped:name and mapped:description.
opcua:browseNameNamespaceUristringThe namespace of the node's BrowseName (OPC 10000-3 §8.3) as a URI: its NamespaceIndex resolved through the server's NamespaceArray, http://opcfoundation.org/UA/ for namespace 0. Not the NodeId's namespace: a child that a type declares has its type's namespace. It tells a companion-spec name, such as the DI SerialNumber, from a vendor's.
opcua:nodeIdstringYesThe node's NodeId (OPC 10000-3 §5.2.2) in the string form of OPC 10000-6 §5.1.12: nsu=<namespace URI>;<identifier> for every namespace except 0, and the bare <identifier> (such as i=58) for namespace 0. GUID identifiers are uppercase. It is the deduplication key for OPC UA nodes, so a node must always produce the same string.
opcua:statusCodestringThe OPC UA StatusCode (OPC 10000-4 §7.38), as its symbolic name such as BadNotReadable, of the connector's read of this node's data, written only when it isn't Good. On an opcua:Property it explains the value: a failed read leaves opcua:value out, and a value that can't be decoded is kept undecoded. On a type vertex it says why the type couldn't be read, leaving a placeholder with only opcua:nodeId.
organizationIdstringYesThe id of the organization that owns the entity.
seeAlsostring
systemTypeArray<Object>A system type of the system the entity is associated.
typeArray<Object>YesThe entity's types or classes. The types are determined within the class hierarchy. This is an stringified alias for rdf:type.

Relationships​

RelationshipTargetsInverseCardinalityNotes
opcua:componentOfopcua:Object, opcua:Variableopcua:hasComponent0..*The node this node is a component of: the inverse of opcua:hasComponent, OPC UA's ComponentOf (OPC 10000-5 §11.7).
opcua:hasComponentopcua:Variableopcua:componentOf0..*transitive, canonical
A HasComponent reference (OPC 10000-3 §7.7), or any other Aggregates subtype except HasProperty: the target is a part of the source. An Object may have Object and Variable components; a Variable may have only Variable components. These references never form loops.
opcua:hasDataTypeopcua:DataTypeopcua:isDataTypeOf0..1transitive, canonical
From a Variable, Property or opcua:Field to the opcua:DataType of what it holds: the DataType attribute (OPC 10000-3 §5.6.2) of a Variable or Property, or StructureField.DataType (§8.51) of a field. OPC UA has no such reference: each holds the DataType's NodeId, and the edge resolves it to the DataType's vertex.
opcua:hasEnumValueopcua:EnumValueopcua:isEnumValueOf0..*transitive, canonical
From a MultiStateDiscreteType or MultiStateValueDiscreteType Variable to each entry of its EnumStrings or EnumValues Property (OPC 10000-8 §5.3.3), or from an enumeration or OptionSet opcua:DataType to each EnumField of its EnumDefinition (OPC 10000-3 §8.50). OPC UA has no such reference: these are array values, and each entry becomes an opcua:EnumValue vertex.
opcua:hasPropertyopcua:Propertyopcua:isPropertyOf0..*transitive, canonical
A HasProperty reference (OPC 10000-3 §7.8) from an Object or Variable to one of its Properties. A standard Data Access Property becomes part of its Variable instead: EngineeringUnits, EURange, TrueState and FalseState as fields, EnumStrings and EnumValues as opcua:EnumValue vertices.
opcua:hasTypeDefinitionopcua:VariableTypeopcua:isTypeDefinitionOf0..1transitive, canonical
A HasTypeDefinition reference (OPC 10000-3 §7.13) from an Object to its opcua:ObjectType, or from a Variable to its opcua:VariableType. Every Object and Variable has exactly one. A Property has none, because its type is always PropertyType.
Inherited relationships (11)
RelationshipTargetsInverseCardinalityNotes
contributesPropertyMetahasPropertyContributedFrom0..*transitive, canonical
Mapped's internal relationship indicating that a vertex is contributing a property/value to another vertex.
hasExtendedPropertyExtendedProperty0..*transitive, canonical
The entity's customer-defined extended properties, one node per key-value pair.
hasGeneratedArtifactOpenUSD_LayerisGeneratedFrom0..*The layers generated from this source.
hasIdentityIdentity0..*transitive, canonical
hasPrimBindingOpenUSD_Prim_BindingisPrimBindingOf0..*transitive, canonical
Attaches a prim address. Used directly on an entity for pure addressing that carries no physical claim, and on a Representation or level-of-detail heuristic to realise it in USD.
hasPropertyBagPropertyBag0..*transitive, canonical
isConstraintTargetSpatial_ConstraintconstrainsAgainst0..*The constraints evaluated against this representation or entity.
isMigratedFromEntityisMigratedTo0..*The entity this entity has been migrated from. This entity supersedes the source.
isMigratedToEntityisMigratedFrom0..*transitive, canonical
The entity this entity has been migrated to. The target supersedes this entity.
isSubjectOfConstraintSpatial_ConstraintconstrainsSubject0..*The constraints this entity is the subject of.
opcua:organizedByopcua:Object, opcua:Serveropcua:organizes0..*The Object or server that groups this node: the inverse of opcua:organizes, OPC UA's OrganizedBy (OPC 10000-5 §11.6).

Referenced by​

Classes whose own relationships point at opcua:Variable.

Something wrong or missing on this page? Propose a change to opcua:Variable.