XUpdate Generator for ERP5
Project description
Introduction
============
This is a XUpdate Generator to compare any XML document.
See <http://xmldb-org.sourceforge.net/xupdate/> for information on
XUpdate.
Installation
============
python setup install
Test
====
python setup test
Usage
=====
Once you have installed erp5diff, you can use "erp5diff" in a shell::
erp5diff old.xml new.xml
Or in a python console::
from ERP5Diff import ERP5Diff
erp5diff = ERP5Diff()
old_xml = """
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
"""
new_xml = """
<ul>
<li>5</li>
<li>6</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
"""
erp5diff.compare(old_xml, new_xml)
erp5diff.output()
<xupdate:modifications xmlns:xupdate="http://www.xmldb.org/xupdate" version="1.0">
<xupdate:remove select="/ul/li[5]"/>
<xupdate:remove select="/ul/li[6]"/>
<xupdate:append child="first()">
<xupdate:element name="li">5</xupdate:element>
<xupdate:element name="li">6</xupdate:element>
</xupdate:append>
</xupdate:modifications>
- 2003-12-04, Yoshinori OKUJI <yo@nexedi.com>
- 2009-09-15, Tatuya Kamada <tatuya@nexedi.com>
- 2009-2011, Nicolas Delaby <nicolas@nexedi.com>
0.8.1.4 (unreleased)
--------------------
0.8.1.3 (2011/01/25)
--------------------
* add long_description, improve README
* add missing namespace declaration of egg
0.8.1.2 (2011/01/25)
--------------------
* [fix] installation of egg
0.8.1.1 (2011/01/25)
--------------------
* [Fix] position starts to 1
[Nicolas Delaby]
version 0.8.1 Nicolas Delaby
============================
Bug Fix
--------
* Some nodes stay orphans if they are replaced by another one and followed
by a modification (test 30)
* Exclude comments or processing instruction as sibling node
version 0.8 Nicolas Delaby
==========================
Features
--------
* Include 'gid' in attributes allowed to build an xpath expression
with a unique identifier.
* Use better algorithm to compare two xml nodes (faster).
Bug Fix
-------
* In node comparaison discard text nodes with only withe-spaces.
* Fix relative calculation of position for xupdate:insert-before nodes
* Add namespace declaration on xupdate nodes which are using
prefix in builded xpath expression.
version 0.7 Nicolas Delaby
==========================
Bug fix
-------
* Nodes whose position change were discarded.
* Declare namespaces used in xpath expression on xupdate output.
version 0.6 Nicolas Delaby
==========================
Bug Fix
-------
* Fix generated xpath expression, the root element was missing.
version 0.5 Nicolas Delaby
==========================
Features
--------
* Add support of namespaces
* Support xupdate:insert-after
version 0.4 Nicolas Delaby
==========================
Features
--------
* Change output of xupdate:append by adding Implied attribute child
version 0.3 Nicolas Delaby
==========================
Bug Fix
-------
* Append position in xpath expression when value of id attribute is not unique regarding is sibling
version 0.2 Nicolas Delaby
==========================
Bug Fix
-------
* Position in xpath starts from 1
version 0.1 Tatuya Kamada
=========================
Features
--------
* ERP5diff implemented with ElemenTree (lxml)
version 0 Yoshinori Okuji
=========================
* initial ERP5diff with DOM API (minidom)
============
This is a XUpdate Generator to compare any XML document.
See <http://xmldb-org.sourceforge.net/xupdate/> for information on
XUpdate.
Installation
============
python setup install
Test
====
python setup test
Usage
=====
Once you have installed erp5diff, you can use "erp5diff" in a shell::
erp5diff old.xml new.xml
Or in a python console::
from ERP5Diff import ERP5Diff
erp5diff = ERP5Diff()
old_xml = """
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
"""
new_xml = """
<ul>
<li>5</li>
<li>6</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
"""
erp5diff.compare(old_xml, new_xml)
erp5diff.output()
<xupdate:modifications xmlns:xupdate="http://www.xmldb.org/xupdate" version="1.0">
<xupdate:remove select="/ul/li[5]"/>
<xupdate:remove select="/ul/li[6]"/>
<xupdate:append child="first()">
<xupdate:element name="li">5</xupdate:element>
<xupdate:element name="li">6</xupdate:element>
</xupdate:append>
</xupdate:modifications>
- 2003-12-04, Yoshinori OKUJI <yo@nexedi.com>
- 2009-09-15, Tatuya Kamada <tatuya@nexedi.com>
- 2009-2011, Nicolas Delaby <nicolas@nexedi.com>
0.8.1.4 (unreleased)
--------------------
0.8.1.3 (2011/01/25)
--------------------
* add long_description, improve README
* add missing namespace declaration of egg
0.8.1.2 (2011/01/25)
--------------------
* [fix] installation of egg
0.8.1.1 (2011/01/25)
--------------------
* [Fix] position starts to 1
[Nicolas Delaby]
version 0.8.1 Nicolas Delaby
============================
Bug Fix
--------
* Some nodes stay orphans if they are replaced by another one and followed
by a modification (test 30)
* Exclude comments or processing instruction as sibling node
version 0.8 Nicolas Delaby
==========================
Features
--------
* Include 'gid' in attributes allowed to build an xpath expression
with a unique identifier.
* Use better algorithm to compare two xml nodes (faster).
Bug Fix
-------
* In node comparaison discard text nodes with only withe-spaces.
* Fix relative calculation of position for xupdate:insert-before nodes
* Add namespace declaration on xupdate nodes which are using
prefix in builded xpath expression.
version 0.7 Nicolas Delaby
==========================
Bug fix
-------
* Nodes whose position change were discarded.
* Declare namespaces used in xpath expression on xupdate output.
version 0.6 Nicolas Delaby
==========================
Bug Fix
-------
* Fix generated xpath expression, the root element was missing.
version 0.5 Nicolas Delaby
==========================
Features
--------
* Add support of namespaces
* Support xupdate:insert-after
version 0.4 Nicolas Delaby
==========================
Features
--------
* Change output of xupdate:append by adding Implied attribute child
version 0.3 Nicolas Delaby
==========================
Bug Fix
-------
* Append position in xpath expression when value of id attribute is not unique regarding is sibling
version 0.2 Nicolas Delaby
==========================
Bug Fix
-------
* Position in xpath starts from 1
version 0.1 Tatuya Kamada
=========================
Features
--------
* ERP5diff implemented with ElemenTree (lxml)
version 0 Yoshinori Okuji
=========================
* initial ERP5diff with DOM API (minidom)
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
erp5diff-0.8.1.3.tar.gz
(17.1 kB
view hashes)