Beispiel #1
0
        def resolveEntity(self, publicId, systemId):
            self._logger.info("Method call: resolveEntity")

            print("resolveEntity: ", publicId, ", ", systemId)

            if systemId:
                resolver = EntityResolver()
                return resolver.resolveEntity(self, systemId)

            elif publicId:
                resolver = EntityResolver()
                return resolver.resolveEntity(self, publicId)
 def resolveEntity(self, publicId, systemId):
     if systemId:
         name = os.path.join(self._path, systemId)
         if os.path.isfile(name):
             source = InputSource()
             source.setByteStream(open(name, "rb"))
             return source
     # Using default resolution
     return EntityResolver.resolveEntity(self, publicId, systemId)
Beispiel #3
0
 def resolveEntity(self, publicId, systemId):
     "This will be called with None, None if it is an unknown entity"
     if systemId or publicId:
          return EntityResolver.resolveEntity(self,publicId,systemId)
     
     # return an empty stringio in which the parser can never find
     # the entities. This will make it skip the entity, which triggers
     # skippedEntity in the contenthandler.
     return StringIO.StringIO(" ") # if you delete that single space you will be sorry.
Beispiel #4
0
 def resolveEntity(self, publicId, systemId):
     if systemId:
         name = os.path.join(self._path, systemId)
         if os.path.isfile(name):
             source = InputSource()
             source.setByteStream(open(name, "rb"))
             return source
     # Using default resolution
     return EntityResolver.resolveEntity(self, publicId, systemId)
Beispiel #5
0
            def resolveEntity(self, publicId, systemId):
                "This will be called with None, None if it is an unknown entity"
                if systemId or publicId:
                    return EntityResolver.resolveEntity(
                        self, publicId, systemId)

                # return an empty stringio in which the parser can never find
                # the entities. This will make it skip the entity, which triggers
                # skippedEntity in the contenthandler.
                return StringIO.StringIO(
                    " ")  # if you delete that single space you will be sorry.
def addSectionTags(s):

    # Create an instance of the handler classes
    dh = docHandler()

    # Create an XML parser
    parser = make_parser()

    # Tell the parser to use your handler instance
    parser.setContentHandler(dh)
    er = EntityResolver()
    parser.setEntityResolver(er)

    # Parse the file; your handler's methods will get called
    parser.parse(s)

    return u''.join(dh.document).encode('UTF-8')
Beispiel #7
0
def addMathML(fileXml, objOOoZipFile):

    # Create an instance of the handler classes
    dh = docHandler()
    dh.objOOoZipFile = objOOoZipFile

    # Create an XML parser
    parser = make_parser()

    # Tell the parser to use your handler instance
    parser.setContentHandler(dh)
    er = EntityResolver()
    parser.setEntityResolver(er)

    # Parse the file; your handler's methods will get called
    parser.parse(fileXml)

    return u''.join(dh.document).encode('UTF-8')
Beispiel #8
0
def addSectionTags(content):

    from cStringIO import StringIO
    src = InputSource()
    src.setByteStream(StringIO(content))

    # Create an XML parser
    parser = make_parser()  #("xml.sax.drivers2.drv_xmlproc")

    dh = docHandler()
    parser.setContentHandler(dh)

    er = EntityResolver()
    parser.setEntityResolver(er)

    # Allow external entities
    parser.setFeature(feature_external_ges, True)

    # Parse the file; your handler's methods will get called
    parser.parse(src)

    return dh.document.encode('UTF-8')
Beispiel #9
0
	def resolveEntity(self, publicID, systemID):
		from os.path import join
		if self.localPath:
			systemID = join(self.localPath,
							self.pattern.sub('', systemID))
		return EntityResolver.resolveEntity(self, publicID, systemID)