devtools/htmlparser.py
branchstable
changeset 5276 5037d891e207
parent 4252 6c4f109c2b03
child 5421 8167de96c523
equal deleted inserted replaced
5269:2e5bc78d05f3 5276:5037d891e207
    71 class SaxOnlyValidator(Validator):
    71 class SaxOnlyValidator(Validator):
    72 
    72 
    73     def __init__(self):
    73     def __init__(self):
    74         Validator.__init__(self)
    74         Validator.__init__(self)
    75         self.parser = etree.XMLParser()
    75         self.parser = etree.XMLParser()
       
    76 
       
    77 class XMLDemotingValidator(SaxOnlyValidator):
       
    78     """ some views produce html instead of xhtml, using demote_to_html
       
    79 
       
    80     this is typically related to the use of external dependencies
       
    81     which do not produce valid xhtml (google maps, ...)
       
    82     """
       
    83 
       
    84     def preprocess_data(self, data):
       
    85         if data.startswith('<?xml'):
       
    86             self.parser = etree.XMLParser()
       
    87         else:
       
    88             self.parser = etree.HTMLParser()
       
    89         return data
       
    90 
    76 
    91 
    77 class HTMLValidator(Validator):
    92 class HTMLValidator(Validator):
    78 
    93 
    79     def __init__(self):
    94     def __init__(self):
    80         Validator.__init__(self)
    95         Validator.__init__(self)