Skip to main content

Utilty functions to work with TEI Documents

Project description

acdh-tei-pyutils

Github Workflow Tests Status PyPI version codecov

Utilty functions to work with TEI Documents

install

run pip install acdh-tei-pyutils

usage

parse an XML/TEI Document from and URL, string or file:

from acdh_tei_pyutils.tei import TeiReader

doc = TeiReader("https://raw.githubusercontent.com/acdh-oeaw/acdh-tei-pyutils/master/acdh_tei_pyutils/files/tei.xml")
print(doc.tree)
>>> <Element {http://www.tei-c.org/ns/1.0}TEI at 0x7ffb926f9c40>

doc = TeiReader("./acdh_tei_pyutils/files/tei.xml")
doc.tree
>>> <Element {http://www.tei-c.org/ns/1.0}TEI at 0x7ffb926f9c40>

write the current XML/TEI tree object to file

doc.tree_to_file("out.xml")
>>> 'out.xml'

see acdh_tei_pyutils/cli.py for further examples

command line scripts

Batch process a collection of XML/Documents by adding xml:id, xml:base next and prev attributes to the documents root element run:

add-attributes -g "/path/to/your/xmls/*.xml" -b "https://value/of-your/base.com"
add-attributes -g "../../xml/grundbuecher/gb-data/data/editions/*.xml" -b "https://id.acdh.oeaw.ac.at/grundbuecher"

Write mentions as listEvents into index-files:

mentions-to-indices -t "erwähnt in " -i "/path/to/your/xmls/indices/*.xml" -f "/path/to/your/xmls/editions/*.xml"

Write mentions as listEvents ot index-files and copy enriched index entries into fil

denormalize-indices -f "../../xml/schnitzler/schnitzler-tagebuch-data-public/editions/*.xml" -i "../../xml/schnitzler/schnitzler-tagebuch-data-public/indices/*.xml"
denormalize-indices -f "./data/*/*.xml" -i "./data/indices/*.xml" -m ".//*[@key]/@key" -x ".//tei:title[@level='a']/text()"
denormalize-indices -f "./data/*/*.xml" -i "./data/indices/*.xml" -m ".//*[@key]/@key" -x ".//tei:title[@level='a']/text()" -b pmb2121 -b pmb10815 -b pmb50

Register handle-ids and add them as tei:idno elements:

add-handles -g "../../xml/grundbuecher/gb-data/data/editions/*.xml" -user "user12.3456-01" -pw "verysecret" -hixpath ".//tei:publicationStmt"

develop

  • install dev-dependencies: pip install -r requirements_dev.txt
  • install local package pip install -e .
  • before commiting run flake8 to check linting and coverage run -m pytest -v to run the tests

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

acdh-tei-pyutils-0.31.tar.gz (14.6 kB view details)

Uploaded Source

Built Distribution

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

acdh_tei_pyutils-0.31-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

Details for the file acdh-tei-pyutils-0.31.tar.gz.

File metadata

  • Download URL: acdh-tei-pyutils-0.31.tar.gz
  • Upload date:
  • Size: 14.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.11

File hashes

Hashes for acdh-tei-pyutils-0.31.tar.gz
Algorithm Hash digest
SHA256 ececf7ed23954e5b3e673843af22ef0c3872b563ad9e2181876f6e5d71c96282
MD5 e05fc2800f9c6d7d28cff029e110b64f
BLAKE2b-256 499a2f0441029ae3d4258937d6549f6e100d416830b87d7474c4b23991f4d8a5

See more details on using hashes here.

File details

Details for the file acdh_tei_pyutils-0.31-py3-none-any.whl.

File metadata

File hashes

Hashes for acdh_tei_pyutils-0.31-py3-none-any.whl
Algorithm Hash digest
SHA256 d4f5f88999fc97b0b17def75ed187bb973eea10ce13ff97d5e0c39fdd3c98b99
MD5 e1f0c4d4b31bd73b1b3355058013dc36
BLAKE2b-256 b8dec543189dcf3575b76296291831ab700e0f680a5407337630aa084bfc1297

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