--- id: udtools version: "0.2.8" license: GPL-2.0-or-later license_treatment: copyleft maintenance: active --- # udtools — Python tools for Universal Dependencies License: copyleft · Maintenance: active · Downloads: 251.0K/mo ## What it is and what it does udtools provides the official validator and scoring tools for Universal Dependencies, a cross-linguistic annotation framework. It reads CoNLL-U formatted files and checks compliance with UD specifications across multiple validity levels, from basic file structure to detailed linguistic annotation rules. The package also includes the official parsing scorer used in CoNLL and IWPT shared tasks. The validator can be invoked from the command line or imported as a Python library. When used programmatically, it returns a State object containing validation results that can be inspected for errors and warnings, optionally suppressing console output. The validator supports language-specific checks and can load custom data files from a local UD tools repository, though the pip-installed version may lag behind the authoritative specification. Use it for: - Validate CoNLL-U treebank files before submission to Universal Dependencies releases or shared task competitions. - Integrate validation into a linguistic annotation pipeline to catch format and specification violations early. - Score dependency parsing system outputs against gold-standard UD treebanks in research or evaluation workflows. - Check compliance of custom language-specific UD annotations with the framework's rules and feature inventories. - Batch-validate multiple treebank files and collect structured error reports for quality assurance. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Validates CoNLL-U format files against Universal Dependencies specifications and scores dependency parsing results from shared tasks. Yes, if you work with Universal Dependencies data or need to validate CoNLL-U files. The package is actively maintained, has low install friction, and provides the official validator and scorer. The copyleft license is a consideration for proprietary work. Note that pip-installed versions may not have the most current language-specific data; clone the authoritative repository if you need cutting-edge specifications. ## Install pip install udtools uv add udtools poetry add udtools ## Installing udtools Before you install: Low install friction with only two runtime dependencies (udapi and regex). Active maintenance with a recent release 57 days ago and ongoing repository activity. License in practice: GPL-2.0-or-later copyleft license means any derivative work or distribution must also be open-source under a compatible license; suitable for research and open-source projects but requires careful consideration in proprietary contexts. Quickstart: pip install udtools from udtools import Validator validator = Validator(lang='la', output=None) state = validator.validate_files(['la_proiel-ud-train.conllu']) if state: print('Validation passed') else: print('Validation failed') Requires Python 3.10 or later. Verify before relying: - Whether language-specific data files bundled with pip releases stay current with the authoritative UD specification - Performance characteristics when validating very large treebanks or many files in sequence ## Package facts - License: GPL-2.0-or-later (copyleft) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 251.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags universal dependencies validator, conllu file validation, ud parsing scorer, dependency parsing evaluation, conll-u format checker, linguistic annotation validator, ud treebank validation, nlp-tools, data-validation, linguistic-annotation [View on SkillFed](https://skillfed.io/packages/udtools) · [View on PyPI](https://pypi.org/project/udtools/)