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

infores:InformationResourceContainer a rdfs:Class ;
  rdfs:comment "A collection of information resources" .

infores:information_resources a rdf:Property ;
  rdfs:comment "a collection of information resources" ;
  rdfs:range infores:InformationResource .

infores:InformationResource a rdfs:Class ;
  rdfs:comment "A database or knowledgebase and its supporting ecosystem of interfaces  and services that deliver content to consumers (e.g. web portals, APIs,  query endpoints, streaming services, data downloads, etc.). A single Information Resource by this definition may span many different datasets or databases, and include many access endpoints and user interfaces. Information Resources include project-specific resources such as a Translator Knowledge Provider, and community knowledgebases like ChemBL, OMIM, or DGIdb." .

rdfs:label a rdf:Property ;
  rdfs:comment "A human-readable name for an attribute or entity." ;
  rdfs:range xsd:string .

infores:consumed_by a rdf:Property ;
  rdfs:comment "A collection of information resources that consume this information resource" ;
  rdfs:range xsd:anyURI .

rdfs:comment a rdf:Property ;
  rdfs:comment "A free-text description of an entity or attribute." ;
  rdfs:range xsd:string .

infores:knowledge_level a rdf:Property ;
  rdfs:comment "The level of knowledge that supports an edge or node.  This is a general categorization of the type of evidence that supports a statement, and is not intended to be a comprehensive description of the evidence.  For example, a statement may be supported by a single publication, but that publication may contain multiple types of evidence, such as a computational prediction and a manual curation.  In this case, the knowledge level would be \"curated\", and the evidence would be described in more detail in the evidence graph." ;
  rdfs:range infores:KnowledgeLevelEnum .

infores:synonym a rdf:Property ;
  rdfs:comment "Alternate human-readable names for a thing" ;
  rdfs:range xsd:string .

infores:xref a rdf:Property ;
  rdfs:comment "A database cross reference or alternative identifier for a NamedThing or edge between two  NamedThings.  This property should point to a database record or webpage that supports the existence of the edge, or  gives more detail about the edge. This property can be used on a node or edge to provide multiple URIs or CURIE cross references." ;
  rdfs:range xsd:string .

infores:id a rdf:Property ;
  rdfs:comment "A unique identifier for an entity. Must be either a CURIE shorthand for a URI or a complete URI" ;
  rdfs:range xsd:string .

infores:status a rdf:Property ;
  rdfs:comment "the status of the infores identifier, the default is \"released\"" ;
  rdfs:range infores:InformationResourceStatusEnum .

infores:agent_type a rdf:Property ;
  rdfs:comment "The type of agent that supports an edge or node.  This is a general categorization of the type of agent that supports a statement, and is not intended to be a comprehensive description of the agent.  For example, a statement may be supported by a single publication, but that publication may contain multiple types of evidence, such as a computational prediction and a manual curation.  In this case, the agent type would be \"publication\", and the evidence would be described in more detail in the evidence graph." ;
  rdfs:range infores:AgentTypeEnum .

infores:consumes a rdf:Property ;
  rdfs:comment "A collection of information resources that are consumed by this information resource" ;
  rdfs:range xsd:anyURI .

infores:InformationResourceStatusEnum a rdfs:Class ;
  rdfs:comment "The status of the infores identifier" .

infores:InformationResourceStatusEnum.RELEASED a infores:InformationResourceStatusEnum .

infores:InformationResourceStatusEnum.DEPRECATED a infores:InformationResourceStatusEnum .

infores:InformationResourceStatusEnum.DRAFT a infores:InformationResourceStatusEnum .

infores:InformationResourceStatusEnum.MODIFIED a infores:InformationResourceStatusEnum .

infores:KnowledgeLevelEnum a rdfs:Class ;
  rdfs:comment "The level of knowledge that supports an edge or node.  This is a general categorization of the type of evidence that supports a statement, and is not intended to be a comprehensive description of the evidence.  For example, a statement may be supported by a single publication, but that publication may contain multiple types of evidence, such as a computational prediction and a manual curation.  In this case, the knowledge level would be \"curated\", and the evidence would be described in more detail in the evidence graph." .

infores:KnowledgeLevelEnum.KNOWLEDGE_ASSERTION a infores:KnowledgeLevelEnum ;
  rdfs:comment "Knowledge asserted by a human expert, based on their interpretation of data or published study results" .

