get_observed_terms

get_observed_terms(mappings: Iterable[Mapping]) Mapping[str, Collection[str]][source]

Get the set of terms appearing in each prefix.

Parameters:

mappings – An iterable of mappings

Returns:

A dictionary from prefixes appearing in subjects/objects of mappings to the set local unique identifiers appearing in mappings

>>> m1 = Mapping(
...     subject=Reference.from_curie("chebi:10084"),
...     predicate=EXACT_MATCH,
...     object=Reference.from_curie("mesh:C453820"),
... )
>>> m2 = Mapping(
...     subject=Reference.from_curie("chebi:10100"),
...     predicate=EXACT_MATCH,
...     object=Reference.from_curie("mesh:C062735"),
... )
>>> {k: sorted(v) for k, v in get_observed_terms([m1, m2]).items()}
{'chebi': ['10084', '10100'], 'mesh': ['C062735', 'C453820']}