Skip to content

Commit c8f8bd3

Browse files
committed
- Update: lexical_index_to_sssom(): Added param for extended prefix map
1 parent 66998cd commit c8f8bd3

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/oaklib/utilities/lexical/lexical_indexer.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@ def lexical_index_to_sssom(
247247
ruleset: MappingRuleCollection = None,
248248
meta: Optional[Dict[str, t.Any]] = None,
249249
prefix_map: Union[None, Converter, t.Mapping[str, str]] = None,
250+
extended_prefix_map: t.Iterable[Dict[str, t.Any]] = None,
250251
subjects: Collection[CURIE] = None,
251252
objects: Collection[CURIE] = None,
252253
symmetric: bool = False,
@@ -265,6 +266,9 @@ def lexical_index_to_sssom(
265266
:param ensure_strict_prefixes: If true, prefixes & mappings in SSSOM MappingSetDataFrame will be filtred.
266267
:return: SSSOM MappingSetDataFrame object.
267268
"""
269+
if prefix_map and extended_prefix_map:
270+
raise ValueError("Can only pass prefix_map or extended_prefix_map, but not both.")
271+
268272
mappings = []
269273
logging.info("Converting lexical index to SSSOM")
270274
if subjects:
@@ -313,7 +317,11 @@ def lexical_index_to_sssom(
313317

314318
converter = curies.chain(
315319
[
316-
Converter.from_prefix_map((meta or {}).pop(CURIE_MAP, {})),
320+
Converter.from_extended_prefix_map(extended_prefix_map)
321+
if extended_prefix_map
322+
else Converter.from_prefix_map(prefix_map)
323+
if prefix_map
324+
else Converter.from_prefix_map((meta or {}).pop(CURIE_MAP, {})),
317325
ensure_converter(prefix_map, use_defaults=False),
318326
oi.converter,
319327
]

0 commit comments

Comments
 (0)