Skip to main content

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)

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

erp5diff-0.8.1.3.tar.gz (17.1 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page