General data model for measurement data applications — a zero-dependency Java library that
provides core interfaces and default implementations for hierarchical measurement data structures:
Element, Attribute, Instance, Relation, DataType, and related value types.
The model is intentionally generic and maps naturally to ASAM ODS measurement data standard. It is created mainly to support ASAM ODS standardized measurement data but can be used for any other types of measurement data without the need of having ASAM ODS IDLs or specifications involved. If required, users of this library may extend the provided default implementations to fit their requirements.
This project is licensed under the terms of the Apache License, Version 2.0.
| Tool | Version |
|---|---|
| Java | 17+ |
| Maven | 3.9+ |
Add the following dependency to your Maven project:
<dependency>
<groupId>com.peak-solution</groupId>
<artifactId>datamodel</artifactId>
<version>1.0.0</version>
</dependency># compile + unit tests
mvn verify
# install into local Maven repo (needed by consuming projects during development)
mvn install
# license compliance check (confirms zero runtime deps)
mvn verify -Plicense
# OWASP dependency vulnerability check
mvn verify -Powasp
# release to Maven Central (CI only – requires GPG key + Sonatype credentials)
mvn clean deploy -Prelease- Zero runtime dependencies — only JUnit 5 and AssertJ are present, both in
testscope. - All interfaces (
Element,Attribute,Instance,Relation,ModelAccess, …) are stable API. Default implementations (Default*) are convenience helpers and may evolve between minor versions.
Releases are signed with the Peak Solution CI signing key:
- Key ID:
0x06C84BD97E83C4FD - Fingerprint:
FDDE 0EF7 B130 2B9E C17B D3C9 06C8 4BD9 7E83 C4FD - Keyserver:
https://keys.openpgp.org
See KEYS.md for the full list of maintainer keys.