Skip to main content

eulxml

package
PyPI License PyPI downloads
documentation
Documentation Status
code
travis-ci build Code Coverage Code Climate https://requires.io/github/emory-libraries/eulxml/requirements.svg

eulxml is a Python module that provides utilities and classes for interacting with XML that allow the definition of re-usable XML objects that can be accessed, updated and created as standard Python types, and a form component for editing XML with Django forms.

eulxml.xpath provides functions and classes for parsing XPath expressions using PLY.

eulxml.xmlmap makes it easier to map XML to Python objects in a nicer, more pythonic and object-oriented way than typical DOM access usually provides. XML can be read, modified, and even created from scratch (in cases where the configured XPath is simple enough to determine the nodes that should be constructed).

eulxml.forms provides Django Form objects that use eulxml.xmlmap.XmlObject instances as the basis and data instance for the form, with the goal of making it easy to edit XML content via web forms.

Dependencies

eulxml depends on PLY and lxml.

eulxml.forms requires and was designed to be used with Django, although Django is not required for installation and use of the non-form components of eulxml.

Contact Information

eulxml was created by the Digital Programs and Systems Software Team of Emory University Libraries.

libsysdev-l@listserv.cc.emory.edu

License

eulxml is distributed under the Apache 2.0 License.

Development History

For instructions on how to see and interact with the full development history of eulxml, see eulcore-history.

Developer notes

As of version 1.1, eulxml provides an XML catalog for loading schemas referenced by included XmlObject instances. Requests is required for downloading schemas, but it is not a dependency of eulxml. The catalog and schemas will be included in distributed releases, but if you want to use the catalog when installing directly from GitHub you can use a normal pip install and then run:

python -c 'from eulxml.catalog import generate_catalog; generate_catalog()'

To install dependencies for your local check out of the code, run pip install in the eulxml directory (the use of virtualenv is recommended):

pip install -e .

If you want to run unit tests or build sphinx documentation, you will also need to install development dependencies:

pip install -e . "eulxml[dev]"

To run all unit tests:

nosetests   # for normal development
nosetests --with-coverage --cover-package=eulxml --cover-xml --with-xunit   # for continuous integration

To run unit tests for a specific module, use syntax like this:

nosetests test/test_xpath.py

To generate sphinx documentation:

cd doc
make html

Metadata

Release files for eulxml 1.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eulxml 1.1.3
File Size Uploaded Provenance Actions
eulxml-1.1.3.tar.gz 251.3 kB Without provenance Details for eulxml-1.1.3.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for eulxml 1.1.3
File Interpreter ABI Platform Actions
eulxml-1.1.3.macosx-10.10-intel.tar.gz Details for eulxml-1.1.3.macosx-10.10-intel.tar.gz
eulxml-1.1.3-py2.py3-none-any.whl Python 2, Python 3 none any Details for eulxml-1.1.3-py2.py3-none-any.whl

Total release size: 722.8 kB

Release files / eulxml-1.1.3.tar.gz

Download URL eulxml-1.1.3.tar.gz
Size 251.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a2df44fc91428db2d1089d399789f5d36dcc6cbef24c3149c65672fcb81beca3
BLAKE2b-256 checksum
How to use checksums
c75dbaf644154d180eee580860fdca4eafe43dfd18f0159f9425f635635a667b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / eulxml-1.1.3.macosx-10.10-intel.tar.gz

Download URL eulxml-1.1.3.macosx-10.10-intel.tar.gz
Size 254.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a673aa906502cfb69e5cfc7c30346b1507f73da789c7c2b2c29fea5d38d278fa
BLAKE2b-256 checksum
How to use checksums
0d34a5e6bb192e1efdbb15d597d65c73d9af0584d15b292b2b2399fb9cb147bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / eulxml-1.1.3-py2.py3-none-any.whl

Download URL eulxml-1.1.3-py2.py3-none-any.whl
Size 216.6 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
e981607d6b44fc6f409717dbaf17505846c5c69300b837f854d942471e026213
BLAKE2b-256 checksum
How to use checksums
4f83e254c3aa358bb92fbf91047d19676900bf3bce18cbc6fe9190524db7346c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for eulxml 1.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page