Metadata-Version: 1.1
Name: xml-marshaller
Version: 1.0.1
Summary: Converting Python objects to XML and back again.
Home-page: http://www.python.org/community/sigs/current/xml-sig/
Author: Nicolas Delaby
Author-email: nicolas@nexedi.com
License: Python License (CNRI Python License)
Description-Content-Type: UNKNOWN
Description: Introduction
        ============
        
        This module allows one to marshal simple Python data types into a
        custom XML format.  The Marshaller and Unmarshaller classes can be
        subclassed in order to implement marshalling into a different XML DTD.
        Original Authors are XML-SIG (xml-sig@python.org).
        
        Fully compatible with PyXML implementation, enables namespace support
        for XML Input/Output.
        
        Implemented with lxml
        
        Installation
        ============
        
        python setup.py install
        
        
        Testing
        =======
        
        python setup.py test
        
        Usage
        =====
        
        For simple serialisation and unserialisation::
        
        
          >>> from xml_marshaller import xml_marshaller
          >>> xml_marshaller.dumps(['item1', {'key1': 1, 'key2': u'unicode string'}])
          '<marshal><list id="i2"><string>item1</string><dictionary id="i3"><string>key1</string><int>1</int><string>key2</string><unicode>unicode string</unicode></dictionary></list></marshal>'
          >>> xml_marshaller.loads(xml_marshaller.dumps(['item1', {'key1': 1, 'key2': u'unicode string'}]))
          ['item1', {'key2': u'unicode string', 'key1': 1}]
        
        Can works with file like objects::
        
        
          >>> from xml_marshaller import xml_marshaller
          >>> from StringIO import StringIO
          >>> file_like_object = StringIO()
          >>> xml_marshaller.dump('Hello World !', file_like_object)
          >>> file_like_object.seek(0)
          >>> file_like_object.read()
          '<marshal><string>Hello World !</string></marshal>'
          >>> file_like_object.seek(0)
          >>> xml_marshaller.load(file_like_object)
          'Hello World !'
        
        xml_marshaller can also output xml with qualified names::
        
        
          >>> from xml_marshaller import xml_marshaller
          >>> xml_marshaller.dumps_ns('Hello World !')
          '<marshal:marshal xmlns:marshal="http://www.erp5.org/namespaces/marshaller"><marshal:string>Hello World !</marshal:string></marshal:marshal>'
        
        
        You can also use your own URI::
        
          >>> from xml_marshaller.xml_marshaller import Marshaller
          >>> marshaller = Marshaller(namespace_uri='http://my-custom-namespace-uri/namespace')
          >>> marshaller.dumps('Hello World !')
          '<marshal:marshal xmlns:marshal="http://my-custom-namespace-uri/namespace"><marshal:string>Hello World !</marshal:string></marshal:marshal>'
        
        
        History
        =======
        
        1.0.1 (2018-11-12)
        ------------------
        
        - Fix changelog.
        
        1.0 (2018-11-12)
        ----------------
        
        - Stop distinguish unicode and bytes and always return 'str'
        
        0.10 (2018-09-12)
        -----------------
        
        - Add support for Python 3
        
        0.9.7 (2010-10-30)
        ------------------
        
        - Enhance egg folder structure
          [nicolas Delaby]
        - Improve tests
          [nicolas Delaby]
        - add XSD Schema
          [nicolas Delaby]
        
        0.9.6 (2010-10-12)
        ------------------
        
        - [fix] Support boolean transformation
          [Nicolas Delaby]
        
        0.9.5 (2010-09-01)
        ------------------
        
        - [fix] Formatting of documentation
          [Lukasz Nowak]
        
        0.9.4 (2010-09-01)
        ------------------
        
        - [fix] Instances are now correctly unmarshalled.
          [Cedric de Saint Martin]
        
Keywords: XML marshaller
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Python License (CNRI Python License)
Classifier: Operating System :: OS Independent
Classifier: Topic :: Text Processing :: Markup :: XML
