A
1: S
ap
V
2 •
1
1
8
© 2017 Telos Alliance - Rev 1.2
Message Overview
SapV2 syntax is based on Axia’s Lwcp specification for syntax, but with some additional features that allow for
object and property discovery and listing. As such, the Lwcp documentation can be a useful precursor to reading
this appendix.
All messages in SapV2 are case insensitive and end with a carriage return and line feed. Each SapV2 message may
consist of an operator, object path, list of properties, and list of system items. The operator and object path are
required. For example:
get Devices#0.AnalogNode#[tcp://172.16.1.81:93] Name, Description $TXID=555
In the message above:
•
Operator = get
•
ObjectPath = Devices#0.AnalogNode#[tcp://172.16.1.81:93]
•
Properties = Name, Description
•
System Items = $TXID=555
The list of possible operators are listed and described later in this document.
The object path represents branches of a tree similar to a file system path where the separator between each branch
is a period. Each branch consists of the branch type followed by the pound sign and the unique identifier for the
branch. In the example above, there are two branches:
•
Devices#0
•
AnalogNode#[tcp://172.16.1.81:93]
The branch type of the first branch is Devices and the identifier is 0. The second branch type is AnalogNode and the
identifier is [tcp://172.16.1.81:93]. The identifier for the second branch is wrapped in square brackets because the
identifier includes symbols that are reserved for object path segregation – namely the period. If a branch identifier
includes periods or the pound sign, the identifier must be wrapped in square brackets. Spaces are not allowed within
branch identifiers and therefore are not allowed within the object path.
Commas between properties are optional. Commas should not be used between system items.