Skip to main content

An ASD-STE100 Issue 9 library for natural language processing.

Project description

biz.dfch.AsdSte100Nlp

ASD-STE100: Issue 9 License: AGPL v3 Python Pylint and unittest TestPyPI version PyPI version PyPI downloads

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:

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 sdist and wheel with uv 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


Download files

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

Source Distribution

biz_dfch_asdste100nlp-0.1.0.tar.gz (10.7 MB view details)

Uploaded Source

Built Distribution

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

biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl (10.8 MB view details)

Uploaded Python 3

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

Hashes for biz_dfch_asdste100nlp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1fb0f1fb31a7954503c0a0912574a2b8f357b9408dd9bb389dc6060ff7ff99b9
MD5 18f03cb3319237985819da125b1b31c8
BLAKE2b-256 92f56cc57d56c8e6aa86a1b8d65d0529e62afc45a0e0305654f3791ce40eecc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for biz_dfch_asdste100nlp-0.1.0.tar.gz:

Publisher: publish.yml on dfch/biz.dfch.AsdSte100Nlp

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

File details

Details for the file biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for biz_dfch_asdste100nlp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc214f694833d593aeb27f68a78b74f49c536a0d0970bcace9a1d98db1e05256
MD5 489fe4266f2f697e27011dfd3d0c60f6
BLAKE2b-256 840c7196d4c99277d2f7ceb1ecfdb1371819770eef7fc73837bb08ee5a224637

See more details on using hashes here.

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

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page