Parsers¶
Functions for parsing SSSOM files from various formats.
sssom.parsers
¶
SSSOM parsers.
parse_sssom_table(file_path, prefix_map=None, meta=None, *, strict=False, sep=None, propagate=True, **kwargs)
¶
Parse a SSSOM CSV or TSV file.
:param file_path: A file path, URL, or I/O object that contains SSSOM encoded in TSV
:param prefix_map: A prefix map or :class:curies.Converter used to validate prefixes, CURIEs,
and IRIs appearing in the SSSOM TSV
:param meta: Additional document-level metadata for the SSSOM TSV document that is not contained
within the document itself. For example, this may come from a companion SSSOM YAML file.
:param strict: If true, will fail parsing for undefined prefixes, CURIEs, or IRIs
:param sep: The seperator. If not given, inferred from file name
:param propagate: If true, propagate all condensed slots.
:param kwargs: Additional keyword arguments (unhandled)
:returns: A parsed dataframe wrapper object
Source code in src/sssom/parsers.py
parse_csv(*args, **kwargs)
¶
Parse a SSSOM CSV file, forwarding arguments to :func:parse_sssom_table.
parse_tsv(*args, **kwargs)
¶
Parse a SSSOM TSV file, forwarding arguments to :func:parse_sssom_table.
parse_sssom_rdf(file_path, prefix_map=None, meta=None, serialisation=SSSOM_DEFAULT_RDF_SERIALISATION, propagate=True, **kwargs)
¶
Parse a TSV to a :class:MappingSetDocument to a :class:MappingSetDataFrame.
Source code in src/sssom/parsers.py
parse_sssom_json(file_path, prefix_map=None, meta=None, propagate=True, **kwargs)
¶
Parse a TSV to a :class:MappingSetDocument to a :class:MappingSetDataFrame.
Source code in src/sssom/parsers.py
parse_obographs_json(file_path, prefix_map=None, meta=None, mapping_predicates=None, propagate=False)
¶
Parse an obographs file as a JSON object and translates it into a MappingSetDataFrame.
:param file_path: The path to the obographs file :param prefix_map: an optional prefix map :param meta: an optional dictionary of metadata elements :param mapping_predicates: an optional list of mapping predicates that should be extracted :param propagate: If true, propagate all condensed slots.
:returns: A SSSOM MappingSetDataFrame
Source code in src/sssom/parsers.py
parse_alignment_xml(file_path, prefix_map=None, meta=None, mapping_predicates=None, propagate=False)
¶
Parse a TSV -> MappingSetDocument -> MappingSetDataFrame.
Source code in src/sssom/parsers.py
from_sssom_dataframe(df, prefix_map=None, meta=None)
¶
Convert a dataframe to a MappingSetDataFrame.
:param df: A mappings dataframe :param prefix_map: A prefix map :param meta: A metadata dictionary
:returns: MappingSetDataFrame
Source code in src/sssom/parsers.py
from_sssom_rdf(g, prefix_map=None, meta=None)
¶
Convert an SSSOM RDF graph into a SSSOM data table.
:param g: the Graph (rdflib) :param prefix_map: A dictionary containing the prefix map, defaults to None :param meta: Potentially additional metadata, defaults to None
:returns: MappingSetDataFrame object
Source code in src/sssom/parsers.py
from_sssom_json(jsondoc, prefix_map=None, meta=None)
¶
Load a mapping set dataframe from a JSON object.
:param jsondoc: JSON document :param prefix_map: Prefix map :param meta: metadata used to augment the metadata existing in the mapping set
:returns: MappingSetDataFrame object
Source code in src/sssom/parsers.py
from_alignment_minidom(dom, prefix_map=None, meta=None, mapping_predicates=None)
¶
Read a minidom Document object.
:param dom: XML (minidom) object :param prefix_map: A prefix map :param meta: Optional meta data :param mapping_predicates: Optional list of mapping predicates to extract
:returns: MappingSetDocument
:raises ValueError: for alignment format: xml element said, but not set to yes. Only XML is supported!
Source code in src/sssom/parsers.py
from_obographs(jsondoc, prefix_map=None, meta=None, mapping_predicates=None)
¶
Convert a obographs json object to an SSSOM data frame.
:param jsondoc: The JSON object representing the ontology in obographs format :param prefix_map: The prefix map to be used :param meta: Any additional metadata that needs to be added to the resulting SSSOM data frame, defaults to None :param mapping_predicates: Optional list of mapping predicates to extract
:returns: An SSSOM data frame (MappingSetDataFrame)
:raises Exception: When there is no CURIE
Source code in src/sssom/parsers.py
739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 | |
get_parsing_function(input_format, filename)
¶
Return appropriate parser function based on input format of file.
:param input_format: File format :param filename: Filename
:returns: Appropriate 'read' function
:raises ValueError: Unknown file format
Source code in src/sssom/parsers.py
to_mapping_set_document(msdf)
¶
Convert a MappingSetDataFrame to a MappingSetDocument.
Source code in src/sssom/parsers.py
split_dataframe(msdf, method=None)
¶
Group the mapping set dataframe into several subdataframes by prefix.
:param msdf: MappingSetDataFrame object
:returns: Mapping object
:raises RuntimeError: DataFrame object within MappingSetDataFrame is None
Source code in src/sssom/parsers.py
split_dataframe_by_prefix(msdf, subject_prefixes, object_prefixes, relations, *, method=None)
¶
Split a mapping set dataframe by prefix.
:param msdf: An SSSOM MappingSetDataFrame :param subject_prefixes: a list of prefixes pertaining to the subject :param object_prefixes: a list of prefixes pertaining to the object :param relations: a list of relations of interest :param method: The method for calculating splits
:returns: a dict of SSSOM data frame names to MappingSetDataFrame