--- id: rfc3987-syntax version: "1.1.0" license: MIT license_treatment: permissive maintenance: aging --- # rfc3987-syntax β€” Helper functions to syntactically validate strings according to RFC 3987. License: permissive Β· Maintenance: aging Β· Popularity: top 1,000 on PyPI ## Install pip install rfc3987-syntax uv add rfc3987-syntax poetry add rfc3987-syntax ## Description # rfc3987-syntax Helper functions to parse and validate the **syntax** of terms defined in **[RFC 3987](https://www.rfc-editor.org/info/rfc3987)** β€” the IETF standard for Internationalized Resource Identifiers (IRIs). ## 🎯 Purpose The goal of `rfc3987-syntax` is to provide a **lightweight, permissively licensed Python module** for validating that strings conform to the **ABNF grammar defined in RFC 3987**. These helpers are: - βœ… Strictly aligned with the **syntax rules of RFC 3987** - βœ… Built using a **permissive MIT license** - βœ… Designed for both **open source and proprietary use** - βœ… Powered by [Lark](https://github.com/lark-parser/lark), a fast, EBNF-based parser > 🧠 **Note:** This project focuses on **syntax validation only**. RFC 3987 specifies **additional semantic rules** (e.g., Unicode normalization, BiDi constraints, percent-encoding requirements) that must be enforced separately. ## πŸ“„ License, Attribution, and Citation **`rfc3987-syntax`** is licensed under the [MIT License](LICENSE), which allows reuse in both open source and commercial software. This project: - ❌ Does **not** depend on the `rfc3987` Python package (GPL-licensed) - βœ… Uses... ## AI interpretation β€” verify before relying Validates that strings conform to the ABNF syntax rules defined in RFC 3987 for Internationalized Resource Identifiers (IRIs), using Lark-based parsing to check syntax onlyβ€”not semantic rules like Unicode normalization or BiDi constraints. Verdict: A lightweight, permissively licensed RFC 3987 syntax validator suitable for projects needing IRI validation without GPL entanglement. Low install friction and no known vulnerabilities, but aging maintenance (391 days since last release, Alpha status) and minimal community adoption warrant caution for production use. Best suited for niche use cases where syntax-only validation suffices and semantic rules are handled separately. [View on SkillFed](https://skillfed.io/packages/rfc3987-syntax) Β· [View on PyPI](https://pypi.org/project/rfc3987-syntax/)