Code Duplication    Length = 28-28 lines in 3 locations

src/ocrd_page_user_methods/_exportChildren_GroupType.py 1 location

@@ 2-29 (lines=28) @@
1
# pylint: disable=line-too-long,invalid-name,missing-module-docstring,missing-function-docstring
2
def _exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='xmlns:pc="http://schema.primaresearch.org/PAGE/gts/pagecontent/2019-07-15"', name_='OrderedGroupType', fromsubclass_=False, pretty_print=True): # pylint: disable=unused-argument,too-many-arguments
3
    if pretty_print:
4
        eol_ = '\n'
5
    else:
6
        eol_ = ''
7
    if self.UserDefined is not None:
8
        namespaceprefix_ = self.UserDefined_nsprefix_ + ':' if (UseCapturedNS_ and self.UserDefined_nsprefix_) else ''
9
        self.UserDefined.export(outfile, level, namespaceprefix_, namespacedef_='', name_='UserDefined', pretty_print=pretty_print)
10
    for Labels_ in self.Labels:
11
        namespaceprefix_ = self.Labels_nsprefix_ + ':' if (UseCapturedNS_ and self.Labels_nsprefix_) else ''
12
        Labels_.export(outfile, level, namespaceprefix_, namespacedef_='', name_='Labels', pretty_print=pretty_print)
13
    cleaned = []
14
    def replaceWithRRI(group):
15
        rri = RegionRefIndexedType.factory(parent_object_=self) # pylint: disable=undefined-variable
16
        rri.index = group.index
17
        rri.regionRef = group.regionRef
18
        cleaned.append(rri)
19
    # remove empty groups and replace with RegionRefIndexedType
20
    for entry in self.get_AllIndexed():
21
        # pylint: disable=undefined-variable
22
        if isinstance(entry, (OrderedGroupIndexedType)) and not entry.get_AllIndexed():
23
            replaceWithRRI(entry)
24
        elif isinstance(entry, UnorderedGroupIndexedType) and not entry.get_UnorderedGroupChildren():
25
            replaceWithRRI(entry)
26
        else:
27
            cleaned.append(entry)
28
    for entry in cleaned:
29
        entry.export(outfile, level, namespaceprefix_, namespacedef_='', name_=entry.__class__.__name__[:-4], pretty_print=pretty_print)
30

src/ocrd_models/ocrd_page_generateds.py 2 locations

@@ 8055-8082 (lines=28) @@
8052
        return self.get_AllIndexed()
8053
    
8054
    # pylint: disable=line-too-long,invalid-name,missing-module-docstring,missing-function-docstring
8055
    def _exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='xmlns:pc="http://schema.primaresearch.org/PAGE/gts/pagecontent/2019-07-15"', name_='OrderedGroupType', fromsubclass_=False, pretty_print=True): # pylint: disable=unused-argument,too-many-arguments
8056
        if pretty_print:
8057
            eol_ = '\n'
8058
        else:
8059
            eol_ = ''
8060
        if self.UserDefined is not None:
8061
            namespaceprefix_ = self.UserDefined_nsprefix_ + ':' if (UseCapturedNS_ and self.UserDefined_nsprefix_) else ''
8062
            self.UserDefined.export(outfile, level, namespaceprefix_, namespacedef_='', name_='UserDefined', pretty_print=pretty_print)
8063
        for Labels_ in self.Labels:
8064
            namespaceprefix_ = self.Labels_nsprefix_ + ':' if (UseCapturedNS_ and self.Labels_nsprefix_) else ''
8065
            Labels_.export(outfile, level, namespaceprefix_, namespacedef_='', name_='Labels', pretty_print=pretty_print)
8066
        cleaned = []
8067
        def replaceWithRRI(group):
8068
            rri = RegionRefIndexedType.factory(parent_object_=self) # pylint: disable=undefined-variable
8069
            rri.index = group.index
8070
            rri.regionRef = group.regionRef
8071
            cleaned.append(rri)
8072
        # remove empty groups and replace with RegionRefIndexedType
8073
        for entry in self.get_AllIndexed():
8074
            # pylint: disable=undefined-variable
8075
            if isinstance(entry, (OrderedGroupIndexedType)) and not entry.get_AllIndexed():
8076
                replaceWithRRI(entry)
8077
            elif isinstance(entry, UnorderedGroupIndexedType) and not entry.get_UnorderedGroupChildren():
8078
                replaceWithRRI(entry)
8079
            else:
8080
                cleaned.append(entry)
8081
        for entry in cleaned:
8082
            entry.export(outfile, level, namespaceprefix_, namespacedef_='', name_=entry.__class__.__name__[:-4], pretty_print=pretty_print)
8083
# end class OrderedGroupType
8084
8085
@@ 7092-7119 (lines=28) @@
7089
        return self.get_AllIndexed()
7090
    
7091
    # pylint: disable=line-too-long,invalid-name,missing-module-docstring,missing-function-docstring
7092
    def _exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='xmlns:pc="http://schema.primaresearch.org/PAGE/gts/pagecontent/2019-07-15"', name_='OrderedGroupType', fromsubclass_=False, pretty_print=True): # pylint: disable=unused-argument,too-many-arguments
7093
        if pretty_print:
7094
            eol_ = '\n'
7095
        else:
7096
            eol_ = ''
7097
        if self.UserDefined is not None:
7098
            namespaceprefix_ = self.UserDefined_nsprefix_ + ':' if (UseCapturedNS_ and self.UserDefined_nsprefix_) else ''
7099
            self.UserDefined.export(outfile, level, namespaceprefix_, namespacedef_='', name_='UserDefined', pretty_print=pretty_print)
7100
        for Labels_ in self.Labels:
7101
            namespaceprefix_ = self.Labels_nsprefix_ + ':' if (UseCapturedNS_ and self.Labels_nsprefix_) else ''
7102
            Labels_.export(outfile, level, namespaceprefix_, namespacedef_='', name_='Labels', pretty_print=pretty_print)
7103
        cleaned = []
7104
        def replaceWithRRI(group):
7105
            rri = RegionRefIndexedType.factory(parent_object_=self) # pylint: disable=undefined-variable
7106
            rri.index = group.index
7107
            rri.regionRef = group.regionRef
7108
            cleaned.append(rri)
7109
        # remove empty groups and replace with RegionRefIndexedType
7110
        for entry in self.get_AllIndexed():
7111
            # pylint: disable=undefined-variable
7112
            if isinstance(entry, (OrderedGroupIndexedType)) and not entry.get_AllIndexed():
7113
                replaceWithRRI(entry)
7114
            elif isinstance(entry, UnorderedGroupIndexedType) and not entry.get_UnorderedGroupChildren():
7115
                replaceWithRRI(entry)
7116
            else:
7117
                cleaned.append(entry)
7118
        for entry in cleaned:
7119
            entry.export(outfile, level, namespaceprefix_, namespacedef_='', name_=entry.__class__.__name__[:-4], pretty_print=pretty_print)
7120
# end class OrderedGroupIndexedType
7121
7122