Metadata-Version: 1.1
Name: xupdate-processor
Version: 0.5
Summary: XUpdate Processor
Home-page: https://lab.nexedi.com/nexedi/xupdate_processor
Author: Nicolas DELABY
Author-email: nicolas@nexedi.com
License: GPL
Description: Introduction
        ============
        
        Apply xupdate diff on XML documents.
        
        
        Testing
        =======
        
        To run tests::
        
            python -m unittest discover src
        
        or, using ``zc.buildout`` and ``zope.testrunner``::
        
            buildout
            ./bin/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 (2022-09-14)
        ----------------
         - Support python3 and python2.7 by dropping dependency on PyXML
        
        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]
        
Platform: UNKNOWN
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Operating System :: OS Independent
Classifier: Topic :: Text Processing :: Markup :: XML
Classifier: Topic :: Utilities
