def validateDtd(self, doc, dtd):
        """Try to validate the document against the dtd instance
          Basically it does check all the definitions in the DtD.
          Note the the internal subset (if present) is de-coupled
          (i.e. not used), which could give problems if ID or IDREF
           is present. """
        if doc is None: doc__o = None
        else: doc__o = doc._o
        if dtd is None: dtd__o = None
        else: dtd__o = dtd._o
        ret = libxml2mod.xmlValidateDtd(self._o, doc__o, dtd__o)
        return ret