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.10 <= 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.

Metadata

Release files for trlc 3.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for trlc 3.1.0
File Interpreter ABI Platform
trlc-3.1.0-py3-none-any.whl Python 3 none any Details

Release files / trlc-3.1.0-py3-none-any.whl

Download URL trlc-3.1.0-py3-none-any.whl
Size 109.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2c42f7b4306266019306c540b01a72844b96ceccbf68e0481a510a42f45927a4
BLAKE2b-256 checksum
How to use checksums
150fd0a0edd9d82a40d092e8379f6d54b493e288c8674ae5b3dac095e8e10ab8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

3.1.0 This release

1 release file

3.0.1

1 release file

3.0.0

1 release file

2.0.5

1 release file

2.0.4

1 release file

2.0.3

1 release file

2.0.2

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.2.2

2 release files

1.2.1

2 release files

1.1.10

3 release files

1.1.9

3 release files

1.1.8

3 release files

1.1.7

3 release files

1.1.6

3 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.0.13

2 release files

1.0.12

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release 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