Skip to content

Commit

Permalink
Enabled resolvers mapping files to contains rules calling a forge method
Browse files Browse the repository at this point in the history
  • Loading branch information
MFSY committed Jul 18, 2023
1 parent 62e5d2a commit 1559ec9
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
8 changes: 4 additions & 4 deletions kgforge/core/archetypes/resolver.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ def mapper(self) -> Callable:

def resolve(self, text: Union[str, List[str], Resource], target: str, type: str,
strategy: ResolvingStrategy, resolving_context: Any, property_to_resolve: str, merge_inplace_as: str,
limit: int, threshold: float) \
limit: int, threshold: float, forge: Optional["KnowledgeGraphForge"]) \
-> Optional[Union[Resource, List[Resource], Dict[str, List[Resource]]]]:

if isinstance(text, Resource):
Expand All @@ -96,14 +96,14 @@ def resolve(self, text: Union[str, List[str], Resource], target: str, type: str,
resolved = resolved[0] if len(resolved) == 1 else resolved
if isinstance(resolved, tuple):
# Case Tuple[str,List[Dict]]
resolved_mapped = self.mapper().map(resolved[1], self.result_mapping, None) if resolved[1] is not None else None
resolved_mapped = self.mapper(forge).map(resolved[1], self.result_mapping, None) if resolved[1] is not None else None
elif isinstance(text_to_resolve, list):
# Case List[Tuple[str, List[Dict]]]
resolved_mapped = {r[0]: self.mapper().map(r[1], self.result_mapping, None) for r in resolved if
resolved_mapped = {r[0]: self.mapper(forge).map(r[1], self.result_mapping, None) for r in resolved if
isinstance(r, tuple)}
else:
# Case Dict or List[Dict]
resolved_mapped = self.mapper().map(resolved, self.result_mapping, None)
resolved_mapped = self.mapper(forge).map(resolved, self.result_mapping, None)
if isinstance(text, Resource) and isinstance(merge_inplace_as, str):
text.__setattr__(merge_inplace_as, resolved_mapped)
return text
Expand Down
1 change: 1 addition & 0 deletions kgforge/core/forge.py
Original file line number Diff line number Diff line change
Expand Up @@ -451,6 +451,7 @@ def resolve(
merge_inplace_as,
limit,
threshold,
self
)
else:
raise ResolvingError("no resolvers have been configured")
Expand Down

0 comments on commit 1559ec9

Please sign in to comment.