This article has been updated; see revision 3 article
The OPS Data XML file format is referred to as OPSDATAXML.
It was designed to provide an open storage mechanism for data from data acquisition systems (such as SCADA, LIMS, etc).
The data inside of OPSDATAXML files can be stored in raw or summary contexts.
There are three main XML trees to each file:
1. <SPEC> - This is the specification of the file. It contains information on how the file was built such as:
FIELD |
DESCRIPTION |
VALUE |
revision [attribute] |
The revision of the file format |
"2" |
collector [attribute] |
The identifier of collector or utility that generated the current file |
"0" when using software produced by third parties; otherwise unique identifier of collector software within HACH IIM software inventory (example "12108") |
context [attribute] |
The context of the data is either raw or summary |
"raw"/"summary" |
encrypted [attribute] |
Whether the <data> tree was encrypted or not. If True, 128-bit AES encryption algorithm was used. |
"false"/"true" |
compressed [attribute] |
Whether the <data> tree was compressed or not. If True, Zip compression algorithm was used and <data> was encoded using base-64 encoding. |
"false"/"true" |
content |
Link to this knowledge base article |
web page link |
Example:
2. <DATA> - This is the actual data from the source system. If encryption and/or compression is true, only this section will be encrypted and/or compressed. It contains the actual information such as:
FIELD |
RAW DESCRIPTION |
RAW EXAMPLE VALUE |
SUMMARY DESCRIPTION |
SUMMARY EXAMPLE VALUE |
r |
Beginning of a record |
[blank] |
Beginning of a record |
[blank] |
s |
Source server name |
KEPware.KEPserverEx.V4 |
OPS facility name |
OPSWWTUTOR |
t |
Tag name |
Channel_1.Device_1.R4 |
OPS VarID |
21 |
d |
UTC date & time |
2008-02-21T17:30:17Z |
UTC date & time |
2008-02-21T17:30:17Z |
v |
Raw value |
518 |
Summary value (avg, sum, ...) |
518 |
q |
Qualifiers (1) |
[blank] |
Qualifiers (1) |
= |
u |
Units (2) |
[blank] |
Units (2) |
mg/l |
c |
Comments |
[blank] |
Comments |
Verified reading .... |
a |
Approval level (3) |
[blank] |
Approval level (3) |
-1024 |
x |
Data Storage Extension |
[blank] |
Data Storage Extension |
<collectedby>Les Poyner</collectedby> |
Notes:
1. Qualifiers are typically: "<" - less than, "<=" - less than or equal to, ">" - greater than, ">=" - greater than or equal to, "=" - equal to, and "<>" - not equal to
2. Units are typical for SCADA & LIMS systems and include but not limited to: MGD, mg/l, lbs, Deg F, Deg C, lbs/day, MG, gal, SU, No/100ml, inches, ft, days, gpm, ppm, ppb, tons, Number, Fraction, %, #BOD/D/#ML, #/MG, col/100ml, ntu
3. Approval levels start with zero (0) and go negative. Typically 0 means final approval, and then -1024 is the next level below that, -2048 is the third level down and so on.
Examples:
Raw data example Summary data example
3. <TRACE> - A set of 0 or more trace records <r> that, in chronological order, contain information about which application touched the file. Required fields :
FIELD |
DESCRIPTION |
EXAMPLE VALUE |
audituser |
Who or what program wrote the data |
VIA_ODA2X |
audittimestamp |
UTC date time stamp |
2008-02-12T17:30:29Z |
apptitle |
Title of application writting data |
OPC DA to OPS XML |
appexename |
Executable name of application |
OPCDA2OPSXML |
appversion |
Version of application |
1.0.2 |
apppath |
Path of application |
.host\.....\OPCDA2OPSXML |
workstation |
Name of computer app is running on |
LT035-VMT10549 |
netuser |
Logon name of user running app |
ops |
ip |
IP address of computer |
10.66.6.172 |
winversion |
Windows OS version and build |
Windows NT 5.1.2600 |
Example of trace:
NOTE : For information about how to encrypt / compress / decrypt / decompress data of this format, contact OPS Systems.