Skip to main content

urban-json

Français · English

Portage Python du langage JSLT — JSON Stylesheet Language Transformations : un langage de transformation JSON → JSON piloté par template, initialement implémenté en .NET (Black-Beard-Sdk/jslt).

C'est le paquet cœur (moteur : parser, AST, interpréteur, JSONPath, 75 fonctions intégrées, extensibilité). Les entrées-sorties et la génération aléatoire sont des plugins séparés, découverts automatiquement une fois installés : urban-json-csv, urban-json-xml, urban-json-db, urban-json-http, urban-json-elastic, urban-json-files, urban-json-html, urban-json-excel, urban-json-phone, urban-json-random. Le composant d'édition urban-json-editor (Web Component <jslt-editor>) est également distribué à part.

from urban_json import JsltTemplate

template = JsltTemplate.parse('{ "name": $.user.name, "year": $.user.age + 1 }')
template.transform({"user": {"name": "Alice", "age": 30}})
# -> {'name': 'Alice', 'year': 31}

Installation

pip install urban-json

Unique dépendance d'exécution : antlr4-python3-runtime. Le parser généré est embarqué (aucun outil ANTLR ni Java requis pour utiliser la librairie).

Documentation

API

from urban_json import JsltTemplate

tpl = JsltTemplate.parse(source_str)   # compile (JsltSyntaxError si invalide)
tpl.transform(document)                # applique le template à un document
tpl.debug(document)                     # trace pas-à-pas (débogage)
tpl.to_source()                        # re-sérialise l'AST (ToString)

Extensibilité (ajouter/isoler/découvrir des fonctions, plugins via entry points urban_json.functions) : voir le guide, section Extensibilité.

Licence

Apache-2.0 (comme le projet .NET d'origine).

Metadata

Release files for urban-json 0.8.0

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

Source distribution (sdist)

Source distribution for urban-json 0.8.0
File Size Uploaded Provenance Actions
urban_json-0.8.0.tar.gz 219.6 kB With provenance Details for urban_json-0.8.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for urban-json 0.8.0
File Interpreter ABI Platform Actions
urban_json-0.8.0-py3-none-any.whl Python 3 none any Details for urban_json-0.8.0-py3-none-any.whl

Total release size: 401.7 kB

Release files / urban_json-0.8.0.tar.gz

Download URL urban_json-0.8.0.tar.gz
Size 219.6 kB
Tags Source
SHA-256 checksum
How to use checksums
354c5b4de841e3aea1f2ffefe41dd64e4ab174f32f457cedb729b3a3c873fa1f
BLAKE2b-256 checksum
How to use checksums
491e02206441e86bb3499e513b299448a6fb9e6d0c3e4bc37c7afa9d734e60e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 12, 2026.

Transparency log

Release files / urban_json-0.8.0-py3-none-any.whl

Download URL urban_json-0.8.0-py3-none-any.whl
Size 182.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
28bdbb4c1ac1449855514b8e15503f62a3489de6aaa0d4ebd168961d463d7454
BLAKE2b-256 checksum
How to use checksums
4c3cc106bb866e54536920e8c9921e86e6b011193b3bec2f2342c72a081a1214
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 12, 2026.

Transparency log

Security for urban-json 0.8.0

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.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for urban_json-0.8.0.tar.gz

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 Nov 12, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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