ASAM ODSBox
The ODSBox is a lightweight Python wrapper on the standardized ASAM ODS REST API. Using intuitive JAQuel queries and pandas.DataFrames the ODSBox makes dealing with ASAM ODS data in Python more fun.
from odsbox.con_i import ConI
with ConI(url="https://MY_SERVER/api", auth=("sa", "sa")) as con_i:
measurements = con_i.query_data(
{
"AoMeasurement": {"name": {"$like": "*"}},
"$attributes": {"name": 1, "id": 1},
"$options": {"$rowlimit": 50},
}
)
print(measurements)
Documentation
Communication
The ASAM ODS server is called using HTTP calls defined by the ASAM ODS standard.
The messages are encode/decoded using ASAM ODS protobuf message definitions provided at
ASAM-ODS-Interfaces. As content type application/x-asamods+protobuf
is used.
JAQuel Queries
JAQuel allows you to query your data in a simple and intuitive way inspired by MongoDB Query Language (MQL). The definition of query expression as JSON easily integrates with the Python language – a win-win situation.
Installation
ODSBox is available on.
github |
|
PyPI |
|
github docs |
# access ASAM ODS server
pip install odsbox
# access ASAM ODS EXD-API plugin
pip install odsbox[exd-data]