PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX sssom: <https://w3id.org/sssom/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

<http://www.w3.org/2002/07/owl#Axiom> a rdfs:Class ;
  rdfs:comment "Represents an individual mapping between a pair of entities" .

sssom:mapping_tool_version a rdf:Property ;
  rdfs:comment "Version string that denotes the version of the mapping tool used." ;
  rdfs:range xsd:string .

sssom:subject_category a rdf:Property ;
  rdfs:comment "The conceptual category to which the subject belongs to. This can be a string denoting the category or a term from a controlled vocabulary." ;
  rdfs:range xsd:string .

sssom:predicate_modifier a rdf:Property ;
  rdfs:comment "A modifier for negating the prediate. See https://github.com/mapping-commons/sssom/issues/40 for discussion" ;
  rdfs:range sssom:PredicateModifierEnum .

sssom:predicate_label a rdf:Property ;
  rdfs:comment "The label of the predicate/relation of the mapping" ;
  rdfs:range xsd:string .

<http://purl.org/dc/elements/1.1/creator> a rdf:Property ;
  rdfs:comment "Identifies the persons or groups responsible for the creation of the mapping. The creator is the agent that put the mapping in its published form, which may be different from the author, which is a person that was actively involved in the assertion of the mapping. Recommended to be a (pipe-separated) list of ORCIDs or otherwise identifying URLs, but any identifying string (such as name and affiliation) is permissible." ;
  rdfs:range rdfs:Resource .

sssom:semantic_similarity_measure a rdf:Property ;
  rdfs:comment "The measure used for computing the the semantic similarity score. To make processing this field as unambiguous as possible, we recommend using wikidata identifiers, but wikipedia pages could also be acceptable." ;
  rdfs:range xsd:string .

rdfs:seeAlso a rdf:Property ;
  rdfs:comment "A URL specific for the mapping instance. E.g. for kboom we have a per-mapping image that shows surrounding axioms that drive probability. Could also be a github issue URL that discussed a complicated alignment" ;
  rdfs:range xsd:string .

sssom:subject_match_field a rdf:Property ;
  rdfs:comment "A tuple of fields (term annotations on the subject) that was used for the match." ;
  rdfs:range rdfs:Resource .

sssom:reviewer_id a rdf:Property ;
  rdfs:comment "Identifies the persons or groups that reviewed and confirmed the mapping. Recommended to be a (pipe-separated) list of ORCIDs or otherwise identifying URLs, but any identifying string (such as name and affiliation) is permissible." ;
  rdfs:range rdfs:Resource .

<http://www.w3.org/2002/07/owl#annotatedProperty> a rdf:Property ;
  rdfs:comment "The ID of the predicate or relation that relates the subject and object of this match." ;
  rdfs:range rdfs:Resource .

sssom:subject_type a rdf:Property ;
  rdfs:comment "The type of entity that is being mapped." ;
  rdfs:range sssom:EntityTypeEnum .

sssom:subject_label a rdf:Property ;
  rdfs:comment "The label of subject of the mapping" ;
  rdfs:range xsd:string .

<http://www.w3.org/2002/07/owl#annotatedTarget> a rdf:Property ;
  rdfs:comment "The ID of the object of the mapping." ;
  rdfs:range rdfs:Resource .

<http://www.w3.org/2002/07/owl#annotatedSource> a rdf:Property ;
  rdfs:comment "The ID of the subject of the mapping." ;
  rdfs:range rdfs:Resource .

sssom:subject_source a rdf:Property ;
  rdfs:comment "URI of ontology source for the subject." ;
  rdfs:range rdfs:Resource .

sssom:semantic_similarity_score a rdf:Property ;
  rdfs:comment "A score between 0 and 1 to denote the semantic similarity, where 1 denotes equivalence." ;
  rdfs:range xsd:double .

sssom:object_source_version a rdf:Property ;
  rdfs:comment "Version IRI or version string of the source of the object term." ;
  rdfs:range xsd:string .

sssom:reviewer_label a rdf:Property ;
  rdfs:comment "A string identifying the reviewer of this mapping. In the spirit of provenance, consider to use author_id instead." ;
  rdfs:range xsd:string .

sssom:object_type a rdf:Property ;
  rdfs:comment "The type of entity that is being mapped." ;
  rdfs:range sssom:EntityTypeEnum .

sssom:mapping_justification a rdf:Property ;
  rdfs:comment "A mapping justification is an action (or the written representation of that action) of showing a mapping to be right or reasonable." ;
  rdfs:range rdfs:Resource .

sssom:author_label a rdf:Property ;
  rdfs:comment "A string identifying the author of this mapping. In the spirit of provenance, consider to use author_id instead." ;
  rdfs:range xsd:string .

sssom:mapping_provider a rdf:Property ;
  rdfs:comment "URL pointing to the source that provided the mapping, for example an ontology that already contains the mappings, or a database from which it was derived." ;
  rdfs:range xsd:anyURI .

