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.13.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.13-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: corpus2alpino-0.3.13.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for corpus2alpino-0.3.13.tar.gz
Algorithm Hash digest
SHA256 249b2dacb2e33d468a6f3955d655e65b07c5f3e49c4a44e3536c4029cdda1be0
MD5 2704eac7c25210057923e706ec820c9f
BLAKE2b-256 58aab07f1ef0a2abb62c0011a2d32d8721b53ee2afa777ef630d308b7479ef15

See more details on using hashes here.

File details

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

File metadata

  • Download URL: corpus2alpino-0.3.13-py3-none-any.whl
  • Upload date:
  • Size: 31.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for corpus2alpino-0.3.13-py3-none-any.whl
Algorithm Hash digest
SHA256 f78a622026f0e3921450ada1a8958b10f8adf30343521d447d826a557e9fde20
MD5 06316662d184e9d17f5ae7d3fef5fdcf
BLAKE2b-256 44542dd210327a5db175128c2b418df323b7c7c8dbe63df75a6973e2e434e964

See more details on using hashes here.

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