An ASD-STE100 Issue 9 library for natural language processing.
Project description
biz.dfch.AsdSte100Nlp
Introduction
This is a Python library that implements natural language processing helpers
for ASD-STE100 Issue 9 (Simplified Technical
English) tooling. The Nlp class is a plain domain object, reusable
directly or as the backend for other tools; a typer-based CLI (nlp) is
also included for interactive/scripted use.
The Nlp class is constructed from a
biz-dfch-asdste100vocab
Vocab instance and currently offers synonym(value), a WordNet-based
(nltk) thesaurus lookup cross-referenced against the vocabulary. The
WordNet 3.0 corpus is vendored as static package data, so lookups work fully
offline -- nltk.download() is never called at runtime.
CLI usage
Install the dev dependencies (see below), then run the synonym command:
uv run nlp synonym quick
By default, the built-in STE100 vocabulary is searched. Add your own JSONL
vocabulary file(s) with --file (repeatable), and toggle the built-in
vocabulary/technical words with --ste100/--no-ste100 and
--technical/--no-technical:
uv run nlp synonym quick --no-ste100 --file ./vocab.jsonl
Use --help on the application or any sub-command for the full option list,
and --env to load a specific .env file.
Related projects in this family:
- biz.dfch.AsdSte100Vocab — the ASD-STE100 Issue 9 vocabulary
- biz.dfch.AsdSte100Rules — the ASD-STE100 Issue 9 ruleset
- biz.dfch.AsdSte100Lookup — an interactive lookup CLI
- biz.dfch.AsdSte100Mcp — an MCP server exposing vocabulary/rules lookup
Installation
biz-dfch-asdste100nlp is on PyPI. Create a virtual environment and install the library with pip:
pip install biz-dfch-asdste100nlp
Or install with uv:
uv add biz-dfch-asdste100nlp
Development
Install the dev dependencies:
uv sync --extra dev
# or
uv pip install -e ".[dev]"
# or
pip install -e ".[dev]"
Run the checks:
uv run --frozen ruff format --check
uv run --frozen ruff check
uv run --frozen pylint $(git ls-files '*.py') || true
uv run --frozen python -m unittest discover -v -s tests -t . -p "test_*.py"
See CONTRIBUTING.md for more information.
Make a Release
1. Make sure that all tests are satisfactory
Before you make the release, make sure the CI pipeline is green on the dev branch:
uv run --frozen ruff format --check
uv run --frozen ruff check
uv run --frozen pylint $(git ls-files '*.py') || true
uv run --frozen python -m unittest discover -v -s tests -t . -p "test_*.py"
2. Increase the version
Update the version in pyproject.toml:
version = "x.y.z"
3. Commit and push to dev
git add pyproject.toml
git commit -m "chore: bump version to vx.y.z"
git push origin dev
4. Merge dev into main
git checkout main
git merge dev
git push origin main
5. Create and push a version tag
This will create a binary artifact of the application and add it to the release.
export VERSION=x.y.z
git tag v${VERSION}
git push origin v${VERSION}
Then, select the dev branch to continue your work.
git checkout dev
Pushing the tag automatically triggers the publish.yml workflow, which will:
- build the
sdistandwheelwithuv build(this step creates the artifact) - create a GitHub Release with auto-generated release notes
- upload the files as a release artifact (this step adds the artifact to the release)
License
This library is licensed under the GNU Affero General Public License. See LICENSE for more information.
ASD-STE100 Simplified Technical English (Standard for Technical Documentation), Issue 9
Copyright 2025 Aerospace, Security and Defence Industries Association of Europe (ASD), https://www.asd-europe.org.
This library or the maintainer is not affiliated with ASD. ASD does not endorse this library or the maintainer.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file biz_dfch_asdste100nlp-0.1.0.tar.gz.
File metadata
- Download URL: biz_dfch_asdste100nlp-0.1.0.tar.gz
- Upload date:
- Size: 10.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1fb0f1fb31a7954503c0a0912574a2b8f357b9408dd9bb389dc6060ff7ff99b9
|
|
| MD5 |
18f03cb3319237985819da125b1b31c8
|
|
| BLAKE2b-256 |
92f56cc57d56c8e6aa86a1b8d65d0529e62afc45a0e0305654f3791ce40eecc0
|
Provenance
The following attestation bundles were made for biz_dfch_asdste100nlp-0.1.0.tar.gz:
Publisher:
publish.yml on dfch/biz.dfch.AsdSte100Nlp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
biz_dfch_asdste100nlp-0.1.0.tar.gz -
Subject digest:
1fb0f1fb31a7954503c0a0912574a2b8f357b9408dd9bb389dc6060ff7ff99b9 - Sigstore transparency entry: 2314649589
- Sigstore integration time:
-
Permalink:
dfch/biz.dfch.AsdSte100Nlp@56065b5c3c2cd69776373899e262190d742c599b -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/dfch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@56065b5c3c2cd69776373899e262190d742c599b -
Trigger Event:
push
-
Statement type:
File details
Details for the file biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc214f694833d593aeb27f68a78b74f49c536a0d0970bcace9a1d98db1e05256
|
|
| MD5 |
489fe4266f2f697e27011dfd3d0c60f6
|
|
| BLAKE2b-256 |
840c7196d4c99277d2f7ceb1ecfdb1371819770eef7fc73837bb08ee5a224637
|
Provenance
The following attestation bundles were made for biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on dfch/biz.dfch.AsdSte100Nlp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl -
Subject digest:
dc214f694833d593aeb27f68a78b74f49c536a0d0970bcace9a1d98db1e05256 - Sigstore transparency entry: 2314649698
- Sigstore integration time:
-
Permalink:
dfch/biz.dfch.AsdSte100Nlp@56065b5c3c2cd69776373899e262190d742c599b -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/dfch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@56065b5c3c2cd69776373899e262190d742c599b -
Trigger Event:
push
-
Statement type: