Example #1
0
 def xml_tree_handler(self, node=None):
     log.debug(">> MXMLBuffer.xml_tree_handler")
     default = self._mxml_default_dataset_info(node)
     if default:
         # force HTML based completion
         return koXMLDatasetInfo.getService().getDocumentHandler(default[0], default[1], default[2])
     return XMLParsingBufferMixin.xml_tree_handler(self, node)
Example #2
0
 def xml_default_dataset_info(self, node):
     # print "%s node %r" % (self.lang, node)
     log.debug("%s node %r", self.lang, node)
     tree = self.xml_tree
     if node is not None and not tree.namespace(node):
         # Do we have an output element, if so, figure out if we're html.
         # Cheap way to get the output element.
         output = tree.tags.get(tree.namespace(
             tree.root), {}).get('output', None)
         if output is not None:
             lang = output.attrib.get('method').upper()
             publicId = output.attrib.get('doctype-public')
             systemId = output.attrib.get('doctype-system')
             if publicId or systemId:
                 default_dataset_info = (publicId, systemId, None)
             else:
                 datasetSvc = getService()
                 default_dataset_info = (
                     datasetSvc.getDefaultPublicId(lang, self.env),
                     None,
                     datasetSvc.getDefaultNamespace(lang, self.env)
                 )
             # print "get output type %r" % (default_dataset_info,)
             return default_dataset_info
     return XMLParsingBufferMixin.xml_default_dataset_info(self, node)
Example #3
0
 def xml_tree_handler(self, node=None):
     log.debug(">> MXMLBuffer.xml_tree_handler")
     default = self._mxml_default_dataset_info(node)
     if default:
         # force HTML based completion
         return koXMLDatasetInfo.getService().getDocumentHandler(
             default[0], default[1], default[2])
     return XMLParsingBufferMixin.xml_tree_handler(self, node)
Example #4
0
 def xml_default_dataset_info(self, node):
     #print "%s:%s node %r" % (self.lang, trg.lang, node)
     tree = self.xml_tree
     if node is not None and not tree.namespace(node):
         # Do we have an output element, if so, figure out if we're html.
         # Cheap way to get the output element.
         output = tree.tags.get(tree.namespace(tree.root),
                                {}).get('output', None)
         if output is not None:
             lang = output.attrib.get('method').upper()
             publicId = output.attrib.get('doctype-public')
             systemId = output.attrib.get('doctype-system')
             if publicId or systemId:
                 default_dataset_info = (publicId, systemId, None)
             else:
                 datasetSvc = getService()
                 default_dataset_info = (datasetSvc.getDefaultPublicId(
                     lang, self.env), None,
                                         datasetSvc.getDefaultNamespace(
                                             lang, self.env))
             #print "get output type %r" % (default_dataset_info,)
             return default_dataset_info
     return XMLParsingBufferMixin.xml_default_dataset_info(self, node)