python module to Down Translate XML
Project description
xmldt - a Python module to process XML/HTML files in natural way
Synopsis
pydt file.xml > proc.py
from xmldt import XmlDt
pydt script
pydt is used to bootstrap the processing task
xmldt variables and functions
class proc(XmlDt): # or class proc(HtmlDt) for HTML
proc(strip=True, # _flags dictionary
empty=False, # keep spaces
ns_strip= ???
proc(filename="x.xml")
-
__defaul__(s,ele) -
__pcdata__(s,text) -
__comment__(s,txt) -
__end__(s,result) -
__join__(s,ele) -
@XmlDt.dt_tag("id-id")\ndef id_id(s, e):....
toxml function
toxml("foo", {}) == "<foo/>"
toxml("foo", {"a": "b"}) == "<foo a=\"b\"/>"
toxml("foo", {}, "bar") == "<foo>bar</foo>"
toxml("foo", {}, {"a": "b", "c": "d"}) == "<foo><a>b</a><c>d</c></foo>"
toxml("foo", {}, ["a", "b"]) == "<foo>a</foo><foo>b</foo>"
toxml("foo", {"a": "b"}, ["a", "b"]) == "<foo a=\"b\">a</foo><foo a=\"b\">b</foo>"
toxml("foo", {}, ["a", "b"], ["c"]) == "<foo><item>a</item><item>b</item><item>c</item></foo>"
Function Class Element
ele = Element("tag", {"c":"d"}, "contents")
ele.xml "<tag c='d'>contents</tag>"
ele.toxml(v={"a":"b"}) "<tag a='b'>contents</tag>"
ele.tag ele.tag="val" or ele.q
ele.contents ele.c = """.... """ or ele.c
ele["att"] : value or None ele.attrs or ele.v
element functions and methods
- ele.parent : element or None
- ele.parent.tag : tag-name
- ele["root"]
- ele["gparent"]
- ele.in_context("tag1")
- ele._dt
(DT)self functions and methods (usefull for example, in __pcdata__)
s._pathor s.dt_paths._parentor s.dt_parent = s._path[-1]s._gparentor s.dt_gparent = s._path[-2]s._rootor s.dt_root = s._path[0]
types
_types = { 'table' : 'list', 'tr' : 'list', 'td' : 'list' }
Valid types are
- zero -- return "" and skip processing subtree
- list -- list of the subelement values
- map -- map subelement-tags to their values
- mmap -- map subelement-tags to the list of their values
- mmapwn -- multimap when necessary (more than one ocor.)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
xmldt-0.0.13.tar.gz
(71.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xmldt-0.0.13.tar.gz.
File metadata
- Download URL: xmldt-0.0.13.tar.gz
- Upload date:
- Size: 71.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6ff2e547800ffc7a8d2289c1bcfd377e1ced875fb6dd098a5a6a9cdf89b0216
|
|
| MD5 |
d06f5007ffc9a4fd4adbc1562ff6d5c3
|
|
| BLAKE2b-256 |
e53bd65df3d9bbd8213e9269c17bef76b0305aad0ad83dc1ff6a5167c3db32fb
|
File details
Details for the file xmldt-0.0.13-py2.py3-none-any.whl.
File metadata
- Download URL: xmldt-0.0.13-py2.py3-none-any.whl
- Upload date:
- Size: 10.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9fcd1ce7d703af5a9eb35c5d9b5f3c8c77bafcf643f649ac0242492c4be6dc69
|
|
| MD5 |
9695e8dca7e385f198e4ec4385366161
|
|
| BLAKE2b-256 |
293858ece3ba1132e95cc96a086547cb2167a9e5702e7d3b1ebf299a353ef231
|