sssom:confidence a rdf:Property ;
  rdfs:comment "A score between 0 and 1 to denote the confidence or probability that the match is correct, where 1 denotes total confidence." ;
  rdfs:range xsd:double .

<http://purl.org/pav/authoredOn> a rdf:Property ;
  rdfs:comment "The date the mapping was asserted. This is different from the date the mapping was published or compiled in a SSSOM file." ;
  rdfs:range xsd:date .

<http://purl.org/dc/terms/license> a rdf:Property ;
  rdfs:comment "A url to the license of the mapping. In absence of a license we assume no license." ;
  rdfs:range xsd:anyURI .

sssom:creator_label a rdf:Property ;
  rdfs:comment "A string identifying the creator of this mapping. In the spirit of provenance, consider to use creator_id instead." ;
  rdfs:range xsd:string .

sssom:mapping_cardinality a rdf:Property ;
  rdfs:comment "A string indicating whether this mapping is from a 1:1 (the subject_id maps to a single object_id), 1:n (the subject maps to more than one object_id), n:1, 1:0, 0:1 or n:n group. Note that this is a convenience field that should be derivable from the mapping set." ;
  rdfs:range sssom:MappingCardinalityEnum .

sssom:match_string a rdf:Property ;
  rdfs:comment "Strings that are shared by subj/obj. It is recommended to indicate the fields for the match using the object and subject_match_field slots." ;
  rdfs:range xsd:string .

rdfs:comment a rdf:Property ;
  rdfs:comment "Free text field containing either curator notes or text generated by tool providing additional informative information." ;
  rdfs:range xsd:string .

sssom:subject_source_version a rdf:Property ;
  rdfs:comment "Version IRI or version string of the source of the subject term." ;
  rdfs:range xsd:string .

sssom:object_label a rdf:Property ;
  rdfs:comment "The label of object of the mapping" ;
  rdfs:range xsd:string .

sssom:mapping_tool a rdf:Property ;
  rdfs:comment "A reference to the tool or algorithm that was used to generate the mapping. Should be a URL pointing to more info about it, but can be free text." ;
  rdfs:range xsd:string .

sssom:object_preprocessing a rdf:Property ;
  rdfs:comment "Method of preprocessing applied to the fields of the object. If different preprocessing steps were performed on different fields, it is recommended to store the match in separate rows." ;
  rdfs:range rdfs:Resource .

sssom:object_match_field a rdf:Property ;
  rdfs:comment "A tuple of fields (term annotations on the object) that was used for the match." ;
  rdfs:range rdfs:Resource .

<http://purl.org/pav/authoredBy> a rdf:Property ;
  rdfs:comment "Identifies the persons or groups responsible for asserting the mappings. Recommended to be a (pipe-separated) list of ORCIDs or otherwise identifying URLs, but any identifying string (such as name and affiliation) is permissible." ;
  rdfs:range rdfs:Resource .

sssom:object_category a rdf:Property ;
  rdfs:comment "The conceptual category to which the subject belongs to. This can be a string denoting the category or a term from a controlled vocabulary." ;
  rdfs:range xsd:string .

sssom:other a rdf:Property ;
  rdfs:comment "Pipe separated list of key value pairs for properties not part of the SSSOM spec. Can be used to encode additional provenance data." ;
  rdfs:range xsd:string .

sssom:object_source a rdf:Property ;
  rdfs:comment "IRI of ontology source for the object. Version IRI preferred." ;
  rdfs:range rdfs:Resource .

sssom:subject_preprocessing a rdf:Property ;
  rdfs:comment "Method of preprocessing applied to the fields of the subject. If different preprocessing steps were performed on different fields, it is recommended to store the match in separate rows." ;
  rdfs:range rdfs:Resource .

sssom:MappingRegistry a rdfs:Class ;
  rdfs:comment "A registry for managing mapping sets. It holds a set of mapping set references, and can import other registries." .

sssom:mapping_registry_id a rdf:Property ;
  rdfs:comment "The unique identifier of a mapping registry." ;
  rdfs:range rdfs:Resource .

sssom:documentation a rdf:Property ;
  rdfs:comment "A URL to the documentation of this mapping commons." ;
  rdfs:range xsd:anyURI .

sssom:mapping_set_references a rdf:Property ;
  rdfs:comment "A list of mapping set references." ;
  rdfs:range sssom:MappingSetReference .

sssom:homepage a rdf:Property ;
  rdfs:comment "A URL to a homepage of this mapping commons." ;
  rdfs:range xsd:anyURI .

sssom:imports a rdf:Property ;
  rdfs:comment "A list of registries that should be imported into this one." ;
  rdfs:range xsd:anyURI .

sssom:MappingSet a rdfs:Class ;
  rdfs:comment "Represents a set of mappings" .

<http://www.w3.org/ns/prov#wasDerivedFrom> a rdf:Property ;
  rdfs:comment "A mapping set or set of mapping set that was used to derive the mapping set." ;
  rdfs:range xsd:anyURI .