infores:KnowledgeLevelEnum.STATISTICAL_ASSOCIATION a infores:KnowledgeLevelEnum ;
  rdfs:comment "Statistical associations calculated between variables in a clinical or omics dataset, by an automated  analysis pipeline" .

infores:KnowledgeLevelEnum.PREDICTION a infores:KnowledgeLevelEnum ;
  rdfs:comment "Predictions generated computationally through inference over less direct forms of evidence (without human  intervention or review)" .

infores:KnowledgeLevelEnum.OBSERVATION a infores:KnowledgeLevelEnum ;
  rdfs:comment "Edge reports a phenomenon that was reported/observed to have occurred (and possibly some quantification,  e.g. how many times, at what frequency)" .

infores:KnowledgeLevelEnum.NOT_PROVIDED a infores:KnowledgeLevelEnum ;
  rdfs:comment "The knowledge level/type fora statement is not provided, typically because it cannot be determined from  available information." .

infores:KnowledgeLevelEnum.LOGICAL_ENTAILMENT a infores:KnowledgeLevelEnum ;
  rdfs:comment "a statement reporting a conclusion that follows logically from premises, which are typically well-established  facts or knowledge assertions. (e.g. fingernail part of finger, finger part of hand → fingernail part of hand)). Logical entailments are based on dedictive inference, and generally have a high degree of confidence when based on sound premises and inference logic." .

infores:KnowledgeLevelEnum.MIXED a infores:KnowledgeLevelEnum ;
  rdfs:comment "A statement that is supported by a mix of different types of evidence, such as a combination of manual  curation and computational prediction. This is a catch-all category for statements that do not fit cleanly  into one of the other categories." .

infores:KnowledgeLevelEnum.OTHER a infores:KnowledgeLevelEnum ;
  rdfs:comment "A knowledge level that does not fit into any of the other categories. This is a catch-all category for  knowledge levels that are not covered by the other categories." .

infores:AgentTypeEnum a rdfs:Class ;
  rdfs:comment "The type of agent that supports an edge or node.  This is a general categorization of the type of agent that supports a statement, and is not intended to be a comprehensive description of the agent.  For example, a statement may be supported by a single publication, but that publication may contain multiple types of evidence, such as a computational prediction and a manual curation.  In this case, the agent type would be \"publication\", and the evidence would be described in more detail in the evidence graph." .

infores:AgentTypeEnum.MANUAL_AGENT a infores:AgentTypeEnum ;
  rdfs:comment "a human agent, such as a curator or expert" .

infores:AgentTypeEnum.NOT_PROVIDED a infores:AgentTypeEnum ;
  rdfs:comment "agent type is not provided or known" .

infores:AgentTypeEnum.AUTOMATED_AGENT a infores:AgentTypeEnum ;
  rdfs:comment "An automated agent, typically a software program or tool, is responsible for generating the knowledge  expressed in the Edge. Human contribution to the knowledge creation process ends with the definition and  coding of algorithms or analysis pipelines that get executed by the automated agent." .

infores:AgentTypeEnum.DATA_ANALYSIS_PIPELINE a infores:AgentTypeEnum ;
  rdfs:comment "An automated agent that executes an analysis workflow over data and reports results in an Edge. These  typically report statistical associations/correlations between variables in the input data." .

infores:AgentTypeEnum.COMPUTATIONAL_MODEL a infores:AgentTypeEnum ;
  rdfs:comment "An automated agent that generates knowledge (typically predictions) based on rules/logic explicitly  encoded in an algorithm (e.g. heuristic models, supervised classifiers), or learned from patterns  observed in data (e.g. ML models, unsupervised classifiers)." .

infores:AgentTypeEnum.TEXT_MINING_AGENT a infores:AgentTypeEnum ;
  rdfs:comment "An automated agent that uses Natural Language Processing to recognize concepts and/or relationships in text, and generates Edges relating these concepts with formally encoded semantics." .

infores:AgentTypeEnum.IMAGE_PROCESSING_AGENT a infores:AgentTypeEnum ;
  rdfs:comment "An automated agent that processes images to recognize features and/or relationships in images, and generates  Edges relating these features with formally encoded semantics." .

infores:AgentTypeEnum.MANUAL_VALIDATION_OF_AUTOMATED_AGENT a infores:AgentTypeEnum ;
  rdfs:comment "A human agent reviews and validates/approves the veracity of knowledge that is initially generated by an  automated agent." .
