bzr revid: christophe@tinyerp.com-20080910133734-dt901dkmzoj7xcys
This commit is contained in:
Christophe Simonis 2008-09-10 15:37:34 +02:00
commit bedefcac6a
2 changed files with 20 additions and 5 deletions

View File

@ -203,10 +203,17 @@
</rng:define>
<rng:start>
<rng:element name="terp">
<rng:oneOrMore>
<rng:ref name="data" />
</rng:oneOrMore>
</rng:element>
<rng:choice>
<rng:element name="openerp">
<rng:oneOrMore>
<rng:ref name="data" />
</rng:oneOrMore>
</rng:element>
<rng:element name="terp">
<rng:oneOrMore>
<rng:ref name="data" />
</rng:oneOrMore>
</rng:element>
</rng:choice>
</rng:start>
</rng:grammar>

View File

@ -678,6 +678,14 @@ form: module.record_id""" % (xml_id,)
def parse(self, xmlstr):
d = xml.dom.minidom.parseString(xmlstr)
de = d.documentElement
if not de.nodeName in ['terp', 'openerp']:
self.logger.notifyChannel("init", netsvc.LOG_ERROR, "Mismatch xml format" )
raise Exception( "Mismatch xml format: only terp or openerp as root tag" )
if de.nodeName == 'terp':
self.logger.notifyChannel("init", netsvc.LOG_WARNING, "The tag <terp /> is deprecated, use <openerp/>")
for n in [i for i in de.childNodes if (i.nodeType == i.ELEMENT_NODE and i.nodeName=="data")]:
for rec in n.childNodes:
if rec.nodeType == rec.ELEMENT_NODE: