--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: python2.3-xmldiff: xupdate output contains unneeded statements
- From: Erich Schubert <erich@debian.org>
- Date: Wed, 01 Sep 2004 04:01:01 +0200
- Message-id: <20040901020101.D9572488018@wintermute.xmldesign.de>
Package: python2.3-xmldiff
Version: 0.6.4-5
Severity: normal
Tags: upstream
Consider the following two files:
a.xml:
<?xml version="1.0"?>
<a>
<b>
<c>1</c>
</b>
<d>filler</d>
</a>
b.xml:
<?xml version="1.0"?>
<a>
<b>1</b>
<d>filler</d>
</a>
Using xmldiff without options gives following solution:
[rename, /a[1]/b[1]/c[1], b]
[move-first, /a[1]/b[1]/b[1], /a[1]]
[remove, /a[1]/b[2]]
but using "xmldiff -x" gives:
<xupdate:rename select="/a[1]/b[1]/c[1]" >
b
</xupdate:rename>
<xupdate:remove select="/a[1]/b[1]/b[1]" />
<xupdate:append select="/a[1]" >
<xupdate:element name="b">
1
</xupdate:element>
</xupdate:append>
<xupdate:remove select="/a[1]/b[2]" />
Well, there is not much sense in renaming a node, just to delete it
afterwards, insert it anew at a different location and then delete the
parent...
<xupdate:remove select="/a[1]/b[1]" />
and then the append statement would have been the same.
xupdate does allow for moves, by using variables.
A smarter mapping of above behaviour to xupdate would have been:
<xupdate:rename select="/a[1]/b[1]/c[1]">b</xupdate:rename>
<xupdate:variable name="m0" select="/a[1]/b[1]/b[1]" />
<xupdate:append select="/a[1]">
<xupdate:value-of select="$m0" />
</xupdate:append>
<xupdate:remove select="/a[1]/b[1]" />
-- System Information:
Debian Release: 3.1
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.8.1+sws+acpi
Locale: LANG=de_DE.UTF-8@euro, LC_CTYPE=de_DE.UTF-8@euro
Versions of packages python2.3-xmldiff depends on:
ii python2.3 2.3.4-11sid An interactive high-level object-o
ii python2.3-xml 0.8.3-5 XML tools for Python (2.3.x)
ii xmldiff-sgml 0.6.4-5 xmldiff's DTDS and catalogs.
-- no debconf information
--- End Message ---