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.11.tar.gz (22.5 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.11-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for corpus2alpino-0.3.11.tar.gz
Algorithm Hash digest
SHA256 2c7a58b9d630a6fac150fed2189cb2ad7a1da846638021af31b440dbc0ebea66
MD5 0588661e0295caca1eab949761739318
BLAKE2b-256 d921f26b25fe2ed877794342b61bf7716610ce53f1cd3ad326c00199771fd833

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for corpus2alpino-0.3.11-py3-none-any.whl
Algorithm Hash digest
SHA256 51c4f5f276b2b916eb8642eaf8f8e530d0a3ae9ea8b5ec1affb103eab3195fc3
MD5 846e958e9789a16da7ae5b863cde3630
BLAKE2b-256 6ade39d964dc2aa971ebf2b8ae1ac81d6d6ae53370cd25b4213e36d9b799b2a1

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