skillfed

rfc3987-syntax

Helper functions to syntactically validate strings according to RFC 3987.

rfc3987-syntax Permissive license MIT AGING 1 v1.1.0 released

Install

rfc3987-syntax on PyPI

pip

pip install rfc3987-syntax

uv

uv add rfc3987-syntax

poetry

poetry add rfc3987-syntax

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 1 — lark
Maintenance aging — 391 days since the last release
Last repo commit
First released
Popularity one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: rfc3987_syntax-1.1.0-py3-none-any.whl

Keywords: RFC 3987, RFC3987, parser, syntax, validator

Development Status :: 3 - AlphaIntended Audience :: DevelopersIntended Audience :: EducationIntended Audience :: Information TechnologyIntended Audience :: Science/ResearchIntended Audience :: System AdministratorsLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.9Topic :: Scientific/EngineeringTopic :: Software DevelopmentTopic :: Utilities

About rfc3987-syntax

from the package's own PyPI description — quoted content, verbatim

rfc3987-syntax

Helper functions to parse and validate the syntax of terms defined in RFC 3987 — 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, 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, which allows reuse in both open source and commercial software.

This project:

  • ❌ Does not depend on the rfc3987 Python package (GPL-licensed)
  • ✅ Uses...

Read as markdown · JSON record · Source repository · Homepage · Docs

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

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.

Low friction: pure-Python wheel with a single runtime dependency (lark). Maintenance signal is aging—last release was 391 days ago and the repository has minimal activity (1 star), though it remains unarchived and the project is still in Alpha status.

MIT license permits use in both open source and proprietary software without restriction. The package explicitly avoids depending on the GPL-licensed rfc3987 package, making it suitable for commercial deployments.

Usage

pip install rfc3987-syntax

from rfc3987_syntax import is_valid_syntax_iri

if is_valid_syntax_iri('http://github.com'):
    print('Valid IRI syntax')

Requires Python 3.9 or later.

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.

Needs verification

  • Whether the Lark dependency's own security posture and update frequency meet your project's maintenance expectations.
  • Whether syntax-only validation (without Unicode normalization, BiDi, or port-range checks) is sufficient for your IRI handling requirements.
  • Real-world test coverage and bug-report history beyond the fact sheet's visibility.
RFC 3987 IRI syntax validatorinternationalized resource identifier parserIRI validation libraryRFC 3987 ABNF grammarURI syntax checkerIRI reference validationRFC 3986 3987 parser

Similar packages