Beispiel #1
0
    def to_minimal_xml(self):
        element = xml_util.create('phase')
        xml_util.set_attr(element, 'id', self.id)
        xml_util.set_variables(element, self.variables)

        for pattern in self.active_patterns:
            active_element = xml_util.create('active')
            xml_util.set_attr(active_element, 'pattern', pattern)
            element.append(active_element)

        return element
Beispiel #2
0
 def to_minimal_xml(self):
     element = xml_util.create('pattern')
     xml_util.set_attr(element, 'id', self.id)
     xml_util.set_attr(element, 'title', self.title)
     xml_util.set_variables(element, self.variables)
     for rule in self.rules:
         element.append(rule.to_minimal_xml())
     return element
Beispiel #3
0
 def to_minimal_xml(self):
     element = xml_util.create('rule')
     xml_util.set_attr(element, 'id', self.id)
     xml_util.set_attr(element, 'context', self.context)
     xml_util.set_variables(element, self.variables)
     for assertion in self.assertions:
         element.append(assertion.to_minimal_xml())
     for report in self.reports:
         element.append(report.to_minimal_xml())
     return element
Beispiel #4
0
 def to_minimal_xml(self):
     element = xml_util.create(self.NAME)
     subelement = None
     for part in self.parts:
         if isinstance(part, BasicText):
             if subelement is None:
                 element.text = part.to_string()
             else:
                 subelement.tail = part.to_string()
         else:
             subelement = part.to_minimal_xml()
             element.append(subelement)
     return element
Beispiel #5
0
    def to_minimal_xml(self, minimal=False):
        """
        Creates a minimal syntax schema according to section 6.2 of the specification.
        TODO: non-minimal output
        :return: An ElementTree with the current Schema specification in minimal form
        """
        if not self.abstract_patterns_processed:
            self.process_abstract_patterns()
        root = xml_util.create('schema', add_nsmap=True)
        xml_util.set_attr(root, 'id', self.id)
        xml_util.set_attr(root, 'defaultPhase', self.default_phase)
        xml_util.set_attr(root, 'schemaVersion', self.schema_version)
        xml_util.set_attr(root, 'queryBinding', self.query_binding_name)
        xml_util.set_variables(root, self.variables)

        for phase in self.phases.values():
            root.append(phase.to_minimal_xml())
        for pattern in self.patterns.values():
            root.append(pattern.to_minimal_xml())
        return root
Beispiel #6
0
 def to_minimal_xml(self):
     element = xml_util.create('value-of')
     if self.select is not None:
         element.attrib['select'] = self.select
     return element
Beispiel #7
0
 def to_minimal_xml(self):
     element = xml_util.create('name')
     if self.path is not None:
         element.attrib['path'] = self.path
     return element