Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using colander for xml deserialization

How should colander be used for xml deserialization? Docs say that it can even be used for xml deserialization and validation, but I didn't find any good examples for that in docs or on the web!

If anyone has used colander for xml deserialization can you just put a snippet here on its usage? It would be very helpful.

like image 630
Neo Avatar asked Aug 17 '12 08:08

Neo


1 Answers

Look at colander as a tool for 'deserialization/validation from a python dictionary'. A dict in Python can be formed from any structured data format, I guess.

In one of my projects I validate POST (webob.multidict) data and a JSON file and use the same lines of code:

recipe_schema = RecipeSchema()
try:
    appstruct = recipe_schema.deserialize(cstruct)
...

cstruct is always a dict, as mentioned above - sometimes made of processed Multidict, sometimes made of json.load(json_data).

So, transform XML to dict first and then validate the dict with colander.

like image 112
yentsun Avatar answered Nov 18 '22 13:11

yentsun