HQL

HQL – HighQSoft Query Language

A Faster Way to Query ASAM ODS Test Data

HQL, the HighQSoft Query Language, is a query language and client library for ASAM ODS 5 and ASAM ODS 6 systems and ASAM ATFx files. It turns generic ASAM ODS interfaces into compact, readable queries that are easier to build, reuse, and maintain across different application models.

HQL is designed for three audiences. Analysts and engineers use it to explore metadata and measured data quickly, without building export tooling first. Developers use it to build integrations and applications with a structured query builder, so queries can be generated and validated in code. Data teams use it to connect ASAM ODS data to MATLAB and Python workflows, with results that fit analysis tasks without manual preparation.

HQL is available as a Java library, a REST web service, and a command line client, and it is also integrated into HighQSoft products. It supports ASAM ODS 5 and ASAM ODS 6, and it can read ASAM ATFx, which helps teams keep one consistent query layer across mixed system landscapes.

Key Capabilities

Key Capabilities

Explore data in your domain language

HQL lets engineers and analysts query ASAM ODS data using the entities and terms they recognize from their domain and application model. This hides the generic ASAM ODS complexity and makes it easier to ask questions, validate assumptions, and find relevant measurements quickly. It works naturally for interactive exploration using the CLI, in notebooks, or in short scripts, so teams can iterate fast without building export tooling first.

Build integrations and applications faster

HQL provides a structured query builder so developers can assemble and adapt queries in code without fragile string construction. This makes client logic easier to maintain, supports dynamic queries for different models and projects, and reduces development effort when building gateways, services, and custom applications. Comfort functions and validation patterns help teams ship faster while keeping query logic consistent and easier to review.

Connect MATLAB and Python without manual exports

HQL acts as a universal access layer because it is available as a Java library and as a REST web service. Teams can standardize access through the service for shared, installation free usage, or embed HQL where Java based integration fits best. This enables script driven analysis and automation in MATLAB and Python with results that are ready for computation and reporting, without detours through manual file exports.

Features

Features

Compatibility and migration

HQL supports ASAM ODS 5 and ASAM ODS 6 and can read ASAM ATFx. This helps teams keep one consistent query layer across mixed server landscapes and simplifies transitions between server generations, because query usage can stay stable while underlying connectivity changes.

Authentication and enterprise access

HQL supports standard authentication mechanisms used in ASAM ODS environments and can integrate with enterprise authentication patterns where available, including OAuth based access with supported servers. This helps teams provide consistent access for tools, scripts, and services while keeping centralized access control in place.

Transactions and write support

HQL supports realistic client workflows that mix reading, updates, and controlled write back. Improved transaction handling provides flexibility for applications and services that need predictable session behavior, and it enables teams to implement update scenarios without having to recreate low level transaction patterns.

HQL Syntax

HQL Syntax

ASAM ODS interfaces are generic because application models vary, which often leads to verbose calling sequences for simple requests. HQL encapsulates this complexity into compact, SQL like queries that are easy to read, easy to reuse, and consistent across different ASAM ODS systems.

A good way to present this is a short HQL query first, followed by the result shape, and then the equivalent API code as a reference for developers. For example, a query such as hql aounit.name expresses a common request in one line, while the equivalent ASAM ODS call requires multiple steps to resolve model elements, attributes, and query structures.

JAVA code example

AoSession aoSession = ...
// Get the model structure.
ApplicationStructure as = aoSession.getApplicationStructure();
ApplElemAccess aea = aoSession.getApplElemAccess();

// Get the application element.
ApplicationElement ae = as.getElementsByBaseType("aounit")[0];
T_LONGLONG aeId = ae.getId();

// Get the name attribute.
ApplicationAttribute attr = ae.getAttributeByBaseName("name");
String aeName = attr.getName();

// Create the query structure.
QueryStructureExt qse = new QueryStructureExt();

 

// Request the name of the unit. qse.anuSeq = new SelAIDNameUnitId[1];
AIDName aidName = new AIDName(aeId, aeName);
qse.anuSeq[0] = new SelAIDNameUnitId(aidName,
new T_LONGLONG(), AggrFunc.NONE);

 

// Initialize the other members of the structure.
qse.condSeq = new SelItem[0];
qse.groupBy = new AIDName[0];
qse.joinSeq = new JoinDef[0];
qse.orderBy = new SelOrder[0];

 

// Get the result.
ResultSetExt[] res = aea.getInstancesExt(qse, 0);

 

// Get the names.
String[] names = res[0].firstElems[0].values[0].value.u.stringVal();

Deployment Options

Deployment Options

HQL as a web service

Run HQL as a centrally available REST endpoint that provides shared access to ASAM ODS data across the organization. This is ideal for analysts using CLI, notebooks, or short scripts, and for MATLAB and Python workflows, because users do not need local installation and teams can standardize one query gateway.

HQL as a Java library

Use HQL as an embedded library when you build client applications, gateways, or integration services. The structured query builder supports dynamic query generation in code and helps keep query logic maintainable across different application models and projects.

HQL as a standalone ASAM ODS client

Use the command line client for quick exploration, troubleshooting, and prototyping. It is a practical way to test queries, inspect results, and iterate before you embed the same query patterns into scripts, notebooks, or applications.

Customers that use HQL

HQL highqsoft query language test data query MATLAB asam ods query

HighQSoft GmbH

Black-und-Decker-Straße 17b
D-65510 Idstein