Skip to main content

Converts FoLiA and TEI files to Alpino XML files

Project description

Actions Status

PyPi/corpus2alpino

CHAT, FoLiA, PaQu metadata, plaintext and TEI to Alpino XML or PaQu metadata format

Converts CHAT, FoLiA, PaQu metadata, plaintext and TEI XML files to Alpino XML files. Each sentence in the input file is parsed separately.

Usage

Command Line

pip install corpus2alpino
corpus2alpino -s localhost:7001 folia.xml -o alpino.xml

Or from project root:

python -m corpus2alpino -s localhost:7001 folia.xml -o alpino.xml

Library

from corpus2alpino.converter import Converter
from corpus2alpino.annotators.alpino import AlpinoAnnotator
from corpus2alpino.collectors.filesystem import FilesystemCollector
from corpus2alpino.targets.memory import MemoryTarget
from corpus2alpino.writers.lassy import LassyWriter

alpino = AlpinoAnnotator("localhost", 7001)
converter = Converter(FilesystemCollector(["folia.xml"]),
    # Not needed when using the PaQuWriter
    annotators=[alpino],
    # This can also be ConsoleTarget, FilesystemTarget
    target=MemoryTarget(),
    # Set to merge treebanks, also possible to use PaQuWriter
    writer=LassyWriter(True))

# get the Alpino XML output, combined into one treebank XML file
parses = converter.convert()
print(''.join(parses)) # <treebank><alpino_ds ... /></treebank>

Enrichment

It is possible to add custom properties to (existing) Lassy/Alpino files. This is done using a csv-file containing the node attributes and values to look for and the custom properties to assign.

For example:

python -m corpus2alpino tests/example_lassy.xml -e tests/enrichment.csv -of lassy

See corpus2alpino.annotators.enrich_lassy for more information.

Development

Unit Test

python -m unittest

Upload to PyPi

See: https://packaging.python.org/tutorials/packaging-projects/#generating-distribution-archives

Make sure setuptools and wheel are installed. Then from the virtualenv:

pip install build
python -m build
twine upload dist/*

Requirements

Installation Instructions for Ubuntu

sudo apt install libfolia-dev libxml2-dev
pip install -r requirements.txt

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

corpus2alpino-0.3.14.tar.gz (23.2 kB view details)

Uploaded Source

Built Distribution

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

corpus2alpino-0.3.14-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

Details for the file corpus2alpino-0.3.14.tar.gz.

File metadata

  • Download URL: corpus2alpino-0.3.14.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for corpus2alpino-0.3.14.tar.gz
Algorithm Hash digest
SHA256 962430a4e756470863baffcc1f5461924120f99d06bcf5c724a29dba8e33bef6
MD5 f3042c77c9ec1c22f591c851857cbde0
BLAKE2b-256 cbf7a1ac8c2046559ac9383762c03a1b021dd0578d31482dc16b9abe92496d6e

See more details on using hashes here.

Provenance

The following attestation bundles were made for corpus2alpino-0.3.14.tar.gz:

Publisher: python-publish.yml on CentreForDigitalHumanities/corpus2alpino

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

File details

Details for the file corpus2alpino-0.3.14-py3-none-any.whl.

File metadata

  • Download URL: corpus2alpino-0.3.14-py3-none-any.whl
  • Upload date:
  • Size: 31.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for corpus2alpino-0.3.14-py3-none-any.whl
Algorithm Hash digest
SHA256 0762a00537a74839d856467dd68ccf9d83f2cfc07f04fd2dcac6ef5f7e9733f0
MD5 43dc25b8264c96338eac5ef0547c8a81
BLAKE2b-256 1be25968cfd1e26340144654a66429d83a3436802eeeca76a90d81d61febe62d

See more details on using hashes here.

Provenance

The following attestation bundles were made for corpus2alpino-0.3.14-py3-none-any.whl:

Publisher: python-publish.yml on CentreForDigitalHumanities/corpus2alpino

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