Skip to main content

MathDOM - Content MathML in Python

MathDOM is a set of Python 2.4 modules (using PyXML or lxml, and pyparsing) that import mathematical terms as a Content MathML DOM. It currently parses MathML and literal infix terms into a DOM document and writes out MathML and literal infix/prefix/postfix/Python terms. The DOM elements are enhanced by domain specific methods that make using the DOM a little easier. Implementations based on PyXML and lxml/libxml2 are available.

You can call it the shortest way between different term representations and a Content MathML DOM. Ever noticed the annoying differences between terms in different programming languages? Build your application around MathDOM and stop caring about the term representation that users prefer or that your machine can execute. If you need a different representation, add a converter, but don’t change the model of your application. Literal terms are connected through an intermediate AST step that makes writing converters for SQL/Java/Lisp/your-favourite easy.

New in version 0.8:

  • works with (and requires) lxml 2.0 or later

New in version 0.7.2:

  • works with (and requires) lxml 1.3 or later

New in version 0.7.1:

  • bug fix for operator qualifiers

New in version 0.7:

  • works with lxml 0.9 out-of-the-box

New in version 0.6.7:

  • added missing ‘%’ operator (modulo)

  • adapted to updated lxml API

New in version 0.6.6:

  • closer APIs of mathdom and lmathdom

  • convenience functions to portably create apply, ci and cn elements

New in version 0.6.5:

  • XSLT extension function to include literal terms in output

  • bug fix in Python term serializer

New in version 0.6.4:

  • Updated setup.py script to use setuptools if available

  • Support for splitting package into two PyXML and lxml dependent packages

  • Now builds patched lxml during install

New in version 0.6.3.1:

  • Fixes a number of bugs in mathdom and lmathdom modules

New in version 0.6.2:

  • Generalized parser framework

  • Python term parser

New in version 0.6.1:

  • integration of the PyMathML renderer (untested!)

  • more generic integration of XSLT scripts

New in version 0.6:

  • RelaxNG validation (lxml)

  • Presentation MathML export (based on XSLT/lxml)

  • stricter spec conformance (encloses MathML output in <math> tag

Metadata

Release files for mathdom 0.8

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

Source distribution (sdist)

Source distribution for mathdom 0.8
File Size Uploaded Provenance
mathdom-0.8.tar.gz 108.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for mathdom 0.8
File Interpreter ABI Platform
mathdom-0.8-py2.5.egg Legacy Egg format - - Details

Total release size: 282.4 kB

Release files / mathdom-0.8.tar.gz

Download URL mathdom-0.8.tar.gz
Size 108.3 kB
Tags Source
SHA-256 checksum
How to use checksums
e44ea8a24c26c9fdcba26aabbd5e8cff566c1742a541abd02219b7e7dab19e92
BLAKE2b-256 checksum
How to use checksums
e26068210edb75588799faee396760fab8e06a039f1833c64a96961d80064ea0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / mathdom-0.8-py2.5.egg

Download URL mathdom-0.8-py2.5.egg
Size 174.0 kB
Tags Egg
SHA-256 checksum
How to use checksums
a960661a50a0cbf8441e5d572f7d6764efc343e85d6450232bf2c7d95e0dce4d
BLAKE2b-256 checksum
How to use checksums
a0c260042ba51998e7177aa33512fc111aba960fe669fe1889f7edffb322849b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for mathdom 0.8

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.

Release history Release notifications | RSS feed

This release

0.8 This release

2 release files No provenance

0.6.7

0.6.6

0.6.5

0.6.4

0.6.3.1

0.6.3

0.6.2

0.6.1

0.6.0

0.5.2

0.5.1

0.5.0

0.4.0

0.3.0

0.2.4

0.2.2

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