<http://purl.org/dc/elements/1.1/description> a rdf:Property ;
  rdfs:comment "A description of the mapping set." ;
  rdfs:range xsd:string .

<http://www.w3.org/2002/07/owl#versionInfo> a rdf:Property ;
  rdfs:comment "A version string for the mapping." ;
  rdfs:range xsd:string .

sssom:mappings a rdf:Property ;
  rdfs:comment "Contains a list of mapping objects" ;
  rdfs:range <http://www.w3.org/2002/07/owl#Axiom> .

sssom:mapping_set_id a rdf:Property ;
  rdfs:comment "A globally unique identifier for the mapping set (not each individual mapping). Should be IRI, ideally resolvable." ;
  rdfs:range xsd:anyURI .

sssom:MappingSetReference a rdfs:Class ;
  rdfs:comment "A reference to a mapping set. It allows to augment mapping set metadata from the perspective of the registry, for example, providing confidence, or a local filename or a grouping." .

sssom:registry_confidence a rdf:Property ;
  rdfs:comment "This value is set by the registry that indexes the mapping set. It reflects the confidence the registry has in the correctness of the mappings in the mapping set." ;
  rdfs:range xsd:double .

sssom:mirror_from a rdf:Property ;
  rdfs:comment "A URL location from which to obtain a resource, such as a mapping set." ;
  rdfs:range xsd:anyURI .

sssom:last_updated a rdf:Property ;
  rdfs:comment "The date this reference was last updated." ;
  rdfs:range xsd:date .

sssom:mapping_set_group a rdf:Property ;
  rdfs:comment "Set by the owners of the mapping registry. A way to group ." ;
  rdfs:range xsd:string .

sssom:local_name a rdf:Property ;
  rdfs:comment "The local name assigned to file that corresponds to the downloaded mapping set." ;
  rdfs:range xsd:string .

<http://purl.org/dc/elements/1.1/created> a rdf:Property ;
  rdfs:comment "The date the mapping was published. This is different from the date the mapping was asserted." ;
  rdfs:range xsd:date .

sssom:mapping_source a rdf:Property ;
  rdfs:comment "The mapping set this mapping was originally defined in. mapping_source is used for example when merging multiple mapping sets or deriving one mapping set from another." ;
  rdfs:range rdfs:Resource .

sssom:predicate_type a rdf:Property ;
  rdfs:comment "The type of entity that is being mapped." ;
  rdfs:range sssom:EntityTypeEnum .

rdfs:Resource a rdfs:Datatype ;
  rdfs:comment "A reference to a mapped entity. This is represented internally as a string, and as a resource in RDF" .

sssom:EntityTypeEnum a rdfs:Class .

<http://www.w3.org/2002/07/owl#AnnotationProperty> a sssom:EntityTypeEnum .

<http://www.w3.org/2002/07/owl#Class> a sssom:EntityTypeEnum .

<http://www.w3.org/2002/07/owl#DataProperty> a sssom:EntityTypeEnum .

<http://www.w3.org/2002/07/owl#NamedIndividual> a sssom:EntityTypeEnum .

<http://www.w3.org/2002/07/owl#ObjectProperty> a sssom:EntityTypeEnum .

rdfs:Class a sssom:EntityTypeEnum .

rdfs:Datatype a sssom:EntityTypeEnum .

rdfs:Literal a sssom:EntityTypeEnum .

rdf:Property a sssom:EntityTypeEnum .

rdf:Resource a sssom:EntityTypeEnum .

<http://www.w3.org/2004/02/skos/core#Concept> a sssom:EntityTypeEnum .

sssom:MappingCardinalityEnum a rdfs:Class .

sssom:MappingCardinalityEnum.0_1 a sssom:MappingCardinalityEnum ;
  rdfs:comment "None-to-one mapping" .

sssom:MappingCardinalityEnum.1_0 a sssom:MappingCardinalityEnum ;
  rdfs:comment "One-to-none mapping" .

sssom:MappingCardinalityEnum.1_1 a sssom:MappingCardinalityEnum ;
  rdfs:comment "One-to-one mapping" .

sssom:MappingCardinalityEnum.1_N a sssom:MappingCardinalityEnum ;
  rdfs:comment "One-to-many mapping" .

sssom:MappingCardinalityEnum.N_1 a sssom:MappingCardinalityEnum ;
  rdfs:comment "Many-to-one mapping" .

sssom:MappingCardinalityEnum.N_N a sssom:MappingCardinalityEnum ;
  rdfs:comment "Many-to-many mapping" .

sssom:PredicateModifierEnum a rdfs:Class .

sssom:PredicateModifierEnum.NOT a sssom:PredicateModifierEnum ;
  rdfs:comment "Negating the mapping predicate. The meaning of the triple becomes subject_id is not a predicate_id match to object_id." .
