Skip to main content

XUpdate Processor

Project description

Introduction

Apply xupdate diff on XML documents.

Installation

python setup.py install

Testing

python setup.py test

Usage

just like this:

>>> from xupdate_processor import applyXUpdate
>>> from lxml import etree
>>> xml_doc_string = """<?xml version="1.0"?>
<erp5>
  <object portal_type="Test">
    <title>A</title>
  </object>
  <object portal_type="Test">
    <title>A</title>
  </object>
  <object portal_type="Test">
    <title>A</title>
  </object>
</erp5>
"""
>>> xml_xu_string = """<?xml version="1.0"?>
<xupdate:modifications xmlns:xupdate="http://www.xmldb.org/xupdate" version="1.0">
  <xupdate:update select="/erp5/object[2]/title">B</xupdate:update>
  <xupdate:update select="/erp5/object[3]/title">C</xupdate:update>
</xupdate:modifications>
"""
>>> result_tree = applyXUpdate(xml_xu_string=xml_xu_string, xml_doc_string=xml_doc_string)
>>> print etree.tostring(result_tree, pretty_print=True)
<erp5>
  <object portal_type="Test">
    <title>A</title>
  </object>
  <object portal_type="Test">
    <title>B</title>
  </object>
  <object portal_type="Test">
    <title>C</title>
  </object>
</erp5>

History

0.5 (unreleased)

0.4 (2010-01-21)

  • [Fix] sub element might have been append in wrong order
    [nicolas Delaby]

0.3 2010-01-19

  • Update setup.py

0.2 (2010-01-19)

  • refactor egg structure directory
    [nicolas Delaby]
  • Use unittest module instead of DOCTEST
    [nicolas Delaby]
  • add PyXML dependency to support sax parser with xml.sax.handler.feature_namespace_prefixes feature.
    [nicolas Delaby]
  • remove zope.interface dependency
  • [Fix] sub element might have been append in wrong order

0.1 (2009-12-12)

  • Initial implementation
    [nicolas Delaby]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
xupdate-processor-0.4.tar.gz (15.5 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page