Skip to main content

Treat Requirements Like Code (TRLC)

TRLC is a domain-specific language developed at BMW for writing (and linking) requirements with meta-data.

The repository contains:

The implementation is not very fast, but designed to be pedantically correct in following the language definition. The tools also include a powerful static analysis tool to find issues with types and user-defined check rules.

The Python implementation can be used for several purposes:

  • It can be used to validate other TRLC implementations.

  • It can be used to validate a body of requirements (e.g. a CI check that all requirements are well formed)

  • The API can be used to write other tools based on TRLC (for example a tool to render the requirements in HTML, a tool to diff requirements or perform an impact analysis, or a tool to perform software traceability, etc.)

Documentation

For normal users

For advanced users

For TRLC developers

Tools Available

  • TRLC_RST: Convert TRLC Requirements for Sphinx Build
  • Converters: Multiple converters from TRLC to other file formats. The tool suite is maintained by NewTec GmbH.

Dependencies

Run-time

  • 3.8 <= Python3 <= 3.14
  • PyVCG
  • PyPI CVC5(GNU/Linux only) (required when using the --verify option)

Acknowledgements

Special thanks to Florian Schanda for his many valuable contributions to this repository.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

trlc-3.0.1-py3-none-any.whl (99.3 kB view details)

Uploaded Python 3

File details

Details for the file trlc-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: trlc-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 99.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for trlc-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 93621d8a856c63adec3ff588033c7649f635cca2305048ea7cc53bdcb6a0de18
MD5 63ba7707030f316c37a6f7010289e14a
BLAKE2b-256 cd0eeceed2de48be29c40408fb752e705915952827f93a8d32748e11d3604f28

See more details on using hashes here.

Provenance

The following attestation bundles were made for trlc-3.0.1-py3-none-any.whl:

Publisher: package.yml on bmw-software-engineering/trlc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

3.0.1 This release

1 file

3.0.0

1 file

2.0.5

1 file

2.0.4

1 file

2.0.3

1 file

2.0.2

1 file

2.0.1

1 file

2.0.0

1 file

1.2.2

2 files

1.2.1

2 files

1.1.10

3 files

1.1.9

3 files

1.1.8

3 files

1.1.7

3 files

1.1.6

3 files

1.1.5

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.0.13

2 files

1.0.12

2 files

1.0.11

2 files

1.0.10

2 files

1.0.9

2 files

1.0.8

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page