diff --git a/src/rougail/annotator/group.py b/src/rougail/annotator/group.py index 8c32ca1a..00b1f25e 100644 --- a/src/rougail/annotator/group.py +++ b/src/rougail/annotator/group.py @@ -50,7 +50,7 @@ class GroupAnnotator: if group.leader in cache_paths: leader_fam_path = cache_paths[group.leader] else: - leader_fam_path = self.objectspace.paths.get_variable_family_path(group.leader) + leader_fam_path = self.objectspace.paths.get_variable_family_path(group.leader, group.xmlfiles) cache_paths[group.leader] = leader_fam_path follower_names = list(group.follower.keys()) leader = self.objectspace.paths.get_variable(group.leader) diff --git a/src/rougail/annotator/service.py b/src/rougail/annotator/service.py index f040743e..809b9a8b 100644 --- a/src/rougail/annotator/service.py +++ b/src/rougail/annotator/service.py @@ -297,7 +297,7 @@ class ServiceAnnotator: msg = _(f'ip with ip_type "{variable.type}" must have netmask') raise DictConsistencyError(msg, 64, ip.xmlfiles) if hasattr(ip, 'netmask'): - netmask = self.objectspace.paths.get_variable(ip.netmask) + netmask = self.objectspace.paths.get_variable(ip.netmask, ip.xmlfiles) if netmask.type != 'netmask': msg = _(f'netmask in ip must have type "netmask", not "{netmask.type}"') raise DictConsistencyError(msg, 65, ip.xmlfiles) diff --git a/src/rougail/path.py b/src/rougail/path.py index ba2c43a0..bf5daf3b 100644 --- a/src/rougail/path.py +++ b/src/rougail/path.py @@ -187,10 +187,11 @@ class Path: def get_variable_family_path(self, name: str, + xmlfiles: List[str]=False, ) -> str: # pylint: disable=C0111 """Get the full path of a family """ - return self._get_variable(name)['family'] + return self._get_variable(name, xmlfiles=xmlfiles)['family'] def get_variable_path(self, name: str,