From 311eb62d6420a1d8d1cfe4c8cce6f4c36f671e5d Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 30 Aug 2024 10:47:12 -0700 Subject: [PATCH 1/7] Add has_direct_output slot to Activity class --- src/gocam/schema/gocam.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gocam/schema/gocam.yaml b/src/gocam/schema/gocam.yaml index d577b01..e5e51c4 100644 --- a/src/gocam/schema/gocam.yaml +++ b/src/gocam/schema/gocam.yaml @@ -113,6 +113,10 @@ classes: description: The input molecules that are directly consumed by the activity range: MoleculeAssociation inlined: true + has_direct_output: + description: The output molecules that are directly produced by the activity + range: MoleculeAssociation + inlined: true causal_associations: description: The causal associations that connect this activity to other activities range: CausalAssociation From 88975ae426eb49707ad220505f190c26fbb600c9 Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 30 Aug 2024 10:48:31 -0700 Subject: [PATCH 2/7] Regenerate schema artifacts --- project/excel/gocam.xlsx | Bin 17943 -> 17953 bytes project/gocam.py | 9 +- project/graphql/gocam.graphql | 1 + project/jsonld/gocam.context.jsonld | 6 +- project/jsonld/gocam.jsonld | 28 +- project/jsonschema/gocam.schema.json | 4 + project/owl/gocam.owl.ttl | 499 +++++++++++++------------- project/protobuf/gocam.proto | 1 + project/shacl/gocam.shacl.ttl | 506 ++++++++++++++------------- project/shex/gocam.shex | 1 + project/sqlschema/gocam.sql | 5 +- src/gocam/datamodel/gocam.py | 1 + 12 files changed, 563 insertions(+), 498 deletions(-) diff --git a/project/excel/gocam.xlsx b/project/excel/gocam.xlsx index 305ff58a0772a552ddde663a9ebd30cbe6ce650f..ddf8c51fd93b99d4a2d649662b16ca66e103d990 100644 GIT binary patch delta 1880 zcmZvcdpJ~S9LLW&8eNQQ<2EzQprK+ggorVWp?kxo9z|M3np|26$)$2BqM@Tz$z?>U zjeYE~rH#_^ltr1f-EVU1Ha$GnC2hOebKV(DJ)M8v^ZmTP@B2RQ_jk@)m;+04V0Gat zm01)Bg62T){f+b0uczWefHBjREmS}&Ls)3&6<-=SW;}V zW9;yqS7_YUhQ%Y!ag4Sz-j{FnCAapzp{Ez_s#}t(`_8Wz(G2Szp-V%#O~#D;R1M_F zPn~-=^+|pBT(w8K?_>k_2YDTaH^^&;bBilOMdelf@1J-^cC8Mt?OBiXkK}BwbM!yH z;xql|#fRszl6IB0b>IEep5Wm1?D&6?n+Da!1flFW+f6BDZ#Bfrl9P;vRSnu)r3D#v z5vQE~NL|im{W-B`g_yn|s$zcOxjPQ4Ci~yMI+@(~W3I92Xr%uQE8$azw*0`>aFg}V z-@GmgD2sj&E;`L=X|wX^eozJ@8}G51S9UGetQD=v3$|#?%-4T3GytFY&qL;XR{ zp=zeLh+HAdQk#g{d!N_&cW_eLkS*JE=^|NKcEvv~46X57w>v^C1|0QE1GU_4^KNSR6^$W%$ZGgA`rtZBi*NEV?}3$U=`3zY<8v68rCsU)1)a)C*# zvuDiT*(&HY4hksdYoCY^d7*b5UV+@MI5q)*B|0a{OFp<#7h$tTv8M? z;pl}Hfhdl|KPp@WBNUbC`wztzKo02u%To90HIexgfKrrDg)TrX3dG>i5C?r!+d~gk z#d0C04kV1rEtJrG(<)N=p|2^L1a=g`=Mtf{uNSGAjlBEiKm_e z2NO^&kA>izgpJMswkQwz-UPb91n5^K3!X|dlzKGD+Z*^N+K!e*+wtxx_wGvl#Xqdp5 rNdzC+SsEq4gCEm^AnF&(#yg`~&UCa%KnAu>+%}5J1m>!xu0-AcwaC2V delta 1938 zcmZ43!#KT%kvG7bnMH(wfq{czeV5Ec-hK5zDpGFUzm|7E!PATk41z#9B|kZ!D8Has zKRLfBRj(p9XX?a*euoWs+Tv4B?Jb?9bYzj=M|Ig{sD}5#$bFb;NOIRXxc~QCV>?NGqWeQwE3Nx9l=6-6-XfJra__B%3W4We! zGxxpj0(0&+J6{T$+!i>a_2!9lUfF4>KYGrpY+&2q*siOp@rh}jPGZT+^KF_lPug8I zzFHc4Z>q3)PRN1ZpD(}OQWLhlvm|@M%2QIAN?D%*d&OIW?}rowuQ|7QKX-=sVHVHj z4ccX%_fCCH`+Z`{gGYLg`DaGtSx#RxA?c^#t~#YJ@vY}>SB3vSAMr{0vFie@A7Ard zaifIN=GTmNY|OxL+N{GN&m;&6F!MEhJ7xm|Yd$jrgT&-OC9!%VP%xEFzMD7KfTtmz z^&`XCmrK?LvwFOKd24gGXXxtO=_goLtm}pF*^}j#Y9Q5^NS=n{6ZmhOoX(?-)6FT2)w*INckCmZkwzUU{nrt$a zlXntxf3C3S-h!no&*;~Gp8W9Qo9cPItF+i|JQn`6-jN~js-<7H%&&|S>5RLL{+Ctm zwHDZXJij@(Mm>Gy%(fSnn)bJh?k|~jVbL=YrYE19qPLj2PV)LE*ZeHsQ}}0`UF-hY zzo&na>e!+B`}meS(|=yK$==v}@sqNzwavFLKi3|KPFT_95G)q7IdtLV2|@K;i$7+1 z_{$v0QxOhdrYqw8Z;58@mwl0+-S~TtZp(`kU-4GzsRx@;6i2D~uSz5CFK?xMqxu!E zrE&h+$HptLV_6>K&S>YVj?(O=HGW0B%K96=XRm29Y+9@6c8M*hy^!(#+A!%Cu5PbQ z>kdqL^RYyx{phm8e>oHLYtHDD3FQ?V6so@FZ}+y)@Ht%bg4b~J?4xmY3Opwr?^!F^ zX}=UY|3BrcJZhwB@=Rd_Me5{@qAHUM>{vIyTN4KaG6w#sH1nKVW|kcsoy zuRG-eO%!3CTqq^Ad6jGpLXoe08k{qEpCjAm2MP&rfz9bk2-(eFl#w`%s&J0#W`1>u zhbK?eR^2>D1Bs)l1r3Uc+FdYXRX029A}P6`hs23BNQHPeW|?_WJkZTsfT1A0`ITWF zSoh{=<0>X_Sl=*x2F^$a%?^MCHn&(-L6k6BuY%aL&c>Ppz)l^k?UbD~(-i@*Hhw`?{s3=ACJ|^YK0I; zTErYw5@3_(6aj1Rutzv#mMB>098{>lL7GWh94I6`S;~P2Y%fS?FR+La7n>a80MQ5% z@|OY&ErtpuI!QA+iE35l3sa}iJrqtN6;M-8wwAOq$rfDPF12(bnv zq@x5DVsk*NPc5TAg|OV9ubix}c?5Yt;t zu(nKRgnd=oV4)2NAx8Ge51bLso}vdw!qL$c((iWV~z|Fs-*09Ad%(EtDd diff --git a/project/gocam.py b/project/gocam.py index 9b11143..5838bcd 100644 --- a/project/gocam.py +++ b/project/gocam.py @@ -1,5 +1,5 @@ # Auto generated from gocam.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-08-28T17:21:26 +# Generation date: 2024-08-30T10:47:21 # Schema: gocam # # id: https://w3id.org/gocam @@ -212,6 +212,7 @@ class Activity(YAMLRoot): occurs_in: Optional[Union[dict, "CellularAnatomicalEntityAssociation"]] = None part_of: Optional[Union[dict, "BiologicalProcessAssociation"]] = None has_direct_input: Optional[Union[dict, "MoleculeAssociation"]] = None + has_direct_output: Optional[Union[dict, "MoleculeAssociation"]] = None causal_associations: Optional[Union[Union[dict, "CausalAssociation"], List[Union[dict, "CausalAssociation"]]]] = empty_list() provenances: Optional[Union[Union[dict, "ProvenanceInfo"], List[Union[dict, "ProvenanceInfo"]]]] = empty_list() @@ -236,6 +237,9 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.has_direct_input is not None and not isinstance(self.has_direct_input, MoleculeAssociation): self.has_direct_input = MoleculeAssociation(**as_dict(self.has_direct_input)) + if self.has_direct_output is not None and not isinstance(self.has_direct_output, MoleculeAssociation): + self.has_direct_output = MoleculeAssociation(**as_dict(self.has_direct_output)) + if not isinstance(self.causal_associations, list): self.causal_associations = [self.causal_associations] if self.causal_associations is not None else [] self.causal_associations = [v if isinstance(v, CausalAssociation) else CausalAssociation(**as_dict(v)) for v in self.causal_associations] @@ -1175,6 +1179,9 @@ class slots: slots.activity__has_direct_input = Slot(uri=GOCAM.has_direct_input, name="activity__has_direct_input", curie=GOCAM.curie('has_direct_input'), model_uri=GOCAM.activity__has_direct_input, domain=None, range=Optional[Union[dict, MoleculeAssociation]]) +slots.activity__has_direct_output = Slot(uri=GOCAM.has_direct_output, name="activity__has_direct_output", curie=GOCAM.curie('has_direct_output'), + model_uri=GOCAM.activity__has_direct_output, domain=None, range=Optional[Union[dict, MoleculeAssociation]]) + slots.activity__causal_associations = Slot(uri=GOCAM.causal_associations, name="activity__causal_associations", curie=GOCAM.curie('causal_associations'), model_uri=GOCAM.activity__causal_associations, domain=None, range=Optional[Union[Union[dict, CausalAssociation], List[Union[dict, CausalAssociation]]]]) diff --git a/project/graphql/gocam.graphql b/project/graphql/gocam.graphql index 821a6f1..6c0563f 100644 --- a/project/graphql/gocam.graphql +++ b/project/graphql/gocam.graphql @@ -7,6 +7,7 @@ type Activity occursIn: CellularAnatomicalEntityAssociation partOf: BiologicalProcessAssociation hasDirectInput: MoleculeAssociation + hasDirectOutput: MoleculeAssociation causalAssociations: [CausalAssociation] provenances: [ProvenanceInfo] } diff --git a/project/jsonld/gocam.context.jsonld b/project/jsonld/gocam.context.jsonld index 89bca6b..5a3f34e 100644 --- a/project/jsonld/gocam.context.jsonld +++ b/project/jsonld/gocam.context.jsonld @@ -1,7 +1,7 @@ { "comments": { "description": "Auto generated by LinkML jsonld context generator", - "generation_date": "2024-08-28T17:21:26", + "generation_date": "2024-08-30T10:47:20", "source": "gocam.yaml" }, "@context": { @@ -63,6 +63,10 @@ "@type": "@id", "@id": "has_direct_input" }, + "has_direct_output": { + "@type": "@id", + "@id": "has_direct_output" + }, "id": "@id", "molecular_function": { "@type": "@id", diff --git a/project/jsonld/gocam.jsonld b/project/jsonld/gocam.jsonld index 93af161..52bd934 100644 --- a/project/jsonld/gocam.jsonld +++ b/project/jsonld/gocam.jsonld @@ -703,6 +703,20 @@ "inlined": true, "@type": "SlotDefinition" }, + { + "name": "activity__has_direct_output", + "description": "The output molecules that are directly produced by the activity", + "from_schema": "https://w3id.org/gocam", + "slot_uri": "https://w3id.org/gocam/has_direct_output", + "alias": "has_direct_output", + "owner": "Activity", + "domain_of": [ + "Activity" + ], + "range": "MoleculeAssociation", + "inlined": true, + "@type": "SlotDefinition" + }, { "name": "activity__causal_associations", "description": "The causal associations that connect this activity to other activities", @@ -1374,6 +1388,7 @@ "activity__occurs_in", "activity__part_of", "activity__has_direct_input", + "activity__has_direct_output", "activity__causal_associations", "activity__provenances" ], @@ -1427,6 +1442,13 @@ "inlined": true, "@type": "SlotDefinition" }, + { + "name": "has_direct_output", + "description": "The output molecules that are directly produced by the activity", + "range": "MoleculeAssociation", + "inlined": true, + "@type": "SlotDefinition" + }, { "name": "causal_associations", "description": "The causal associations that connect this activity to other activities", @@ -2138,9 +2160,9 @@ ], "metamodel_version": "1.7.0", "source_file": "gocam.yaml", - "source_file_date": "2024-08-28T16:22:21", - "source_file_size": 13188, - "generation_date": "2024-08-28T17:21:26", + "source_file_date": "2024-08-29T14:40:00", + "source_file_size": 13355, + "generation_date": "2024-08-30T10:47:20", "@type": "SchemaDefinition", "@context": [ "project/jsonld/gocam.context.jsonld", diff --git a/project/jsonschema/gocam.schema.json b/project/jsonschema/gocam.schema.json index 1f0bf30..a30c6b0 100644 --- a/project/jsonschema/gocam.schema.json +++ b/project/jsonschema/gocam.schema.json @@ -26,6 +26,10 @@ "$ref": "#/$defs/MoleculeAssociation", "description": "The input molecules that are directly consumed by the activity" }, + "has_direct_output": { + "$ref": "#/$defs/MoleculeAssociation", + "description": "The output molecules that are directly produced by the activity" + }, "id": { "description": "Identifier of the activity unit. Should be in gocam namespace.", "type": "string" diff --git a/project/owl/gocam.owl.ttl b/project/owl/gocam.owl.ttl index 9af790e..88637d4 100644 --- a/project/owl/gocam.owl.ttl +++ b/project/owl/gocam.owl.ttl @@ -11,64 +11,64 @@ gocam:Model a owl:Class, linkml:ClassDefinition ; rdfs:label "Model" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:TaxonTermObject ; + owl:minCardinality 0 ; owl:onProperty gocam:taxon ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:taxon ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:taxon ], + owl:onProperty gocam:title ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:comments ], + owl:onProperty gocam:status ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty gocam:comments ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:id ], + owl:onProperty gocam:title ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:title ], + owl:allValuesFrom gocam:Activity ; + owl:onProperty gocam:activities ], [ a owl:Restriction ; owl:allValuesFrom gocam:Object ; owl:onProperty gocam:objects ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:status ], + owl:minCardinality 0 ; + owl:onProperty gocam:comments ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:status ], + owl:onProperty gocam:objects ], [ a owl:Restriction ; - owl:allValuesFrom gocam:ProvenanceInfo ; + owl:minCardinality 0 ; owl:onProperty gocam:provenances ], [ a owl:Restriction ; - owl:allValuesFrom gocam:Activity ; - owl:onProperty gocam:activities ], + owl:minCardinality 1 ; + owl:onProperty gocam:id ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:activities ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:title ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; owl:onProperty gocam:title ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:objects ], + owl:onProperty gocam:activities ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:comments ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty gocam:id ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:status ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:TaxonTermObject ; + owl:onProperty gocam:taxon ], [ a owl:Restriction ; owl:allValuesFrom gocam:ModelStateEnum ; owl:onProperty gocam:status ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; + owl:onProperty gocam:taxon ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:ProvenanceInfo ; owl:onProperty gocam:provenances ] ; skos:definition "A model of a biological program consisting of a set of causally connected activities" ; skos:inScheme . @@ -77,34 +77,34 @@ gocam:EvidenceItem a owl:Class, linkml:ClassDefinition ; rdfs:label "EvidenceItem" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:Object ; - owl:onProperty gocam:with_objects ], - [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:term ], + owl:onProperty gocam:provenances ], [ a owl:Restriction ; owl:allValuesFrom gocam:PublicationObject ; owl:onProperty gocam:reference ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:reference ], [ a owl:Restriction ; owl:allValuesFrom gocam:ProvenanceInfo ; owl:onProperty gocam:provenances ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:with_objects ], + owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:reference ], + owl:allValuesFrom gocam:EvidenceTermObject ; + owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:reference ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:provenances ], + owl:onProperty gocam:with_objects ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:term ], + owl:allValuesFrom gocam:Object ; + owl:onProperty gocam:with_objects ], [ a owl:Restriction ; - owl:allValuesFrom gocam:EvidenceTermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ] ; skos:definition "An individual piece of evidence that is associated with an assertion in a model" ; skos:inScheme . @@ -168,40 +168,61 @@ gocam:Activity a owl:Class, linkml:ClassDefinition ; rdfs:label "Activity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty gocam:id ], + owl:maxCardinality 1 ; + owl:onProperty gocam:part_of ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:CausalAssociation ; + owl:onProperty gocam:causal_associations ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:has_direct_input ], + owl:onProperty gocam:has_direct_output ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:molecular_function ], + owl:minCardinality 0 ; + owl:onProperty gocam:enabled_by ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:id ], + owl:onProperty gocam:molecular_function ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:causal_associations ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:provenances ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:has_direct_input ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:occurs_in ], + owl:onProperty gocam:id ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:MoleculeAssociation ; + owl:onProperty gocam:has_direct_input ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom gocam:CellularAnatomicalEntityAssociation ; + owl:onProperty gocam:occurs_in ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:ProvenanceInfo ; + owl:onProperty gocam:provenances ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:EnabledByAssociation ; owl:onProperty gocam:enabled_by ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:part_of ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty gocam:id ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:MolecularFunctionAssociation ; + owl:onProperty gocam:molecular_function ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:part_of ], + owl:onProperty gocam:has_direct_output ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:occurs_in ], + owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:allValuesFrom gocam:EnabledByAssociation ; + owl:maxCardinality 1 ; owl:onProperty gocam:enabled_by ], [ a owl:Restriction ; owl:allValuesFrom gocam:BiologicalProcessAssociation ; @@ -210,29 +231,17 @@ gocam:Activity a owl:Class, owl:maxCardinality 1 ; owl:onProperty gocam:has_direct_input ], [ a owl:Restriction ; - owl:allValuesFrom gocam:MolecularFunctionAssociation ; - owl:onProperty gocam:molecular_function ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:CellularAnatomicalEntityAssociation ; - owl:onProperty gocam:occurs_in ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:CausalAssociation ; - owl:onProperty gocam:causal_associations ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:provenances ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:enabled_by ], + owl:allValuesFrom gocam:MoleculeAssociation ; + owl:onProperty gocam:has_direct_output ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:molecular_function ], [ a owl:Restriction ; - owl:allValuesFrom gocam:ProvenanceInfo ; - owl:onProperty gocam:provenances ], + owl:maxCardinality 1 ; + owl:onProperty gocam:occurs_in ], [ a owl:Restriction ; - owl:allValuesFrom gocam:MoleculeAssociation ; - owl:onProperty gocam:has_direct_input ] ; + owl:minCardinality 0 ; + owl:onProperty gocam:occurs_in ] ; skos:altLabel "annoton" ; skos:definition "An individual activity in a causal model, representing the individual molecular activity of a single gene product or complex in the context of a particular model" ; skos:inScheme . @@ -241,14 +250,14 @@ gocam:EnabledByGeneProductAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "EnabledByGeneProductAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; owl:allValuesFrom gocam:GeneProductTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:term ], gocam:EnabledByAssociation ; skos:definition "An association between an activity and a gene product" ; skos:inScheme . @@ -257,20 +266,20 @@ gocam:EnabledByProteinComplexAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "EnabledByProteinComplexAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:GeneProductTermObject ; owl:onProperty gocam:members ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:ProteinComplexTermObject ; - owl:onProperty gocam:term ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:members ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom gocam:GeneProductTermObject ; - owl:onProperty gocam:members ], + owl:allValuesFrom gocam:ProteinComplexTermObject ; + owl:onProperty gocam:term ], gocam:EnabledByAssociation ; skos:definition "An association between an activity and a protein complex" ; skos:inScheme . @@ -348,31 +357,31 @@ gocam:BiologicalProcessAssociation a owl:Class, rdfs:label "BiologicalProcessAssociation" ; rdfs:subClassOf [ a owl:Restriction ; owl:allValuesFrom gocam:BiologicalProcessTermObject ; - owl:onProperty gocam:part_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:allValuesFrom gocam:BiologicalProcessTermObject ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:happens_during ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:happens_during ], [ a owl:Restriction ; owl:allValuesFrom gocam:PhaseTermObject ; owl:onProperty gocam:happens_during ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:BiologicalProcessTermObject ; + owl:onProperty gocam:part_of ], gocam:TermAssociation ; skos:definition "An association between an activity and a biological process term" ; skos:inScheme . @@ -381,10 +390,7 @@ gocam:CausalAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "CausalAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:downstream_activity ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:PredicateTermObject ; owl:onProperty gocam:predicate ], [ a owl:Restriction ; owl:maxCardinality 1 ; @@ -396,8 +402,11 @@ gocam:CausalAssociation a owl:Class, owl:maxCardinality 1 ; owl:onProperty gocam:predicate ], [ a owl:Restriction ; - owl:allValuesFrom gocam:PredicateTermObject ; + owl:minCardinality 0 ; owl:onProperty gocam:predicate ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:downstream_activity ], gocam:Association ; skos:definition "A causal association between two activities" ; skos:inScheme . @@ -406,23 +415,23 @@ gocam:CellTypeAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "CellTypeAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:CellTypeTermObject ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:part_of ], + owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:GrossAnatomyAssociation ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:CellTypeTermObject ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:term ], + owl:minCardinality 0 ; + owl:onProperty gocam:part_of ], gocam:TermAssociation ; skos:definition "An association between an activity and a cell type term" ; skos:inScheme . @@ -438,23 +447,23 @@ gocam:CellularAnatomicalEntityAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "CellularAnatomicalEntityAssociation" ; rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:CellularAnatomicalEntityTermObject ; - owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:CellTypeAssociation ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:part_of ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:CellularAnatomicalEntityTermObject ; + owl:onProperty gocam:term ], gocam:TermAssociation ; skos:definition "An association between an activity and a cellular anatomical entity term" ; skos:inScheme . @@ -484,14 +493,14 @@ gocam:MolecularFunctionAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "MolecularFunctionAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:MolecularFunctionTermObject ; owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:term ], gocam:TermAssociation ; skos:definition "An association between an activity and a molecular function term" ; skos:inScheme . @@ -503,22 +512,6 @@ gocam:MolecularFunctionTermObject a owl:Class, skos:definition "A term object that represents a molecular function term from GO" ; skos:inScheme . -gocam:MoleculeAssociation a owl:Class, - linkml:ClassDefinition ; - rdfs:label "MoleculeAssociation" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:MoleculeTermObject ; - owl:onProperty gocam:term ], - gocam:TermAssociation ; - skos:definition "An association between an activity and a molecule term" ; - skos:inScheme . - gocam:MoleculeTermObject a owl:Class, linkml:ClassDefinition ; rdfs:label "MoleculeTermObject" ; @@ -551,19 +544,19 @@ gocam:PublicationObject a owl:Class, linkml:ClassDefinition ; rdfs:label "PublicationObject" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty gocam:full_text ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty gocam:full_text ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:abstract_text ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:full_text ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:abstract_text ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; @@ -623,6 +616,12 @@ gocam:has_direct_input a owl:ObjectProperty, skos:definition "The input molecules that are directly consumed by the activity" ; skos:inScheme . +gocam:has_direct_output a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "has_direct_output" ; + skos:definition "The output molecules that are directly produced by the activity" ; + skos:inScheme . + gocam:label a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "label" ; @@ -699,66 +698,82 @@ gocam:GrossAnatomyAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "GrossAnatomyAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:part_of ], + owl:allValuesFrom gocam:GrossAnatomicalStructureTermObject ; + owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:GrossAnatomyAssociation ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom gocam:GrossAnatomicalStructureTermObject ; + owl:maxCardinality 1 ; + owl:onProperty gocam:part_of ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:part_of ], + gocam:TermAssociation ; + skos:definition "An association between an activity and a gross anatomical structure term" ; + skos:inScheme . + +gocam:MoleculeAssociation a owl:Class, + linkml:ClassDefinition ; + rdfs:label "MoleculeAssociation" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:MoleculeTermObject ; + owl:onProperty gocam:term ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:term ], gocam:TermAssociation ; - skos:definition "An association between an activity and a gross anatomical structure term" ; + skos:definition "An association between an activity and a molecule term" ; skos:inScheme . gocam:ProvenanceInfo a owl:Class, linkml:ClassDefinition ; rdfs:label "ProvenanceInfo" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:date ], + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:provided_by ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty gocam:created ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; owl:onProperty gocam:provided_by ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:contributor ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:date ], + owl:minCardinality 0 ; + owl:onProperty gocam:provided_by ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:date ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:created ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty gocam:contributor ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:provided_by ], + owl:onProperty gocam:created ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:contributor ], + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:date ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:provided_by ], + owl:onProperty gocam:date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:created ] ; + owl:minCardinality 0 ; + owl:onProperty gocam:created ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:contributor ] ; skos:definition "Provenance information for an object" ; skos:inScheme . @@ -766,26 +781,26 @@ gocam:Association a owl:Class, linkml:ClassDefinition ; rdfs:label "Association" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty gocam:type ], [ a owl:Restriction ; - owl:allValuesFrom gocam:ProvenanceInfo ; - owl:onProperty gocam:provenances ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:EvidenceItem ; - owl:onProperty gocam:evidence ], + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:type ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:provenances ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:type ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:evidence ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:type ], + owl:allValuesFrom gocam:EvidenceItem ; + owl:onProperty gocam:evidence ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:type ] ; + owl:allValuesFrom gocam:ProvenanceInfo ; + owl:onProperty gocam:provenances ] ; skos:definition "An abstract grouping for different kinds of evidence-associated provenance" ; skos:inScheme . @@ -793,13 +808,13 @@ gocam:EnabledByAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "EnabledByAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:InformationBiomacromoleculeTermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:InformationBiomacromoleculeTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], gocam:Association ; skos:definition "An association between an activity and the gene product or complex that carries it out" ; @@ -822,41 +837,41 @@ gocam:Object a owl:Class, linkml:ClassDefinition ; rdfs:label "Object" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty gocam:obsolete ], + owl:minCardinality 0 ; + owl:onProperty gocam:label ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:label ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty gocam:type ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty gocam:id ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:obsolete ], + owl:onProperty gocam:type ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:type ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:label ], + owl:maxCardinality 1 ; + owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:minCardinality 1 ; owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:type ], + owl:allValuesFrom linkml:Boolean ; + owl:onProperty gocam:obsolete ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:label ], + owl:onProperty gocam:obsolete ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:label ], + owl:minCardinality 0 ; + owl:onProperty gocam:obsolete ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:obsolete ] ; + owl:onProperty gocam:label ] ; skos:definition "An abstract class for all identified objects in a model" ; skos:inScheme . @@ -872,13 +887,13 @@ gocam:TermAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "TermAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:TermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], gocam:Association ; skos:definition "An association between an activity and a term, potentially with extensions" ; @@ -933,142 +948,142 @@ The central class in this datamodel is a [Model](Model.md). A model consists of [Activity](Activity.md) objects.""" . [] a owl:Restriction ; - rdfs:subClassOf gocam:MoleculeTermObject ; + rdfs:subClassOf gocam:PublicationObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MoleculeTermObject . + owl:someValuesFrom gocam:PublicationObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellTypeAssociation ; + rdfs:subClassOf gocam:CellTypeTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellTypeAssociation . + owl:someValuesFrom gocam:CellTypeTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:MolecularFunctionAssociation ; + rdfs:subClassOf gocam:BiologicalProcessAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MolecularFunctionAssociation . + owl:someValuesFrom gocam:BiologicalProcessAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:BiologicalProcessAssociation ; + rdfs:subClassOf gocam:GeneProductTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:BiologicalProcessAssociation . + owl:someValuesFrom gocam:GeneProductTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellTypeTermObject ; + rdfs:subClassOf gocam:MoleculeTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellTypeTermObject . + owl:someValuesFrom gocam:MoleculeTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:TermObject ; + rdfs:subClassOf gocam:EnabledByProteinComplexAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:TermObject . + owl:someValuesFrom gocam:EnabledByProteinComplexAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:Association ; + rdfs:subClassOf gocam:Object ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:Association . + owl:someValuesFrom gocam:Object . [] a owl:Restriction ; - rdfs:subClassOf gocam:GrossAnatomyAssociation ; + rdfs:subClassOf gocam:CellularAnatomicalEntityTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:GrossAnatomyAssociation . + owl:someValuesFrom gocam:CellularAnatomicalEntityTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:PublicationObject ; + rdfs:subClassOf gocam:GrossAnatomicalStructureTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:PublicationObject . + owl:someValuesFrom gocam:GrossAnatomicalStructureTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:EvidenceTermObject ; + rdfs:subClassOf gocam:EnabledByAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EvidenceTermObject . + owl:someValuesFrom gocam:EnabledByAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:MolecularFunctionTermObject ; + rdfs:subClassOf gocam:TermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MolecularFunctionTermObject . + owl:someValuesFrom gocam:TermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:MoleculeAssociation ; + rdfs:subClassOf gocam:BiologicalProcessTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MoleculeAssociation . + owl:someValuesFrom gocam:BiologicalProcessTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:Object ; + rdfs:subClassOf gocam:CellularAnatomicalEntityAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:Object . + owl:someValuesFrom gocam:CellularAnatomicalEntityAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:InformationBiomacromoleculeTermObject ; + rdfs:subClassOf gocam:PredicateTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:InformationBiomacromoleculeTermObject . + owl:someValuesFrom gocam:PredicateTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:ProteinComplexTermObject ; + rdfs:subClassOf gocam:GrossAnatomyAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:ProteinComplexTermObject . + owl:someValuesFrom gocam:GrossAnatomyAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:PredicateTermObject ; + rdfs:subClassOf gocam:MoleculeAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:PredicateTermObject . + owl:someValuesFrom gocam:MoleculeAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:EnabledByGeneProductAssociation ; + rdfs:subClassOf gocam:PhaseTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EnabledByGeneProductAssociation . + owl:someValuesFrom gocam:PhaseTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CausalAssociation ; + rdfs:subClassOf gocam:TaxonTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CausalAssociation . + owl:someValuesFrom gocam:TaxonTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellularAnatomicalEntityAssociation ; + rdfs:subClassOf gocam:EvidenceTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellularAnatomicalEntityAssociation . + owl:someValuesFrom gocam:EvidenceTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:EnabledByProteinComplexAssociation ; + rdfs:subClassOf gocam:CellTypeAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EnabledByProteinComplexAssociation . + owl:someValuesFrom gocam:CellTypeAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:EnabledByAssociation ; + rdfs:subClassOf gocam:Association ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EnabledByAssociation . + owl:someValuesFrom gocam:Association . [] a owl:Restriction ; - rdfs:subClassOf gocam:GrossAnatomicalStructureTermObject ; + rdfs:subClassOf gocam:EnabledByGeneProductAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:GrossAnatomicalStructureTermObject . + owl:someValuesFrom gocam:EnabledByGeneProductAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:TaxonTermObject ; + rdfs:subClassOf gocam:MolecularFunctionAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:TaxonTermObject . + owl:someValuesFrom gocam:MolecularFunctionAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:GeneProductTermObject ; + rdfs:subClassOf gocam:InformationBiomacromoleculeTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:GeneProductTermObject . + owl:someValuesFrom gocam:InformationBiomacromoleculeTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:PhaseTermObject ; + rdfs:subClassOf gocam:CausalAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:PhaseTermObject . + owl:someValuesFrom gocam:CausalAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:TermAssociation ; + rdfs:subClassOf gocam:MolecularFunctionTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:TermAssociation . + owl:someValuesFrom gocam:MolecularFunctionTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:BiologicalProcessTermObject ; + rdfs:subClassOf gocam:ProteinComplexTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:BiologicalProcessTermObject . + owl:someValuesFrom gocam:ProteinComplexTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellularAnatomicalEntityTermObject ; + rdfs:subClassOf gocam:TermAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellularAnatomicalEntityTermObject . + owl:someValuesFrom gocam:TermAssociation . diff --git a/project/protobuf/gocam.proto b/project/protobuf/gocam.proto index 27080ea..cfdd5a6 100644 --- a/project/protobuf/gocam.proto +++ b/project/protobuf/gocam.proto @@ -10,6 +10,7 @@ message Activity cellularAnatomicalEntityAssociation occursIn = 0 biologicalProcessAssociation partOf = 0 moleculeAssociation hasDirectInput = 0 + moleculeAssociation hasDirectOutput = 0 repeated causalAssociation causalAssociations = 0 repeated provenanceInfo provenances = 0 } diff --git a/project/shacl/gocam.shacl.ttl b/project/shacl/gocam.shacl.ttl index 099fba7..1735046 100644 --- a/project/shacl/gocam.shacl.ttl +++ b/project/shacl/gocam.shacl.ttl @@ -8,19 +8,19 @@ gocam:Association a sh:NodeShape ; sh:closed false ; sh:description "An abstract grouping for different kinds of evidence-associated provenance" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:ProvenanceInfo ; + sh:property [ sh:class gocam:EvidenceItem ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:provenances ], + sh:order 1 ; + sh:path gocam:evidence ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:type ], - [ sh:class gocam:EvidenceItem ; + [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 1 ; - sh:path gocam:evidence ] ; + sh:order 2 ; + sh:path gocam:provenances ] ; sh:targetClass gocam:Association . gocam:CellTypeAssociation a sh:NodeShape ; @@ -31,6 +31,11 @@ gocam:CellTypeAssociation a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; sh:path gocam:evidence ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path gocam:type ], [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; @@ -40,28 +45,23 @@ gocam:CellTypeAssociation a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path gocam:term ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path gocam:type ] ; + sh:path gocam:term ] ; sh:targetClass gocam:CellTypeAssociation . gocam:EnabledByGeneProductAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a gene product" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:class gocam:GeneProductTermObject ; + sh:property [ sh:class gocam:GeneProductTermObject ; sh:description "The gene product or complex that carries out the activity" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:term ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -81,26 +81,26 @@ gocam:EnabledByProteinComplexAssociation a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path gocam:provenances ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], [ sh:class gocam:GeneProductTermObject ; sh:description "The gene products that are part of the complex" ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:members ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:evidence ], [ sh:class gocam:ProteinComplexTermObject ; sh:description "The gene product or complex that carries out the activity" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; - sh:path gocam:term ] ; + sh:path gocam:term ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:evidence ] ; sh:targetClass gocam:EnabledByProteinComplexAssociation . gocam:GrossAnatomyAssociation a sh:NodeShape ; @@ -137,44 +137,44 @@ gocam:Model a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 7 ; sh:path gocam:provenances ], - [ sh:description "The status of the model" ; - sh:in ( "production" "development" ) ; - sh:maxCount 1 ; - sh:order 3 ; - sh:path pav:status ], - [ sh:class gocam:Object ; - sh:description "All of the objects that are part of the model. This includes terms as well as publications and database objects like gene. This is not strictly part of the data managed by the model, it is for convenience, and should be refreshed from outside." ; - sh:nodeKind sh:IRI ; - sh:order 6 ; - sh:path gocam:objects ], [ sh:datatype xsd:anyURI ; sh:description "The identifier of the model. Should be in gocam namespace." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:class gocam:Activity ; - sh:description "All of the activities that are part of the model" ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path gocam:activities ], + [ sh:description "The status of the model" ; + sh:in ( "production" "development" ) ; + sh:maxCount 1 ; + sh:order 3 ; + sh:path pav:status ], [ sh:datatype xsd:string ; - sh:description "Comments about the model" ; + sh:description "The human-readable descriptive title of the model" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path ], + sh:order 1 ; + sh:path ], [ sh:class gocam:TaxonTermObject ; sh:description "The primary taxon that the model is about" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 2 ; sh:path gocam:taxon ], + [ sh:class gocam:Object ; + sh:description "All of the objects that are part of the model. This includes terms as well as publications and database objects like gene. This is not strictly part of the data managed by the model, it is for convenience, and should be refreshed from outside." ; + sh:nodeKind sh:IRI ; + sh:order 6 ; + sh:path gocam:objects ], [ sh:datatype xsd:string ; - sh:description "The human-readable descriptive title of the model" ; - sh:maxCount 1 ; + sh:description "Comments about the model" ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ] ; + sh:order 4 ; + sh:path ], + [ sh:class gocam:Activity ; + sh:description "All of the activities that are part of the model" ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path gocam:activities ] ; sh:targetClass gocam:Model . gocam:PhaseTermObject a sh:NodeShape ; @@ -182,16 +182,10 @@ gocam:PhaseTermObject a sh:NodeShape ; sh:description "A term object that represents a phase term from GO or UBERON" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], - [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -199,9 +193,15 @@ gocam:PhaseTermObject a sh:NodeShape ; sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ] ; + sh:order 0 ; + sh:path gocam:id ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ] ; sh:targetClass gocam:PhaseTermObject . gocam:TermAssociation a sh:NodeShape ; @@ -233,21 +233,21 @@ gocam:BiologicalProcessAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a biological process term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path gocam:type ], + sh:property [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ], [ sh:class gocam:BiologicalProcessTermObject ; sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:term ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path gocam:type ], [ sh:class gocam:EvidenceItem ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; @@ -258,17 +258,17 @@ gocam:BiologicalProcessTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a biological process term from GO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ], + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -285,7 +285,12 @@ gocam:CausalAssociation a sh:NodeShape ; sh:closed true ; sh:description "A causal association between two activities" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; + sh:property [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ], + [ sh:class gocam:EvidenceItem ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path gocam:evidence ], @@ -293,11 +298,6 @@ gocam:CausalAssociation a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path gocam:provenances ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], [ sh:class gocam:PredicateTermObject ; sh:description "The RO relation that represents the type of relationship" ; sh:maxCount 1 ; @@ -316,22 +316,22 @@ gocam:CellTypeTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a cell type term from CL" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:anyURI ; + [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -343,59 +343,63 @@ gocam:CellularAnatomicalEntityAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a cellular anatomical entity term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:class gocam:CellularAnatomicalEntityTermObject ; + sh:property [ sh:class gocam:CellularAnatomicalEntityTermObject ; sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:term ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path gocam:type ] ; + sh:path gocam:type ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ] ; sh:targetClass gocam:CellularAnatomicalEntityAssociation . gocam:CellularAnatomicalEntityTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a cellular anatomical entity term from GO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 0 ; + sh:path gocam:id ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path gocam:type ], - [ sh:datatype xsd:anyURI ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ] ; + sh:order 1 ; + sh:path ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:CellularAnatomicalEntityTermObject . gocam:EnabledByAssociation a sh:NodeShape ; sh:closed false ; sh:description "An association between an activity and the gene product or complex that carries it out" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; @@ -404,10 +408,6 @@ gocam:EnabledByAssociation a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path gocam:provenances ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], [ sh:class gocam:InformationBiomacromoleculeTermObject ; sh:description "The gene product or complex that carries out the activity" ; sh:maxCount 1 ; @@ -457,81 +457,76 @@ gocam:GrossAnatomicalStructureTermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path gocam:type ], - [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:id ] ; + sh:path gocam:id ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:GrossAnatomicalStructureTermObject . gocam:InformationBiomacromoleculeTermObject a sh:NodeShape ; sh:closed false ; sh:description "An abstract class for all information biomacromolecule term objects" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path ] ; + sh:path ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:InformationBiomacromoleculeTermObject . gocam:MolecularFunctionAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a molecular function term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:class gocam:MolecularFunctionTermObject ; + sh:property [ sh:class gocam:MolecularFunctionTermObject ; sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:term ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path gocam:type ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ] ; + sh:path gocam:type ] ; sh:targetClass gocam:MolecularFunctionAssociation . gocam:MolecularFunctionTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a molecular function term from GO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], - [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; @@ -542,6 +537,11 @@ gocam:MolecularFunctionTermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path gocam:type ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -549,36 +549,16 @@ gocam:MolecularFunctionTermObject a sh:NodeShape ; sh:path gocam:obsolete ] ; sh:targetClass gocam:MolecularFunctionTermObject . -gocam:MoleculeAssociation a sh:NodeShape ; - sh:closed true ; - sh:description "An association between an activity and a molecule term" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:class gocam:MoleculeTermObject ; - sh:description "The ontology term that describes the nature of the association" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path gocam:term ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path gocam:type ] ; - sh:targetClass gocam:MoleculeAssociation . - gocam:MoleculeTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a molecule term from CHEBI or UniProtKB" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ], + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; @@ -593,12 +573,7 @@ gocam:MoleculeTermObject a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; - sh:path gocam:obsolete ], - [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ] ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:MoleculeTermObject . gocam:PredicateTermObject a sh:NodeShape ; @@ -610,6 +585,11 @@ gocam:PredicateTermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path gocam:obsolete ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -620,29 +600,24 @@ gocam:PredicateTermObject a sh:NodeShape ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:id ], - [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ] ; + sh:path gocam:id ] ; sh:targetClass gocam:PredicateTermObject . gocam:ProteinComplexTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a protein complex term from GO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ], + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -659,22 +634,11 @@ gocam:PublicationObject a sh:NodeShape ; sh:closed true ; sh:description "An object that represents a publication or other kind of reference" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path gocam:obsolete ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path gocam:full_text ], - [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:id ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -685,23 +649,29 @@ gocam:PublicationObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path gocam:type ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:abstract_text ] ; + sh:path gocam:abstract_text ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:id ] ; sh:targetClass gocam:PublicationObject . gocam:TaxonTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a taxon term from NCBITaxon" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; @@ -711,6 +681,11 @@ gocam:TaxonTermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -732,69 +707,75 @@ gocam:TermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path ], - [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:id ] ; + sh:path gocam:id ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:TermObject . gocam:Activity a sh:NodeShape ; sh:closed true ; sh:description "An individual activity in a causal model, representing the individual molecular activity of a single gene product or complex in the context of a particular model" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:MoleculeAssociation ; + sh:property [ sh:class gocam:CausalAssociation ; + sh:description "The causal associations that connect this activity to other activities" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path gocam:causal_associations ], + [ sh:class gocam:MolecularFunctionAssociation ; + sh:description "The molecular function that is carried out by the gene product or complex" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:molecular_function ], + [ sh:class gocam:MoleculeAssociation ; + sh:description "The output molecules that are directly produced by the activity" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path gocam:has_direct_output ], + [ sh:class gocam:MoleculeAssociation ; sh:description "The input molecules that are directly consumed by the activity" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path gocam:has_direct_input ], - [ sh:class gocam:ProvenanceInfo ; - sh:description "Provenance information for the activity" ; + [ sh:class gocam:BiologicalProcessAssociation ; + sh:description "The larger biological process in which the activity is a part" ; + sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path gocam:provenances ], + sh:order 4 ; + sh:path gocam:part_of ], [ sh:class gocam:CellularAnatomicalEntityAssociation ; sh:description "The cellular location in which the activity occurs" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path gocam:occurs_in ], - [ sh:class gocam:BiologicalProcessAssociation ; - sh:description "The larger biological process in which the activity is a part" ; - sh:maxCount 1 ; + [ sh:class gocam:ProvenanceInfo ; + sh:description "Provenance information for the activity" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path gocam:part_of ], + sh:order 8 ; + sh:path gocam:provenances ], [ sh:class gocam:EnabledByAssociation ; sh:description "The gene product or complex that carries out the activity" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path gocam:enabled_by ], - [ sh:class gocam:CausalAssociation ; - sh:description "The causal associations that connect this activity to other activities" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path gocam:causal_associations ], [ sh:datatype xsd:anyURI ; sh:description "Identifier of the activity unit. Should be in gocam namespace." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:id ], - [ sh:class gocam:MolecularFunctionAssociation ; - sh:description "The molecular function that is carried out by the gene product or complex" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:molecular_function ] ; + sh:path gocam:id ] ; sh:targetClass gocam:Activity . gocam:GeneProductTermObject a sh:NodeShape ; @@ -824,21 +805,46 @@ gocam:GeneProductTermObject a sh:NodeShape ; sh:path gocam:obsolete ] ; sh:targetClass gocam:GeneProductTermObject . -gocam:Object a sh:NodeShape ; +gocam:MoleculeAssociation a sh:NodeShape ; sh:closed true ; - sh:description "An abstract class for all identified objects in a model" ; + sh:description "An association between an activity and a molecule term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path ], - [ sh:datatype xsd:anyURI ; + sh:path gocam:type ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ], + [ sh:class gocam:MoleculeTermObject ; + sh:description "The ontology term that describes the nature of the association" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path gocam:term ] ; + sh:targetClass gocam:MoleculeAssociation . + +gocam:Object a sh:NodeShape ; + sh:closed true ; + sh:description "An abstract class for all identified objects in a model" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -855,7 +861,12 @@ gocam:EvidenceItem a sh:NodeShape ; sh:closed true ; sh:description "An individual piece of evidence that is associated with an assertion in a model" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:PublicationObject ; + sh:property [ sh:class gocam:Object ; + sh:description "Supporting database entities or terms" ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path gocam:with_objects ], + [ sh:class gocam:PublicationObject ; sh:description "The publication of reference that describes the evidence" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; @@ -867,11 +878,6 @@ gocam:EvidenceItem a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:term ], - [ sh:class gocam:Object ; - sh:description "Supporting database entities or terms" ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path gocam:with_objects ], [ sh:class gocam:ProvenanceInfo ; sh:description "Provenance about the assertion, e.g. who made it" ; sh:nodeKind sh:BlankNodeOrIRI ; @@ -886,8 +892,8 @@ gocam:ProvenanceInfo a sh:NodeShape ; sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path ], + sh:order 3 ; + sh:path pav:providedBy ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -896,8 +902,8 @@ gocam:ProvenanceInfo a sh:NodeShape ; [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path pav:providedBy ], + sh:order 0 ; + sh:path ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; diff --git a/project/shex/gocam.shex b/project/shex/gocam.shex index 31ac642..d9eef46 100644 --- a/project/shex/gocam.shex +++ b/project/shex/gocam.shex @@ -52,6 +52,7 @@ linkml:Sparqlpath xsd:string @ ? ; @ ? ; @ ? ; + @ ? ; @ * ; @ * ) ; diff --git a/project/sqlschema/gocam.sql b/project/sqlschema/gocam.sql index a252c26..bcbc938 100644 --- a/project/sqlschema/gocam.sql +++ b/project/sqlschema/gocam.sql @@ -11,6 +11,7 @@ -- * Slot: occurs_in_id Description: The cellular location in which the activity occurs -- * Slot: part_of_id Description: The larger biological process in which the activity is a part -- * Slot: has_direct_input_id Description: The input molecules that are directly consumed by the activity +-- * Slot: has_direct_output_id Description: The output molecules that are directly produced by the activity -- # Class: "EvidenceItem" Description: "An individual piece of evidence that is associated with an assertion in a model" -- * Slot: id Description: -- * Slot: term Description: The ECO term representing the type of evidence @@ -388,13 +389,15 @@ CREATE TABLE "Activity" ( occurs_in_id INTEGER, part_of_id INTEGER, has_direct_input_id INTEGER, + has_direct_output_id INTEGER, PRIMARY KEY (id), FOREIGN KEY("Model_id") REFERENCES "Model" (id), FOREIGN KEY(enabled_by_id) REFERENCES "EnabledByAssociation" (id), FOREIGN KEY(molecular_function_id) REFERENCES "MolecularFunctionAssociation" (id), FOREIGN KEY(occurs_in_id) REFERENCES "CellularAnatomicalEntityAssociation" (id), FOREIGN KEY(part_of_id) REFERENCES "BiologicalProcessAssociation" (id), - FOREIGN KEY(has_direct_input_id) REFERENCES "MoleculeAssociation" (id) + FOREIGN KEY(has_direct_input_id) REFERENCES "MoleculeAssociation" (id), + FOREIGN KEY(has_direct_output_id) REFERENCES "MoleculeAssociation" (id) ); CREATE TABLE "Object" ( id TEXT NOT NULL, diff --git a/src/gocam/datamodel/gocam.py b/src/gocam/datamodel/gocam.py index ff6f6e3..cb8561f 100644 --- a/src/gocam/datamodel/gocam.py +++ b/src/gocam/datamodel/gocam.py @@ -98,6 +98,7 @@ class Activity(ConfiguredBaseModel): occurs_in: Optional[CellularAnatomicalEntityAssociation] = Field(None, description="""The cellular location in which the activity occurs""") part_of: Optional[BiologicalProcessAssociation] = Field(None, description="""The larger biological process in which the activity is a part""") has_direct_input: Optional[MoleculeAssociation] = Field(None, description="""The input molecules that are directly consumed by the activity""") + has_direct_output: Optional[MoleculeAssociation] = Field(None, description="""The output molecules that are directly produced by the activity""") causal_associations: Optional[List[CausalAssociation]] = Field(default_factory=list, description="""The causal associations that connect this activity to other activities""") provenances: Optional[List[ProvenanceInfo]] = Field(default_factory=list, description="""Provenance information for the activity""") From a636e05803f47571afaed848c6ecab67ff9cf030 Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 30 Aug 2024 10:49:52 -0700 Subject: [PATCH 3/7] Populate `has_direct_input` and `has_direct_output` in `minerva_object_to_model` --- src/gocam/translation/minerva_wrapper.py | 74 +++++++++++++------ tests/input/minerva-665912ed00002626.json | 1 + .../test_translation/test_minerva_wrapper.py | 36 +++++++++ 3 files changed, 88 insertions(+), 23 deletions(-) create mode 100644 tests/input/minerva-665912ed00002626.json diff --git a/src/gocam/translation/minerva_wrapper.py b/src/gocam/translation/minerva_wrapper.py index 07e1c25..53aa551 100644 --- a/src/gocam/translation/minerva_wrapper.py +++ b/src/gocam/translation/minerva_wrapper.py @@ -1,7 +1,7 @@ import logging from collections import defaultdict from dataclasses import dataclass, field -from typing import DefaultDict, Dict, Iterator, List, Optional, Set +from typing import DefaultDict, Dict, Iterator, List, Optional, Set, Tuple import requests import yaml @@ -11,12 +11,13 @@ BiologicalProcessAssociation, CausalAssociation, CellularAnatomicalEntityAssociation, - EvidenceItem, EnabledByAssociation, - EnabledByProteinComplexAssociation, EnabledByGeneProductAssociation, + EnabledByProteinComplexAssociation, + EvidenceItem, Model, MolecularFunctionAssociation, + MoleculeAssociation, Object, ProvenanceInfo, ) @@ -25,6 +26,8 @@ PART_OF = "BFO:0000050" HAS_PART = "BFO:0000051" OCCURS_IN = "BFO:0000066" +HAS_INPUT = "RO:0002233" +HAS_OUTPUT = "RO:0002234" logger = logging.getLogger(__name__) @@ -170,7 +173,7 @@ def minerva_object_to_model(obj: Dict) -> Model: id2obj: Dict[str, Dict] = {} activities: List[Activity] = [] activities_by_mf_id: DefaultDict[str, List[Activity]] = defaultdict(list) - facts_by_property = defaultdict(list) + facts_by_property: DefaultDict[str, List[Dict]] = defaultdict(list) def _cls(obj: Dict) -> Optional[str]: if obj.get("type", None) == "complement": @@ -209,6 +212,19 @@ def _evidence_from_fact(fact: Dict) -> List[EvidenceItem]: evs.append(ev) return evs + def _iter_activities_by_fact_subject( + *, + fact_property: str, + ) -> Iterator[Tuple[Activity, str, List[EvidenceItem]]]: + for fact in facts_by_property.get(fact_property, []): + s, o = fact["subject"], fact["object"] + if o not in individual_to_term: + logger.warning(f"Missing {o} in {individual_to_term}") + continue + for activity in activities_by_mf_id.get(s, []): + evs = _evidence_from_fact(fact) + yield activity, individual_to_term[o], evs + for individual in obj["individuals"]: typs = [x["label"] for x in individual.get("root-type", []) if x] typ: Optional[str] = None @@ -281,27 +297,39 @@ def _evidence_from_fact(fact: Dict) -> List[EvidenceItem]: activities.append(activity) activities_by_mf_id[s].append(activity) - for fact in facts_by_property.get(PART_OF, []): - s, o = fact["subject"], fact["object"] - if o not in individual_to_term: - logger.warning(f"Missing {o} in {individual_to_term}") - continue - for a in activities_by_mf_id.get(s, []): - evs = _evidence_from_fact(fact) - a.part_of = BiologicalProcessAssociation( - term=individual_to_term[o], evidence=evs - ) + for activity, term, evs in _iter_activities_by_fact_subject( + fact_property=PART_OF + ): + if activity.part_of is not None: + logger.warning(f"Overwriting part_of for Activity: {activity.id}") + activity.part_of = BiologicalProcessAssociation(term=term, evidence=evs) + + for activity, term, evs in _iter_activities_by_fact_subject( + fact_property=OCCURS_IN + ): + if activity.occurs_in is not None: + logger.warning(f"Overwriting occurs_in for Activity: {activity.id}") + activity.occurs_in = CellularAnatomicalEntityAssociation( + term=term, evidence=evs + ) - for fact in facts_by_property.get(OCCURS_IN, []): - s, o = fact["subject"], fact["object"] - if o not in individual_to_term: - logger.warning(f"Missing {o} in {individual_to_term}") - continue - for a in activities_by_mf_id.get(s, []): - evs = _evidence_from_fact(fact) - a.occurs_in = CellularAnatomicalEntityAssociation( - term=individual_to_term[o], evidence=evs + for activity, term, evs in _iter_activities_by_fact_subject( + fact_property=HAS_INPUT + ): + if activity.has_direct_input is not None: + logger.warning( + f"Overwriting has_direct_input for Activity: {activity.id}" + ) + activity.has_direct_input = MoleculeAssociation(term=term, evidence=evs) + + for activity, term, evs in _iter_activities_by_fact_subject( + fact_property=HAS_OUTPUT + ): + if activity.has_direct_output is not None: + logger.warning( + f"Overwriting has_direct_output for Activity: {activity.id}" ) + activity.has_direct_output = MoleculeAssociation(term=term, evidence=evs) for fact_property, facts in facts_by_property.items(): for fact in facts: diff --git a/tests/input/minerva-665912ed00002626.json b/tests/input/minerva-665912ed00002626.json new file mode 100644 index 0000000..944a8b9 --- /dev/null +++ b/tests/input/minerva-665912ed00002626.json @@ -0,0 +1 @@ +{"id":"gomodel:665912ed00002626","individuals":[{"id":"gomodel:665912ed00002626/665912ed00002627","type":[{"type":"class","id":"GO:0004087","label":"carbamoyl-phosphate synthase (ammonia) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002628","type":[{"type":"class","id":"PomBase:SPBC215.08c","label":"arg4 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002629","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002630","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000116"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"RHEA:18029"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002631","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"GO:0004088"},{"key":"source","value":"GO_REF:0000111"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002632","type":[{"type":"class","id":"GO:0004088","label":"carbamoyl-phosphate synthase (glutamine-hydrolyzing) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002633","type":[{"type":"class","id":"PomBase:SPBC56F2.09c","label":"arg5 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002634","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002635","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"GO_REF:0000033"},{"key":"with","value":"PANTHER:PTN000150382 | SGD:S000005829 | UniProtKB:P0A6F1"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002636","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"GO_REF:0000111"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"GO:0004088"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002637","type":[{"type":"class","id":"GO:0004585","label":"ornithine carbamoyltransferase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002638","type":[{"type":"class","id":"PomBase:SPAC4G9.10","label":"arg3 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002639","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002640","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:1313366"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002641","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:18849471"}]},{"id":"gomodel:665912ed00002626/665912ed00002642","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"GO:0004585"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:1313366"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002643","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"RHEA:18029"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000116"}]},{"id":"gomodel:665912ed00002626/665912ed00002644","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000033"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"PANTHER:PTN000150382 | SGD:S000005829 | UniProtKB:P0A6F1"}]},{"id":"gomodel:665912ed00002626/665912ed00002645","type":[{"type":"class","id":"GO:0004055","label":"argininosuccinate synthase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002646","type":[{"type":"class","id":"PomBase:SPBC428.05c","label":"arg12 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002647","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002648","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:15704224"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002649","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000033"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"PANTHER:PTN000172504 | RGD:2163 | UniProtKB:P00966"}]},{"id":"gomodel:665912ed00002626/665912ed00002650","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:1313366"}]},{"id":"gomodel:665912ed00002626/665912ed00002651","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:18849471"}]},{"id":"gomodel:665912ed00002626/665912ed00002652","type":[{"type":"class","id":"GO:0004056","label":"argininosuccinate lyase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002653","type":[{"type":"class","id":"PomBase:SPBC1539.03c","label":"arg41 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002654","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002655","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000033"},{"key":"date","value":"2024-06-10"},{"key":"with","value":"PANTHER:PTN000154674 | PomBase:SPBC1773.14 | UniProtKB:P04424 | SGD:S000001060 | RGD:619974 | UniProtKB:P11447 | CGD:CAL0000190527"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002656","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000111"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"with","value":"GO:0004056"}]},{"id":"gomodel:665912ed00002626/665912ed00002657","type":[{"type":"class","id":"GO:0004056","label":"argininosuccinate lyase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002658","type":[{"type":"class","id":"PomBase:SPBC1773.14","label":"arg7 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002659","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002660","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:1868575"}]},{"id":"gomodel:665912ed00002626/665912ed00002661","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"GO_REF:0000111"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"GO:0004056"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002662","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:15704224"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002663","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:15704224"}]},{"id":"gomodel:665912ed00002626/665912ed00002664","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:15704224"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002665","type":[{"type":"class","id":"CHEBI:29806","label":"fumarate(2-)"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002666","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:1868575"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002667","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000033"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"PANTHER:PTN000154674 | PomBase:SPBC1773.14 | UniProtKB:P04424 | SGD:S000001060 | RGD:619974 | UniProtKB:P11447 | CGD:CAL0000190527"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002668","type":[{"type":"class","id":"GO:0004053","label":"arginase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002669","type":[{"type":"class","id":"PomBase:SPAC3H1.07","label":"aru1 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002670","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002671","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:20435771"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002672","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:20435771"},{"key":"with","value":"GO:0004053"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002673","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:1868575"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002674","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000033"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"PANTHER:PTN000154674 | PomBase:SPBC1773.14 | UniProtKB:P04424 | SGD:S000001060 | RGD:619974 | UniProtKB:P11447 | CGD:CAL0000190527"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002675","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"PANTHER:PTN000154674 | PomBase:SPBC1773.14 | UniProtKB:P04424 | SGD:S000001060 | RGD:619974 | UniProtKB:P11447 | CGD:CAL0000190527"},{"key":"source","value":"GO_REF:0000033"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002676","type":[{"type":"class","id":"GO:0004053","label":"arginase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002677","type":[{"type":"class","id":"PomBase:SPBP26C9.02c","label":"car1 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002678","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002679","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"SGD:S000006032"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:7985419"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002680","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:20435771"},{"key":"with","value":"PomBase:SPAC3H1.07"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002681","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000111"},{"key":"with","value":"GO:0004053"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002682","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:1868575"}]},{"id":"gomodel:665912ed00002626/665912ed00002683","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:1868575"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002684","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000033"},{"key":"with","value":"PANTHER:PTN000154674 | PomBase:SPBC1773.14 | UniProtKB:P04424 | SGD:S000001060 | RGD:619974 | UniProtKB:P11447 | CGD:CAL0000190527"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002685","type":[{"type":"class","id":"ECO:0000318","label":"biological aspect of ancestor evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"source","value":"GO_REF:0000033"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"PANTHER:PTN000154674 | PomBase:SPBC1773.14 | UniProtKB:P04424 | SGD:S000001060 | RGD:619974 | UniProtKB:P11447 | CGD:CAL0000190527"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002686","type":[{"type":"class","id":"CHEBI:16199","label":"urea"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002687","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:20435771"}]},{"id":"gomodel:665912ed00002626/665912ed00002688","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:20435771"}]},{"id":"gomodel:665912ed00002626/665912ed00002689","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:7985419"},{"key":"with","value":"SGD:S000006032"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002690","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:20435771"},{"key":"with","value":"PomBase:SPAC3H1.07"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002691","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"SGD:S000006032"},{"key":"source","value":"PMID:7985419"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002692","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:20435771"},{"key":"with","value":"PomBase:SPAC3H1.07"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002693","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:20435771"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002694","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"SGD:S000006032"},{"key":"date","value":"2024-06-10"},{"key":"source","value":"PMID:7985419"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002695","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"with","value":"PomBase:SPAC3H1.07"},{"key":"source","value":"PMID:20435771"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002696","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:7985419"},{"key":"with","value":"SGD:S000006032"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002697","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"with","value":"PomBase:SPAC3H1.07"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:20435771"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002698","type":[{"type":"class","id":"GO:0009039","label":"urease activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002699","type":[{"type":"class","id":"PomBase:SPAC1952.11c","label":"ure2 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"}]},{"id":"gomodel:665912ed00002626/665912ed00002700","type":[{"type":"class","id":"GO:0043419","label":"urea catabolic process"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002701","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:24177583"}]},{"id":"gomodel:665912ed00002626/665912ed00002702","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:8742356"}]},{"id":"gomodel:665912ed00002626/665912ed00002703","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:8742356"},{"key":"date","value":"2024-06-10"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002704","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:9339351"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002705","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:24177583"}]},{"id":"gomodel:665912ed00002626/665912ed00002706","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:8742356"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002856","type":[{"type":"class","id":"CHEBI:27226","label":"uric acid"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-11"}]},{"id":"gomodel:665912ed00002626/665912ed00002857","type":[{"type":"class","id":"GO:0004846","label":"urate oxidase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-11"}]},{"id":"gomodel:665912ed00002626/665912ed00002858","type":[{"type":"class","id":"PomBase:SPCC1223.09","label":"uro1 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-11"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/665912ed00002859","type":[{"type":"class","id":"GO:0019627","label":"urea metabolic process"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-11"}]},{"id":"gomodel:665912ed00002626/665912ed00002860","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:24177583"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-11"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/665912ed00002861","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"GO:0004846"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"GO_REF:0000111"},{"key":"date","value":"2024-06-11"}]},{"id":"gomodel:665912ed00002626/665912ed00002862","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:24177583"},{"key":"date","value":"2024-06-11"}]},{"id":"gomodel:665912ed00002626/666b894f00000055","type":[{"type":"class","id":"CHEBI:15676","label":"allantoin"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2024-06-14"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/666b894f00000056","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:24177583"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000057","type":[{"type":"class","id":"CHEBI:30837","label":"allantoic acid"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000058","type":[{"type":"class","id":"GO:0004037","label":"allantoicase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000059","type":[{"type":"class","id":"PomBase:SPAC1F7.09c","label":"dal2 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000060","type":[{"type":"class","id":"GO:0000050","label":"urea cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000061","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2024-06-14"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:24177583"}]},{"id":"gomodel:665912ed00002626/666b894f00000062","type":[{"type":"class","id":"ECO:0000305","label":"curator inference used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"GO:0004037"},{"key":"date","value":"2024-06-14"},{"key":"source","value":"GO_REF:0000111"}]},{"id":"gomodel:665912ed00002626/666b894f00000063","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"source","value":"PMID:24177583"}]},{"id":"gomodel:665912ed00002626/666b894f00000064","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:24177583"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000065","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:24177583"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000066","type":[{"type":"class","id":"GO:0016151","label":"nickel cation binding"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000067","type":[{"type":"class","id":"PomBase:SPAC3A12.09c","label":"ure4 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000068","type":[{"type":"class","id":"GO:0019627","label":"urea metabolic process"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000069","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000002"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"InterPro:IPR002669"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000070","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"PomBase:SPAC3A12.09c"},{"key":"date","value":"2024-06-14"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:26037463"}]},{"id":"gomodel:665912ed00002626/666b894f00000071","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000002"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"with","value":"InterPro:IPR002669"}]},{"id":"gomodel:665912ed00002626/666b894f00000072","type":[{"type":"class","id":"GO:0016151","label":"nickel cation binding"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000073","type":[{"type":"class","id":"PomBase:SPAC29A4.13","label":"ure6 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/666b894f00000074","type":[{"type":"class","id":"GO:0019627","label":"urea metabolic process"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000075","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"GO_REF:0000002"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"InterPro:IPR002639"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000076","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:26037463"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"PomBase:SPAC3A12.09c"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000077","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"GO_REF:0000002"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"with","value":"InterPro:IPR002639"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000078","type":[{"type":"class","id":"GO:0016151","label":"nickel cation binding"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000079","type":[{"type":"class","id":"PomBase:SPCPB16A4.05c","label":"ure7 Spom"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"}]},{"id":"gomodel:665912ed00002626/666b894f00000080","type":[{"type":"class","id":"GO:0019627","label":"urea metabolic process"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"date","value":"2024-06-14"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"id":"gomodel:665912ed00002626/666b894f00000081","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"GO_REF:0000002"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"with","value":"InterPro:IPR004400"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000082","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:26037463"},{"key":"with","value":"PomBase:SPAC3A12.09c"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000083","type":[{"type":"class","id":"ECO:0000501","label":"evidence used in automatic assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"InterPro:IPR004400"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"GO_REF:0000002"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000084","type":[{"type":"class","id":"CHEBI:28938","label":"ammonium"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000085","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"date","value":"2024-06-14"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:24177583"}]},{"id":"gomodel:665912ed00002626/666b894f00000086","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:8742356"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000087","type":[{"type":"class","id":"ECO:0000269","label":"experimental evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"source","value":"PMID:24177583"},{"key":"date","value":"2024-06-14"}]},{"id":"gomodel:665912ed00002626/666b894f00000088","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://www.pombase.org"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"source","value":"PMID:8742356"},{"key":"date","value":"2024-06-14"}]}],"facts":[{"subject":"gomodel:665912ed00002626/665912ed00002637","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002638","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002640","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002641","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002657","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002658","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002660","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002668","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002688","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002657","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002676","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002682","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002683","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002645","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002647","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002649","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002668","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002669","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002671","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002676","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002677","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002679","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002680","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002676","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002665","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002667","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002653","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002655","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002857","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002859","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002861","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-11"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002698","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002705","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002706","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000072","property":"RO:0002304","property-label":"RO:0002304","object":"gomodel:665912ed00002626/665912ed00002698","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000077","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002632","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002637","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002644","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002657","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002665","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002666","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002657","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002668","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002673","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000072","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/666b894f00000073","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000075","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002637","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002645","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002650","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002651","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002627","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002637","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002643","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000058","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:665912ed00002626/666b894f00000057","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000063","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000078","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/666b894f00000080","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000082","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002645","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002657","annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000066","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/666b894f00000068","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000070","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002698","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002700","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002703","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002704","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002645","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002646","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002648","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002654","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002656","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002632","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002633","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002635","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002657","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002676","annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000072","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/666b894f00000074","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000076","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000058","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/666b894f00000059","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000061","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002857","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002858","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002860","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-11"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002676","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002689","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002690","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002691","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002692","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002857","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:665912ed00002626/665912ed00002856","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002862","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-11"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002668","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002670","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002672","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002698","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/666b894f00000084","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000085","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000086","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002676","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002678","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002681","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002676","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002637","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002696","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002697","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000066","property":"RO:0002304","property-label":"RO:0002304","object":"gomodel:665912ed00002626/665912ed00002698","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000071","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000058","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/666b894f00000060","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000062","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002676","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002684","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002685","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002676","annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002668","annotations":[{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002632","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002634","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002636","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002627","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002629","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002631","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000058","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000064","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002637","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002639","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002642","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002645","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002652","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002664","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002698","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/666b894f00000084","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000087","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000088","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000078","property":"RO:0002304","property-label":"RO:0002304","object":"gomodel:665912ed00002626/665912ed00002698","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000083","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002668","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002637","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002693","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002668","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002687","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002698","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002699","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002701","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002702","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002645","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002657","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002662","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002663","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000078","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/666b894f00000079","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000081","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002627","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/665912ed00002628","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002630","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000058","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/665912ed00002686","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000065","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002857","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:665912ed00002626/666b894f00000055","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000056","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/666b894f00000066","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:665912ed00002626/666b894f00000067","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/666b894f00000069","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002676","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002637","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002694","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002695","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002652","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:665912ed00002626/665912ed00002668","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002674","value-type":"IRI"},{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002675","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]},{"subject":"gomodel:665912ed00002626/665912ed00002657","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:665912ed00002626/665912ed00002659","annotations":[{"key":"evidence","value":"gomodel:665912ed00002626/665912ed00002661","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-10"},{"key":"providedBy","value":"http://www.pombase.org"}]}],"annotations":[{"key":"state","value":"production"},{"key":"contributor","value":"https://orcid.org/0009-0003-9059-1333"},{"key":"date","value":"2024-06-14"},{"key":"title","value":"urea metabolic process (GO:0019627)"},{"key":"providedBy","value":"http://www.pombase.org"},{"key":"https://w3id.org/biolink/vocab/in_taxon","value":"NCBITaxon:4896","value-type":"IRI"}]} \ No newline at end of file diff --git a/tests/test_translation/test_minerva_wrapper.py b/tests/test_translation/test_minerva_wrapper.py index e92fef6..06e692a 100644 --- a/tests/test_translation/test_minerva_wrapper.py +++ b/tests/test_translation/test_minerva_wrapper.py @@ -55,3 +55,39 @@ def test_protein_complex(): "MGI:MGI:1929608", "MGI:MGI:103038", ] + + +def test_has_direct_input_and_has_direct_output(): + """Test that direct input/output molecule associations are added to activities""" + mw = MinervaWrapper() + with open(INPUT_DIR / "minerva-665912ed00002626.json", "r") as f: + minerva_object = json.load(f) + model = mw.minerva_object_to_model(minerva_object) + + activities_with_direct_input = [] + activities_with_direct_output = [] + for activity in model.activities: + if activity.has_direct_input: + activities_with_direct_input.append(activity) + if activity.has_direct_output: + activities_with_direct_output.append(activity) + + # Basic sanity check on the number of activities with direct input/output + assert len(activities_with_direct_input) == 3 + assert len(activities_with_direct_output) == 7 + + # Verify that one activity has uric acid as a direct input + uric_acid_input_activities = [ + a + for a in activities_with_direct_input + if a.has_direct_input.term == "CHEBI:27226" + ] + assert len(uric_acid_input_activities) == 1 + + # Verify that three activities have urea as a direct output + urea_output_activities = [ + a + for a in activities_with_direct_output + if a.has_direct_output.term == "CHEBI:16199" + ] + assert len(urea_output_activities) == 3 From 5368d0dc925de555de420a69824cb4060c14ea6c Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 13 Sep 2024 08:59:54 -0700 Subject: [PATCH 4/7] Split has_direct_input/output into has_input/output (multivalued) and has_primary_input/output (single valued) --- src/gocam/datamodel/gocam.py | 6 ++- src/gocam/schema/gocam.yaml | 14 +++++- src/gocam/translation/minerva_wrapper.py | 48 ++++++++++++------- tests/input/minerva-633b013300000306.json | 1 + .../test_translation/test_minerva_wrapper.py | 46 ++++++++++-------- 5 files changed, 74 insertions(+), 41 deletions(-) create mode 100644 tests/input/minerva-633b013300000306.json diff --git a/src/gocam/datamodel/gocam.py b/src/gocam/datamodel/gocam.py index cb8561f..95cbadc 100644 --- a/src/gocam/datamodel/gocam.py +++ b/src/gocam/datamodel/gocam.py @@ -97,8 +97,10 @@ class Activity(ConfiguredBaseModel): molecular_function: Optional[MolecularFunctionAssociation] = Field(None, description="""The molecular function that is carried out by the gene product or complex""") occurs_in: Optional[CellularAnatomicalEntityAssociation] = Field(None, description="""The cellular location in which the activity occurs""") part_of: Optional[BiologicalProcessAssociation] = Field(None, description="""The larger biological process in which the activity is a part""") - has_direct_input: Optional[MoleculeAssociation] = Field(None, description="""The input molecules that are directly consumed by the activity""") - has_direct_output: Optional[MoleculeAssociation] = Field(None, description="""The output molecules that are directly produced by the activity""") + has_input: Optional[List[MoleculeAssociation]] = Field(default_factory=list, description="""The input molecules that are directly consumed by the activity""") + has_primary_input: Optional[MoleculeAssociation] = Field(None, description="""The primary input molecule that is directly consumed by the activity""") + has_output: Optional[List[MoleculeAssociation]] = Field(default_factory=list, description="""The output molecules that are directly produced by the activity""") + has_primary_output: Optional[MoleculeAssociation] = Field(None, description="""The primary output molecule that is directly produced by the activity""") causal_associations: Optional[List[CausalAssociation]] = Field(default_factory=list, description="""The causal associations that connect this activity to other activities""") provenances: Optional[List[ProvenanceInfo]] = Field(default_factory=list, description="""Provenance information for the activity""") diff --git a/src/gocam/schema/gocam.yaml b/src/gocam/schema/gocam.yaml index e5e51c4..bb1bfe1 100644 --- a/src/gocam/schema/gocam.yaml +++ b/src/gocam/schema/gocam.yaml @@ -109,14 +109,24 @@ classes: description: The larger biological process in which the activity is a part range: BiologicalProcessAssociation inlined: true - has_direct_input: + has_input: description: The input molecules that are directly consumed by the activity range: MoleculeAssociation inlined: true - has_direct_output: + multivalued: true + has_primary_input: + description: The primary input molecule that is directly consumed by the activity + range: MoleculeAssociation + inlined: true + has_output: description: The output molecules that are directly produced by the activity range: MoleculeAssociation inlined: true + multivalued: true + has_primary_output: + description: The primary output molecule that is directly produced by the activity + range: MoleculeAssociation + inlined: true causal_associations: description: The causal associations that connect this activity to other activities range: CausalAssociation diff --git a/src/gocam/translation/minerva_wrapper.py b/src/gocam/translation/minerva_wrapper.py index 53aa551..07eb06e 100644 --- a/src/gocam/translation/minerva_wrapper.py +++ b/src/gocam/translation/minerva_wrapper.py @@ -28,6 +28,8 @@ OCCURS_IN = "BFO:0000066" HAS_INPUT = "RO:0002233" HAS_OUTPUT = "RO:0002234" +HAS_PRIMARY_INPUT = "RO:0004009" +HAS_PRIMARY_OUTPUT = "RO:0004008" logger = logging.getLogger(__name__) @@ -64,6 +66,12 @@ def _annotations_multivalued(obj: Dict) -> Dict[str, List[str]]: return anns +def _setattr_with_warning(obj, attr, value): + if getattr(obj, attr, None) is not None: + logger.warning(f"Overwriting {attr} for {obj.id if hasattr(obj, 'id') else obj}") + setattr(obj, attr, value) + + MAIN_TYPES = [ "molecular_function", "biological_process", @@ -300,36 +308,40 @@ def _iter_activities_by_fact_subject( for activity, term, evs in _iter_activities_by_fact_subject( fact_property=PART_OF ): - if activity.part_of is not None: - logger.warning(f"Overwriting part_of for Activity: {activity.id}") - activity.part_of = BiologicalProcessAssociation(term=term, evidence=evs) + association = BiologicalProcessAssociation(term=term, evidence=evs) + _setattr_with_warning(activity, "part_of", association) for activity, term, evs in _iter_activities_by_fact_subject( fact_property=OCCURS_IN ): - if activity.occurs_in is not None: - logger.warning(f"Overwriting occurs_in for Activity: {activity.id}") - activity.occurs_in = CellularAnatomicalEntityAssociation( - term=term, evidence=evs - ) + association = CellularAnatomicalEntityAssociation(term=term, evidence=evs) + _setattr_with_warning(activity, "occurs_in", association) for activity, term, evs in _iter_activities_by_fact_subject( fact_property=HAS_INPUT ): - if activity.has_direct_input is not None: - logger.warning( - f"Overwriting has_direct_input for Activity: {activity.id}" - ) - activity.has_direct_input = MoleculeAssociation(term=term, evidence=evs) + if activity.has_input is None: + activity.has_input = [] + activity.has_input.append(MoleculeAssociation(term=term, evidence=evs)) + + for activity, term, evs in _iter_activities_by_fact_subject( + fact_property=HAS_PRIMARY_INPUT + ): + association = MoleculeAssociation(term=term, evidence=evs) + _setattr_with_warning(activity, "has_primary_input", association) for activity, term, evs in _iter_activities_by_fact_subject( fact_property=HAS_OUTPUT ): - if activity.has_direct_output is not None: - logger.warning( - f"Overwriting has_direct_output for Activity: {activity.id}" - ) - activity.has_direct_output = MoleculeAssociation(term=term, evidence=evs) + if activity.has_output is None: + activity.has_output = [] + activity.has_output.append(MoleculeAssociation(term=term, evidence=evs)) + + for activity, term, evs in _iter_activities_by_fact_subject( + fact_property=HAS_PRIMARY_OUTPUT + ): + association = MoleculeAssociation(term=term, evidence=evs) + _setattr_with_warning(activity, "has_primary_output", association) for fact_property, facts in facts_by_property.items(): for fact in facts: diff --git a/tests/input/minerva-633b013300000306.json b/tests/input/minerva-633b013300000306.json new file mode 100644 index 0000000..e9488c3 --- /dev/null +++ b/tests/input/minerva-633b013300000306.json @@ -0,0 +1 @@ +{"id":"gomodel:633b013300000306","individuals":[{"id":"gomodel:633b013300000306/633b013300000308","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113521","label":"H2O"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000309","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113521","label":"H2O"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000311","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113525","label":"GDP"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000313","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113526","label":"NAD"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000314","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113526","label":"NAD"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000316","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113526","label":"NAD"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000322","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113529","label":"H+"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000323","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113529","label":"H+"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000328","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113536","label":"SUCCA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000329","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113536","label":"SUCCA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000330","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113536","label":"SUCCA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000333","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113544","label":"MAL"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000334","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113544","label":"MAL"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000339","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113548","label":"Pi"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000340","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113548","label":"Pi"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000348","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113559","label":"Ac-CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000353","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113573","label":"GTP"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000356","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113581","label":"ADP"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000358","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113587","label":"OA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000359","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113587","label":"OA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000363","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113588","label":"FUMA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000364","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113588","label":"FUMA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000367","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113593","label":"ATP"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000370","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113594","label":"2OG"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000371","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-113594","label":"2OG"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000376","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29362","label":"NADH"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000377","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29362","label":"NADH"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000379","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29362","label":"NADH"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000384","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29374","label":"CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000385","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29374","label":"CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000387","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29374","label":"CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000388","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29374","label":"CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000391","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29376","label":"CO2"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000393","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29376","label":"CO2"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000398","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29654","label":"CIT"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000399","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29654","label":"CIT"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000402","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29938","label":"ISCIT"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000403","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-29938","label":"ISCIT"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000407","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-70958","label":"SUCC-CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000409","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-70958","label":"SUCC-CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000410","type":[{"type":"class","id":"obo:go/extensions/reacto.owl#REACTO_R-ALL-70958","label":"SUCC-CoA"}],"root-type":[{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000443","type":[{"type":"class","id":"GO:0004449","label":"isocitrate dehydrogenase (NAD+) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"hint-layout-y","value":"665.7333374023438"},{"key":"hint-layout-x","value":"1286.7666015625"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/633b013300000449","type":[{"type":"class","id":"GO:0003994","label":"aconitate hydratase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"hint-layout-y","value":"399.51666259765625"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-x","value":"1196.3333129882812"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000451","type":[{"type":"class","id":"GO:0004108","label":"citrate (Si)-synthase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"hint-layout-x","value":"1168.2666015625"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-y","value":"79.68333435058594"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/633b013300000452","type":[{"type":"class","id":"GO:0030060","label":"L-malate dehydrogenase (NAD+) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"hint-layout-y","value":"118.83332824707031"},{"key":"hint-layout-x","value":"627.2666625976562"}]},{"id":"gomodel:633b013300000306/633b013300000453","type":[{"type":"class","id":"GO:0004333","label":"fumarate hydratase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-x","value":"444.20001220703125"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-y","value":"341.433349609375"}]},{"id":"gomodel:633b013300000306/633b013300000456","type":[{"type":"class","id":"GO:0008177","label":"succinate dehydrogenase (quinone) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-x","value":"383.4666748046875"},{"key":"hint-layout-y","value":"702.7333374023438"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000457","type":[{"type":"class","id":"GO:0004775","label":"succinate-CoA ligase (ADP-forming) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"hint-layout-x","value":"644.7833251953125"},{"key":"date","value":"2022-10-25"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"hint-layout-y","value":"929.5166625976562"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000460","type":[{"type":"class","id":"GO:0034602","label":"oxoglutarate dehydrogenase (NAD+) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-x","value":"999.7166748046875"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-y","value":"724.8666687011719"}]},{"id":"gomodel:633b013300000306/633b013300000461","type":[{"type":"class","id":"GO:0004776","label":"succinate-CoA ligase (GDP-forming) activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"hint-layout-x","value":"716.2999877929688"},{"key":"hint-layout-y","value":"660.0166625976562"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/633b013300000487","type":[{"type":"class","id":"GO:0005759","label":"mitochondrial matrix"}],"root-type":[{"type":"class","id":"UBERON:0001062","label":"anatomical entity"},{"type":"class","id":"GO:0110165","label":"cellular anatomical entity"},{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"CARO:0000000","label":"anatomical entity"}],"annotations":[{"key":"hint-layout-y","value":"897.0333251953125"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-x","value":"1652.7833251953125"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000495","type":[{"type":"class","id":"GO:0005759","label":"mitochondrial matrix"}],"root-type":[{"type":"class","id":"UBERON:0001062","label":"anatomical entity"},{"type":"class","id":"GO:0110165","label":"cellular anatomical entity"},{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"CARO:0000000","label":"anatomical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000503","type":[{"type":"class","id":"GO:0006099","label":"tricarboxylic acid cycle"}],"root-type":[{"type":"class","id":"GO:0008150","label":"biological_process"}],"annotations":[{"key":"hint-layout-x","value":"795.3481289035191"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-25"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"hint-layout-y","value":"494.4367758456174"}]},{"id":"gomodel:633b013300000306/633b013300000642","type":[{"type":"class","id":"MGI:MGI:95530","label":"Fh1 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000643","type":[{"type":"class","id":"MGI:MGI:97050","label":"Mdh2 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000644","type":[{"type":"class","id":"MGI:MGI:88529","label":"Cs Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000645","type":[{"type":"class","id":"MGI:MGI:87880","label":"Aco2 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000648","type":[{"type":"class","id":"GO:0045244","label":"succinate-CoA ligase complex (GDP-forming)"}],"root-type":[{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"GO:0032991","label":"protein-containing complex"}],"annotations":[{"key":"hint-layout-y","value":"890.7000122070312"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-x","value":"361.8999938964844"},{"key":"date","value":"2022-10-25"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000649","type":[{"type":"class","id":"MGI:MGI:1306824","label":"Suclg2 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000650","type":[{"type":"class","id":"MGI:MGI:1927234","label":"Suclg1 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000651","type":[{"type":"class","id":"GO:0009361","label":"succinate-CoA ligase complex (ADP-forming)"}],"root-type":[{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"GO:0032991","label":"protein-containing complex"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-y","value":"1167.4500122070312"},{"key":"hint-layout-x","value":"457.98333740234375"}]},{"id":"gomodel:633b013300000306/633b013300000652","type":[{"type":"class","id":"MGI:MGI:1306775","label":"Sucla2 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000653","type":[{"type":"class","id":"MGI:MGI:1927234","label":"Suclg1 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/633b013300000655","type":[{"type":"class","id":"GO:0045257","label":"succinate dehydrogenase complex (ubiquinone)"}],"root-type":[{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"GO:0032991","label":"protein-containing complex"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-y","value":"894.25"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-x","value":"70.5"}]},{"id":"gomodel:633b013300000306/633b013300000656","type":[{"type":"class","id":"MGI:MGI:1914195","label":"Sdha Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-y","value":"556"},{"key":"hint-layout-x","value":"170.75"}]},{"id":"gomodel:633b013300000306/633b013300000657","type":[{"type":"class","id":"MGI:MGI:1914930","label":"Sdhb Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-05"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/633b013300000658","type":[{"type":"class","id":"MGI:MGI:1913302","label":"Sdhc Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000659","type":[{"type":"class","id":"MGI:MGI:1914175","label":"Sdhd Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"}]},{"id":"gomodel:633b013300000306/633b013300000925","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:31857692"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-06"}]},{"id":"gomodel:633b013300000306/633b013300000926","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:31857692"},{"key":"date","value":"2022-10-06"},{"key":"with","value":"MGI:MGI:1919082"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000428","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:15317809"},{"key":"date","value":"2022-10-18"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000429","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:32212192"},{"key":"with","value":"MGI:MGI:88529"},{"key":"date","value":"2022-10-18"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000430","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-18"},{"key":"source","value":"PMID:32212192"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/6348a65d00000431","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-18"},{"key":"source","value":"PMID:32212192"}]},{"id":"gomodel:633b013300000306/6348a65d00000432","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-18"},{"key":"source","value":"PMID:32212192"}]},{"id":"gomodel:633b013300000306/6348a65d00000434","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2022-10-18"},{"key":"source","value":"PMID:27821630"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000584","type":[{"type":"class","id":"GO:0045252","label":"oxoglutarate dehydrogenase complex"}],"root-type":[{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"GO:0032991","label":"protein-containing complex"}],"annotations":[{"key":"hint-layout-y","value":"1088.0499877929688"},{"key":"date","value":"2022-10-25"},{"key":"hint-layout-x","value":"1117.3499755859375"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000585","type":[{"type":"class","id":"MGI:MGI:1098267","label":"Ogdh Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000586","type":[{"type":"class","id":"MGI:MGI:107450","label":"Dld Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000587","type":[{"type":"class","id":"MGI:MGI:1926170","label":"Dlst Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000588","type":[{"type":"class","id":"GO:0045242","label":"isocitrate dehydrogenase complex (NAD+)"}],"root-type":[{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"GO:0032991","label":"protein-containing complex"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2024-03-14"},{"key":"hint-layout-y","value":"1000.5833129882812"},{"key":"hint-layout-x","value":"1451.683349609375"},{"key":"comment","value":"Automated change 2024-03-14: GO:0005962 replaced by GO:0045242"}]},{"id":"gomodel:633b013300000306/6348a65d00000589","type":[{"type":"class","id":"MGI:MGI:1915084","label":"Idh3a Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000590","type":[{"type":"class","id":"MGI:MGI:2158650","label":"Idh3b Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000591","type":[{"type":"class","id":"MGI:MGI:1099463","label":"Idh3g Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000593","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:15356189"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000651","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2022-10-19"},{"key":"with","value":"MGI:MGI:2182403"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:15356189"}]},{"id":"gomodel:633b013300000306/6348a65d00000652","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:2182403"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:15356189"}]},{"id":"gomodel:633b013300000306/6348a65d00000721","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:22169199"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000722","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:22169199"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000723","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:22169199"},{"key":"with","value":"MGI:MGI:4367457"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000725","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:5585619"},{"key":"source","value":"PMID:24271779"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000726","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:5585619"},{"key":"source","value":"PMID:24271779"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00000727","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"with","value":"MGI:MGI:88529 "},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:24271779"}]},{"id":"gomodel:633b013300000306/6348a65d00000728","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:24271779"},{"key":"with","value":"MGI:MGI:5585619"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000729","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:27496549"},{"key":"with","value":"MGI:MGI:3950803"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000730","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:27496549"},{"key":"date","value":"2022-10-19"},{"key":"with","value":"MGI:MGI:3950803"}]},{"id":"gomodel:633b013300000306/6348a65d00000731","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:27496549"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000998","type":[{"type":"class","id":"ECO:0000266","label":"sequence orthology evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:27484306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"with","value":"UniProtKB:P53597"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00000999","type":[{"type":"class","id":"ECO:0000266","label":"sequence orthology evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:27484306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"with","value":"UniProtKB:P53597"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001000","type":[{"type":"class","id":"ECO:0000266","label":"sequence orthology evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:27484306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"with","value":"UniProtKB:P53597"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001005","type":[{"type":"class","id":"ECO:0000266","label":"sequence orthology evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:27484306"},{"key":"with","value":"UniProtKB:P53597"}]},{"id":"gomodel:633b013300000306/6348a65d00001006","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:31648943"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001007","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:31648943"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001012","type":[{"type":"class","id":"ECO:0000316","label":"genetic interaction evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:27496549"},{"key":"date","value":"2022-10-19"},{"key":"with","value":"MGI:MGI:1306775"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00001147","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:16120479"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001148","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"source","value":"PMID:16120479"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001149","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:16120479"}]},{"id":"gomodel:633b013300000306/6348a65d00001150","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:16120479"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00001151","type":[{"type":"class","id":"GO:0005739","label":"mitochondrion"}],"root-type":[{"type":"class","id":"UBERON:0001062","label":"anatomical entity"},{"type":"class","id":"GO:0110165","label":"cellular anatomical entity"},{"type":"class","id":"GO:0005575","label":"cellular_component"},{"type":"class","id":"CARO:0000000","label":"anatomical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001152","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"source","value":"PMID:16120479"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001153","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"with","value":"MGI:MGI:3526521"},{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:15572694"}]},{"id":"gomodel:633b013300000306/6348a65d00001154","type":[{"type":"class","id":"MGI:MGI:1927665","label":"Sirt3 Mmus"}],"root-type":[{"type":"class","id":"CHEBI:33695","label":"information biomacromolecule"},{"type":"class","id":"CHEBI:24431","label":"chemical entity"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/6348a65d00001155","type":[{"type":"class","id":"GO:0033558","label":"protein lysine deacetylase activity"}],"root-type":[{"type":"class","id":"GO:0003674","label":"molecular_function"},{"type":"class","id":"obo:go/extensions/reacto.owl#molecular_event","label":"Molecular Event"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"hint-layout-y","value":"647"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/6348a65d00001156","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:21858060"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00001157","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:3769234"},{"key":"source","value":"PMID:21858060"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/6348a65d00001158","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:5805498"},{"key":"date","value":"2022-10-19"},{"key":"source","value":"PMID:31469588"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/6348a65d00001159","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:5805498"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"source","value":"PMID:31469588"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"id":"gomodel:633b013300000306/6348a65d00001160","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:20660115"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"}]},{"id":"gomodel:633b013300000306/6348a65d00001161","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"source","value":"PMID:22405071"},{"key":"with","value":"MGI:MGI:3710112"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"date","value":"2022-10-19"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"}]},{"id":"gomodel:633b013300000306/6348a65d00001279","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2022-10-20"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"source","value":"PMID:24134846"}]},{"id":"gomodel:633b013300000306/6348a65d00001280","type":[{"type":"class","id":"ECO:0000314","label":"direct assay evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2022-10-20"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"source","value":"PMID:35063410"}]},{"id":"gomodel:633b013300000306/6348a65d00002232","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"with","value":"MGI:MGI:5904256"},{"key":"source","value":"PMID:35985423"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/6348a65d00002233","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"with","value":"MGI:MGI:5904256"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"source","value":"PMID:35985423"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/6348a65d00002234","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"MGI:MGI:5904256"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"source","value":"PMID:35985423"}]},{"id":"gomodel:633b013300000306/6348a65d00002237","type":[{"type":"class","id":"ECO:0000315","label":"mutant phenotype evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"date","value":"2022-10-25"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"source","value":"PMID:30478029"}]},{"id":"gomodel:633b013300000306/6348a65d00002270","type":[{"type":"class","id":"ECO:0000266","label":"sequence orthology evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"with","value":"UniProtKB:P50213"},{"key":"source","value":"PMID:28139779"},{"key":"date","value":"2022-10-25"}]},{"id":"gomodel:633b013300000306/6348a65d00002271","type":[{"type":"class","id":"ECO:0000266","label":"sequence orthology evidence used in manual assertion"}],"root-type":[{"type":"class","id":"ECO:0000000","label":"evidence"}],"annotations":[{"key":"with","value":"UniProtKB:P51553"},{"key":"source","value":"PMID:28139779"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"}]}],"facts":[{"subject":"gomodel:633b013300000306/633b013300000456","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000453","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/6348a65d00000588","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00002232","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00002237","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000323","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000333","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000456","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000655","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001153","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001158","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000456","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/6348a65d00001151","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001152","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000393","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000348","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000359","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000371","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000728","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/633b013300000925","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-06"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000651","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000653","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000998","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000308","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000391","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000339","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000329","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000387","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/6348a65d00000584","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000652","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000722","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000340","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000330","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000655","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000656","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001149","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000456","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000449","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000443","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000655","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000658","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001147","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00002233","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000313","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000402","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000651","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000652","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000725","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000729","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001161","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000731","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000449","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000645","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000428","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000430","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-18"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000460","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000367","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00001155","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000656","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00000588","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/6348a65d00000591","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00002271","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000651","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000726","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000730","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000644","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/633b013300000926","value-type":"IRI"},{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000431","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-18"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000449","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000311","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000407","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000353","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000376","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000648","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001000","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000727","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000409","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000449","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000403","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001280","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-20"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000461","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000384","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000449","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000398","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000334","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000452","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000377","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00000584","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/6348a65d00000586","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000651","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00000584","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/6348a65d00000585","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000721","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000358","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000456","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000356","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00000584","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/6348a65d00000587","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000723","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00000588","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/6348a65d00000590","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00002234","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000456","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000328","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000379","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000309","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000456","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001159","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000388","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000655","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000657","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001148","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000457","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002413","property-label":"RO:0002413","object":"gomodel:633b013300000306/633b013300000451","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000642","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001160","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001007","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001006","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000648","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000649","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001012","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000457","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000385","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000453","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000363","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000456","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000364","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000451","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000399","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000314","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000593","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000370","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000410","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000434","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-18"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00001155","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/6348a65d00001154","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001156","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000655","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000659","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001150","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00000588","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/6348a65d00000589","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00002270","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-25"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000495","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000443","property":"RO:0002234","property-label":"RO:0002234","object":"gomodel:633b013300000306/633b013300000322","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000452","property":"RO:0002333","property-label":"RO:0002333","object":"gomodel:633b013300000306/633b013300000643","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001279","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-20"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000449","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000429","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-18"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000449","property":"BFO:0000066","property-label":"BFO:0000066","object":"gomodel:633b013300000306/633b013300000487","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000432","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-18"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000460","property":"RO:0002233","property-label":"RO:0002233","object":"gomodel:633b013300000306/633b013300000316","annotations":[{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-05"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000461","property":"BFO:0000050","property-label":"BFO:0000050","object":"gomodel:633b013300000306/633b013300000503","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001005","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/6348a65d00001155","property":"RO:0002629","property-label":"RO:0002629","object":"gomodel:633b013300000306/633b013300000456","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00001157","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]},{"subject":"gomodel:633b013300000306/633b013300000648","property":"BFO:0000051","property-label":"BFO:0000051","object":"gomodel:633b013300000306/633b013300000650","annotations":[{"key":"evidence","value":"gomodel:633b013300000306/6348a65d00000999","value-type":"IRI"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2022-10-19"},{"key":"providedBy","value":"http://informatics.jax.org"}]}],"annotations":[{"key":"state","value":"production"},{"key":"contributor","value":"https://orcid.org/0000-0001-7476-6306"},{"key":"date","value":"2024-03-14"},{"key":"title","value":"Tricarboxylic acid cycle 1 (Mouse)"},{"key":"providedBy","value":"http://informatics.jax.org"},{"key":"comment","value":"Automated change 2024-03-14: GO:0005962 replaced by GO:0045242"},{"key":"wasDerivedFrom","value":"gomodel:R-HSA-71403","value-type":"IRI"},{"key":"https://w3id.org/biolink/vocab/in_taxon","value":"NCBITaxon:10090","value-type":"IRI"}]} \ No newline at end of file diff --git a/tests/test_translation/test_minerva_wrapper.py b/tests/test_translation/test_minerva_wrapper.py index 06e692a..7e3167d 100644 --- a/tests/test_translation/test_minerva_wrapper.py +++ b/tests/test_translation/test_minerva_wrapper.py @@ -57,37 +57,45 @@ def test_protein_complex(): ] -def test_has_direct_input_and_has_direct_output(): - """Test that direct input/output molecule associations are added to activities""" +def test_has_input_and_has_output(): + """Test that input/output molecule associations are added to activities""" mw = MinervaWrapper() with open(INPUT_DIR / "minerva-665912ed00002626.json", "r") as f: minerva_object = json.load(f) model = mw.minerva_object_to_model(minerva_object) - activities_with_direct_input = [] - activities_with_direct_output = [] + activities_with_input = [] + activities_with_output = [] for activity in model.activities: - if activity.has_direct_input: - activities_with_direct_input.append(activity) - if activity.has_direct_output: - activities_with_direct_output.append(activity) + if activity.has_input: + activities_with_input.append(activity) + if activity.has_output: + activities_with_output.append(activity) - # Basic sanity check on the number of activities with direct input/output - assert len(activities_with_direct_input) == 3 - assert len(activities_with_direct_output) == 7 + # Basic sanity check on the number of activities with input/output + assert len(activities_with_input) == 3 + assert len(activities_with_output) == 7 - # Verify that one activity has uric acid as a direct input + # Verify that one activity has uric acid as an input uric_acid_input_activities = [ - a - for a in activities_with_direct_input - if a.has_direct_input.term == "CHEBI:27226" + a for a in activities_with_input if a.has_input[0].term == "CHEBI:27226" ] assert len(uric_acid_input_activities) == 1 - # Verify that three activities have urea as a direct output + # Verify that three activities have urea as an output urea_output_activities = [ - a - for a in activities_with_direct_output - if a.has_direct_output.term == "CHEBI:16199" + a for a in activities_with_output if a.has_output[0].term == "CHEBI:16199" ] assert len(urea_output_activities) == 3 + + +def test_multivalued_input_and_output(): + """Test that activities with multiple inputs and outputs are correctly translated.""" + mw = MinervaWrapper() + with open(INPUT_DIR / "minerva-633b013300000306.json", "r") as f: + minerva_object = json.load(f) + model = mw.minerva_object_to_model(minerva_object) + + cs_activity = next(a for a in model.activities if a.molecular_function.term == "GO:0004108") + assert len(cs_activity.has_input) == 3 + assert len(cs_activity.has_output) == 2 From 1ad5d2a327837a276593daa451cff721c865bbb6 Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 13 Sep 2024 15:24:47 -0700 Subject: [PATCH 5/7] Use inlined_as_list for multivalued slots --- src/gocam/schema/gocam.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gocam/schema/gocam.yaml b/src/gocam/schema/gocam.yaml index bb1bfe1..ba4d1cf 100644 --- a/src/gocam/schema/gocam.yaml +++ b/src/gocam/schema/gocam.yaml @@ -112,7 +112,7 @@ classes: has_input: description: The input molecules that are directly consumed by the activity range: MoleculeAssociation - inlined: true + inlined_as_list: true multivalued: true has_primary_input: description: The primary input molecule that is directly consumed by the activity @@ -121,7 +121,7 @@ classes: has_output: description: The output molecules that are directly produced by the activity range: MoleculeAssociation - inlined: true + inlined_as_list: true multivalued: true has_primary_output: description: The primary output molecule that is directly produced by the activity From ce29e89475713f8baa0eb3b8212682c9af313592 Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 13 Sep 2024 15:28:34 -0700 Subject: [PATCH 6/7] Ensure multivalued slots appear in YAML serialization --- src/gocam/cli.py | 2 +- src/gocam/translation/minerva_wrapper.py | 10 +++------- tests/test_translation/test_minerva_wrapper.py | 4 +++- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/gocam/cli.py b/src/gocam/cli.py index 9252e96..93a646d 100644 --- a/src/gocam/cli.py +++ b/src/gocam/cli.py @@ -69,7 +69,7 @@ def fetch(model_ids, format): for model_id in model_ids: model = wrapper.fetch_model(model_id) - model_dict = model.model_dump(exclude_none=True, exclude_unset=True) + model_dict = model.model_dump(exclude_none=True, exclude_defaults=True) if format == "json": click.echo(json.dumps(model_dict, indent=2)) diff --git a/src/gocam/translation/minerva_wrapper.py b/src/gocam/translation/minerva_wrapper.py index 07eb06e..6a99fb9 100644 --- a/src/gocam/translation/minerva_wrapper.py +++ b/src/gocam/translation/minerva_wrapper.py @@ -68,7 +68,9 @@ def _annotations_multivalued(obj: Dict) -> Dict[str, List[str]]: def _setattr_with_warning(obj, attr, value): if getattr(obj, attr, None) is not None: - logger.warning(f"Overwriting {attr} for {obj.id if hasattr(obj, 'id') else obj}") + logger.warning( + f"Overwriting {attr} for {obj.id if hasattr(obj, 'id') else obj}" + ) setattr(obj, attr, value) @@ -320,8 +322,6 @@ def _iter_activities_by_fact_subject( for activity, term, evs in _iter_activities_by_fact_subject( fact_property=HAS_INPUT ): - if activity.has_input is None: - activity.has_input = [] activity.has_input.append(MoleculeAssociation(term=term, evidence=evs)) for activity, term, evs in _iter_activities_by_fact_subject( @@ -333,8 +333,6 @@ def _iter_activities_by_fact_subject( for activity, term, evs in _iter_activities_by_fact_subject( fact_property=HAS_OUTPUT ): - if activity.has_output is None: - activity.has_output = [] activity.has_output.append(MoleculeAssociation(term=term, evidence=evs)) for activity, term, evs in _iter_activities_by_fact_subject( @@ -368,8 +366,6 @@ def _iter_activities_by_fact_subject( downstream_activity=object_activity.id, evidence=evs, ) - if not subject_activity.causal_associations: - subject_activity.causal_associations = [] subject_activity.causal_associations.append(rel) annotations = _annotations(obj) diff --git a/tests/test_translation/test_minerva_wrapper.py b/tests/test_translation/test_minerva_wrapper.py index 7e3167d..12f23e1 100644 --- a/tests/test_translation/test_minerva_wrapper.py +++ b/tests/test_translation/test_minerva_wrapper.py @@ -96,6 +96,8 @@ def test_multivalued_input_and_output(): minerva_object = json.load(f) model = mw.minerva_object_to_model(minerva_object) - cs_activity = next(a for a in model.activities if a.molecular_function.term == "GO:0004108") + cs_activity = next( + a for a in model.activities if a.molecular_function.term == "GO:0004108" + ) assert len(cs_activity.has_input) == 3 assert len(cs_activity.has_output) == 2 From c447d3589add73ef306c7eb8168b4a15ecee0cae Mon Sep 17 00:00:00 2001 From: Patrick Kalita Date: Fri, 13 Sep 2024 15:32:41 -0700 Subject: [PATCH 7/7] Regenerate artifacts --- project/excel/gocam.xlsx | Bin 17953 -> 17962 bytes project/gocam.py | 38 +- project/graphql/gocam.graphql | 6 +- project/jsonld/gocam.context.jsonld | 18 +- project/jsonld/gocam.jsonld | 76 +++- project/jsonschema/gocam.schema.json | 22 +- project/owl/gocam.owl.ttl | 516 +++++++++++----------- project/protobuf/gocam.proto | 6 +- project/shacl/gocam.shacl.ttl | 630 ++++++++++++++------------- project/shex/gocam.shex | 6 +- project/sqlschema/gocam.sql | 123 +++--- 11 files changed, 786 insertions(+), 655 deletions(-) diff --git a/project/excel/gocam.xlsx b/project/excel/gocam.xlsx index ddf8c51fd93b99d4a2d649662b16ca66e103d990..57b3e6b14e28886ba5ce172d428dc9274fbba0cc 100644 GIT binary patch delta 1958 zcmZ43!?>!4kvG7bnMH(wfq{eJPPOht-hK5zDpG$(sm(i};Aut%20aQQPu3 z^kg3Y|C}DZa;x|*?jJH%{f$yR-3PbnalO5MbK(i^h86u8p*lhjgLb@c3Y{|VAwyjK zOa4-a2R&;KC}}SCIH+;vZ_b%>UW?P0{^xnCVj#7_wYyJgiYsUMG=m#I(hpBL^F(0w z%vZnny;$ApEj{(aw=X}8bmyDvO)8Qyj+E9dad3^D@YwaA$rjT)BCkKcdCxS+LFIYFZOfgrq8PV?Em=Hu?oQxQgwf4 z|6xK2rOmGy?bw)s;j~$YL!LP)V%b2oy}cQ(ouIHQ;H8 zXZ^@<_T`eTp{yRSUzT27vg+!#`6n7IU3`;X&DgZ>uh6-rS6QysB}&)tOPt($1#gSAIh&Twwmj1WaZS#pYmRE;Y@|>E7PyOa*4d4r@QIow*#(j z%@S`vGz!~CaQ`W5Y&&LSTkrS1&3*676r&YNuM?a7HSB*gu!PD!GP$+r^Q@RdH=e!R z{`m86UBk*hmn?qq7YWT?*)eZ%(e)=UwXU_WWp^qn*u)j~9y{W(aMJYH3twzARqRjw z{%}3`|H3_7HtSCQxz<}!Sv5_KcbkDk<&uwL<+io8`X7Z@x_UBwEX<-)N=1_DPd!)> zD|2ab!G_lpJh|?scsc!Bv9juU?Zzj)d|J)Ek$cYuyjDFGByl34;dEKS<&?A+r&VXY zs!E7|W%(kD^Ht;0C1q?os^0*Gq!m1)~58ky{7of_ueJE z&FsNV-$SxH?jJh;;Cpv*Y89{dgRDR7!HLd~zh&=o|4lnvt zmcG3!zzIl^Q%KVJb9wF>gG8bNE}TqXi!Yl?t&Ssy4hJ5Ny!C0 zBu=bBD#W`n%gl@7fo|Rc3Hr5; z1_KR^syvee#YHD;*$INp5U`hK+QSPLDzFoj2kEtt|7e^7)cX)aukYjqcIselr|hJe zo(q7r@e8u@2Y53wi7>+p*U2DLyM;i~BIcmd0h_#x2v~cEJ;EVtMZrSnph5)>(oA;Z zKq2YLQVu*|dqF}MfW?lu*yI=oh(?f5k`!2IF;pngNt)@4G+5{rROla2Rii9ONW=u2 zi-1}fRVODpYJjZ)8L&wKY`}g;h&3P~dnK?Cn-fClj51ir7fC2m6)ZFbN$8o{9Ic+A^IH_VsFmg*G6B7^NmZa7H+LxgJ=-1wG7I z0a>awBpXiz`zenXh6Dwaqr{;S2?gT6J4bl8z!%H)dcfyx=J(swVEtoEjpRo LO@M8M4M-ON_qgsA delta 1915 zcmZuxXHZjF6wV6cNEHYzK^+!FM{q#gs4IvOkU?om5h+S9PZyPr z6lKL7<}rdw(S<=4P*^)Qq}k%)Ac&~5u3pxv9b9tSe9x()l4*Cc(9gnf zli_mS(oXY;mio&5=Q}SvZ?84qVY`HuGx=?{p+0ze*>#uxiYaPyO*1{O*HQt4=r%T?`!}v0XZltpw=K}$}FN9=Fz2~x}j>+pJxj2yoO$)<(in# zkZkyASTR>4O+@+vjd)cXP@%2J{&TGtsBH1kbVXeq&Xp5S+=E}V{W6nhO1!weFY9$t z@|Tj$)Y3h<-Gici@n+ll9Rv337a8bxs?Y~|H?F@4Win>gsX-Mb%lCacar+eiH_R(_%y@#Js)k^Z9t>)rV( zkG0=P#ve?$^y#&eH%(@jR0oPHYscO{aSOfsQ*guZHsaV+){aISpMs5Z%*?t+HR*8& z%6f+GeCv&|7CbBXC)9sJ<&!YbJc{d|Q2tge*C9Sme^ODm$8q3PYGcS*+dmUGn6v+y zJ-jiOxiYLutFY#_wdefU+gE4eTYt?q5NC$^w3~T9weHCe=nh`K?fIM6MSkT69|nuh z@j83VT!$W(L&WX(%?+ClY*23yd*z8tTGR4rk3Y=c%+M$tzHZ%|#5-PZ=piOoNzzqj z!y+HJ^nVn^C4bywC-nfK;ap#5OO`Ed1vm2dc6FjFuM|{cQ5H@M}n)XWMZ&fh}5P$VT{AXID zLY8jP#M6N5MU`@|Y3JaSgLF0$PLoowfT$;>9Hi&sau72E|H;vp>OxF5vYi!(D`3Hx zp)7#a-AG8(ie0kooRKVxWU{4!E0>Mvn#cv!rgDMhYPq1DBMS-yB&3rgRmU_2*WgLS zl`HM@4iCl~-n;e)5%@H0{R-TS9-A8gK(g(R;FM(!b$Fvqjts0zO6 zYyviypaRx3*p;ONhto*vi^*8}mM%yKy5L)4kRKgDm!wdG8-ple0BFhuKS8O|BeziW z1XKkALGOF}=z1(EMjsH@x#DtIEt7>pjQ?zorl5;(gR3d%6eHTK0JZ9Fvf2(K0Qt&6 z-fRGs$U)DIVV*z-9+QK_rU2r&%d|eP!XPSm3l}?qZJ)vcCG8v%+~$tY6N4${7+fIu zAq17eT!E}>4i}W=2yklxYHTA!s5On~a2HzB%mc&+Ql+;7hU2ES1VT)R#i7HoA%Tbf zXPkab>m?aCP-AsaH5GZIpu8Y`ALV&K1uro5W~ diff --git a/project/gocam.py b/project/gocam.py index 5838bcd..1d81ec4 100644 --- a/project/gocam.py +++ b/project/gocam.py @@ -1,5 +1,5 @@ # Auto generated from gocam.yaml by pythongen.py version: 0.0.1 -# Generation date: 2024-08-30T10:47:21 +# Generation date: 2024-09-13T15:30:52 # Schema: gocam # # id: https://w3id.org/gocam @@ -211,8 +211,10 @@ class Activity(YAMLRoot): molecular_function: Optional[Union[dict, "MolecularFunctionAssociation"]] = None occurs_in: Optional[Union[dict, "CellularAnatomicalEntityAssociation"]] = None part_of: Optional[Union[dict, "BiologicalProcessAssociation"]] = None - has_direct_input: Optional[Union[dict, "MoleculeAssociation"]] = None - has_direct_output: Optional[Union[dict, "MoleculeAssociation"]] = None + has_input: Optional[Union[Union[dict, "MoleculeAssociation"], List[Union[dict, "MoleculeAssociation"]]]] = empty_list() + has_primary_input: Optional[Union[dict, "MoleculeAssociation"]] = None + has_output: Optional[Union[Union[dict, "MoleculeAssociation"], List[Union[dict, "MoleculeAssociation"]]]] = empty_list() + has_primary_output: Optional[Union[dict, "MoleculeAssociation"]] = None causal_associations: Optional[Union[Union[dict, "CausalAssociation"], List[Union[dict, "CausalAssociation"]]]] = empty_list() provenances: Optional[Union[Union[dict, "ProvenanceInfo"], List[Union[dict, "ProvenanceInfo"]]]] = empty_list() @@ -234,11 +236,19 @@ def __post_init__(self, *_: List[str], **kwargs: Dict[str, Any]): if self.part_of is not None and not isinstance(self.part_of, BiologicalProcessAssociation): self.part_of = BiologicalProcessAssociation(**as_dict(self.part_of)) - if self.has_direct_input is not None and not isinstance(self.has_direct_input, MoleculeAssociation): - self.has_direct_input = MoleculeAssociation(**as_dict(self.has_direct_input)) + if not isinstance(self.has_input, list): + self.has_input = [self.has_input] if self.has_input is not None else [] + self.has_input = [v if isinstance(v, MoleculeAssociation) else MoleculeAssociation(**as_dict(v)) for v in self.has_input] - if self.has_direct_output is not None and not isinstance(self.has_direct_output, MoleculeAssociation): - self.has_direct_output = MoleculeAssociation(**as_dict(self.has_direct_output)) + if self.has_primary_input is not None and not isinstance(self.has_primary_input, MoleculeAssociation): + self.has_primary_input = MoleculeAssociation(**as_dict(self.has_primary_input)) + + if not isinstance(self.has_output, list): + self.has_output = [self.has_output] if self.has_output is not None else [] + self.has_output = [v if isinstance(v, MoleculeAssociation) else MoleculeAssociation(**as_dict(v)) for v in self.has_output] + + if self.has_primary_output is not None and not isinstance(self.has_primary_output, MoleculeAssociation): + self.has_primary_output = MoleculeAssociation(**as_dict(self.has_primary_output)) if not isinstance(self.causal_associations, list): self.causal_associations = [self.causal_associations] if self.causal_associations is not None else [] @@ -1176,11 +1186,17 @@ class slots: slots.activity__part_of = Slot(uri=GOCAM.part_of, name="activity__part_of", curie=GOCAM.curie('part_of'), model_uri=GOCAM.activity__part_of, domain=None, range=Optional[Union[dict, BiologicalProcessAssociation]]) -slots.activity__has_direct_input = Slot(uri=GOCAM.has_direct_input, name="activity__has_direct_input", curie=GOCAM.curie('has_direct_input'), - model_uri=GOCAM.activity__has_direct_input, domain=None, range=Optional[Union[dict, MoleculeAssociation]]) +slots.activity__has_input = Slot(uri=GOCAM.has_input, name="activity__has_input", curie=GOCAM.curie('has_input'), + model_uri=GOCAM.activity__has_input, domain=None, range=Optional[Union[Union[dict, MoleculeAssociation], List[Union[dict, MoleculeAssociation]]]]) + +slots.activity__has_primary_input = Slot(uri=GOCAM.has_primary_input, name="activity__has_primary_input", curie=GOCAM.curie('has_primary_input'), + model_uri=GOCAM.activity__has_primary_input, domain=None, range=Optional[Union[dict, MoleculeAssociation]]) + +slots.activity__has_output = Slot(uri=GOCAM.has_output, name="activity__has_output", curie=GOCAM.curie('has_output'), + model_uri=GOCAM.activity__has_output, domain=None, range=Optional[Union[Union[dict, MoleculeAssociation], List[Union[dict, MoleculeAssociation]]]]) -slots.activity__has_direct_output = Slot(uri=GOCAM.has_direct_output, name="activity__has_direct_output", curie=GOCAM.curie('has_direct_output'), - model_uri=GOCAM.activity__has_direct_output, domain=None, range=Optional[Union[dict, MoleculeAssociation]]) +slots.activity__has_primary_output = Slot(uri=GOCAM.has_primary_output, name="activity__has_primary_output", curie=GOCAM.curie('has_primary_output'), + model_uri=GOCAM.activity__has_primary_output, domain=None, range=Optional[Union[dict, MoleculeAssociation]]) slots.activity__causal_associations = Slot(uri=GOCAM.causal_associations, name="activity__causal_associations", curie=GOCAM.curie('causal_associations'), model_uri=GOCAM.activity__causal_associations, domain=None, range=Optional[Union[Union[dict, CausalAssociation], List[Union[dict, CausalAssociation]]]]) diff --git a/project/graphql/gocam.graphql b/project/graphql/gocam.graphql index 6c0563f..1da0942 100644 --- a/project/graphql/gocam.graphql +++ b/project/graphql/gocam.graphql @@ -6,8 +6,10 @@ type Activity molecularFunction: MolecularFunctionAssociation occursIn: CellularAnatomicalEntityAssociation partOf: BiologicalProcessAssociation - hasDirectInput: MoleculeAssociation - hasDirectOutput: MoleculeAssociation + hasInput: [MoleculeAssociation] + hasPrimaryInput: MoleculeAssociation + hasOutput: [MoleculeAssociation] + hasPrimaryOutput: MoleculeAssociation causalAssociations: [CausalAssociation] provenances: [ProvenanceInfo] } diff --git a/project/jsonld/gocam.context.jsonld b/project/jsonld/gocam.context.jsonld index 5a3f34e..4dfda7f 100644 --- a/project/jsonld/gocam.context.jsonld +++ b/project/jsonld/gocam.context.jsonld @@ -1,7 +1,7 @@ { "comments": { "description": "Auto generated by LinkML jsonld context generator", - "generation_date": "2024-08-30T10:47:20", + "generation_date": "2024-09-13T15:30:51", "source": "gocam.yaml" }, "@context": { @@ -59,13 +59,21 @@ "@type": "@id", "@id": "enabled_by" }, - "has_direct_input": { + "has_input": { "@type": "@id", - "@id": "has_direct_input" + "@id": "has_input" }, - "has_direct_output": { + "has_output": { "@type": "@id", - "@id": "has_direct_output" + "@id": "has_output" + }, + "has_primary_input": { + "@type": "@id", + "@id": "has_primary_input" + }, + "has_primary_output": { + "@type": "@id", + "@id": "has_primary_output" }, "id": "@id", "molecular_function": { diff --git a/project/jsonld/gocam.jsonld b/project/jsonld/gocam.jsonld index 52bd934..3aed5d1 100644 --- a/project/jsonld/gocam.jsonld +++ b/project/jsonld/gocam.jsonld @@ -690,11 +690,27 @@ "@type": "SlotDefinition" }, { - "name": "activity__has_direct_input", + "name": "activity__has_input", "description": "The input molecules that are directly consumed by the activity", "from_schema": "https://w3id.org/gocam", - "slot_uri": "https://w3id.org/gocam/has_direct_input", - "alias": "has_direct_input", + "slot_uri": "https://w3id.org/gocam/has_input", + "multivalued": true, + "alias": "has_input", + "owner": "Activity", + "domain_of": [ + "Activity" + ], + "range": "MoleculeAssociation", + "inlined": true, + "inlined_as_list": true, + "@type": "SlotDefinition" + }, + { + "name": "activity__has_primary_input", + "description": "The primary input molecule that is directly consumed by the activity", + "from_schema": "https://w3id.org/gocam", + "slot_uri": "https://w3id.org/gocam/has_primary_input", + "alias": "has_primary_input", "owner": "Activity", "domain_of": [ "Activity" @@ -704,11 +720,27 @@ "@type": "SlotDefinition" }, { - "name": "activity__has_direct_output", + "name": "activity__has_output", "description": "The output molecules that are directly produced by the activity", "from_schema": "https://w3id.org/gocam", - "slot_uri": "https://w3id.org/gocam/has_direct_output", - "alias": "has_direct_output", + "slot_uri": "https://w3id.org/gocam/has_output", + "multivalued": true, + "alias": "has_output", + "owner": "Activity", + "domain_of": [ + "Activity" + ], + "range": "MoleculeAssociation", + "inlined": true, + "inlined_as_list": true, + "@type": "SlotDefinition" + }, + { + "name": "activity__has_primary_output", + "description": "The primary output molecule that is directly produced by the activity", + "from_schema": "https://w3id.org/gocam", + "slot_uri": "https://w3id.org/gocam/has_primary_output", + "alias": "has_primary_output", "owner": "Activity", "domain_of": [ "Activity" @@ -1387,8 +1419,10 @@ "activity__molecular_function", "activity__occurs_in", "activity__part_of", - "activity__has_direct_input", - "activity__has_direct_output", + "activity__has_input", + "activity__has_primary_input", + "activity__has_output", + "activity__has_primary_output", "activity__causal_associations", "activity__provenances" ], @@ -1436,15 +1470,31 @@ "@type": "SlotDefinition" }, { - "name": "has_direct_input", + "name": "has_input", "description": "The input molecules that are directly consumed by the activity", + "multivalued": true, + "range": "MoleculeAssociation", + "inlined_as_list": true, + "@type": "SlotDefinition" + }, + { + "name": "has_primary_input", + "description": "The primary input molecule that is directly consumed by the activity", "range": "MoleculeAssociation", "inlined": true, "@type": "SlotDefinition" }, { - "name": "has_direct_output", + "name": "has_output", "description": "The output molecules that are directly produced by the activity", + "multivalued": true, + "range": "MoleculeAssociation", + "inlined_as_list": true, + "@type": "SlotDefinition" + }, + { + "name": "has_primary_output", + "description": "The primary output molecule that is directly produced by the activity", "range": "MoleculeAssociation", "inlined": true, "@type": "SlotDefinition" @@ -2160,9 +2210,9 @@ ], "metamodel_version": "1.7.0", "source_file": "gocam.yaml", - "source_file_date": "2024-08-29T14:40:00", - "source_file_size": 13355, - "generation_date": "2024-08-30T10:47:20", + "source_file_date": "2024-09-13T14:36:24", + "source_file_size": 13755, + "generation_date": "2024-09-13T15:30:51", "@type": "SchemaDefinition", "@context": [ "project/jsonld/gocam.context.jsonld", diff --git a/project/jsonschema/gocam.schema.json b/project/jsonschema/gocam.schema.json index a30c6b0..222d713 100644 --- a/project/jsonschema/gocam.schema.json +++ b/project/jsonschema/gocam.schema.json @@ -22,13 +22,27 @@ ], "description": "The gene product or complex that carries out the activity" }, - "has_direct_input": { + "has_input": { + "description": "The input molecules that are directly consumed by the activity", + "items": { + "$ref": "#/$defs/MoleculeAssociation" + }, + "type": "array" + }, + "has_output": { + "description": "The output molecules that are directly produced by the activity", + "items": { + "$ref": "#/$defs/MoleculeAssociation" + }, + "type": "array" + }, + "has_primary_input": { "$ref": "#/$defs/MoleculeAssociation", - "description": "The input molecules that are directly consumed by the activity" + "description": "The primary input molecule that is directly consumed by the activity" }, - "has_direct_output": { + "has_primary_output": { "$ref": "#/$defs/MoleculeAssociation", - "description": "The output molecules that are directly produced by the activity" + "description": "The primary output molecule that is directly produced by the activity" }, "id": { "description": "Identifier of the activity unit. Should be in gocam namespace.", diff --git a/project/owl/gocam.owl.ttl b/project/owl/gocam.owl.ttl index 88637d4..c07c2c6 100644 --- a/project/owl/gocam.owl.ttl +++ b/project/owl/gocam.owl.ttl @@ -11,65 +11,65 @@ gocam:Model a owl:Class, linkml:ClassDefinition ; rdfs:label "Model" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:taxon ], + owl:allValuesFrom gocam:Activity ; + owl:onProperty gocam:activities ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:title ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty gocam:status ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:title ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty gocam:id ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:Activity ; + owl:minCardinality 0 ; owl:onProperty gocam:activities ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:status ], [ a owl:Restriction ; owl:allValuesFrom gocam:Object ; owl:onProperty gocam:objects ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:comments ], + owl:onProperty gocam:title ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:objects ], + owl:maxCardinality 1 ; + owl:onProperty gocam:id ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:title ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:provenances ], + owl:onProperty gocam:taxon ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:ModelStateEnum ; + owl:onProperty gocam:status ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty gocam:title ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:activities ], + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty gocam:comments ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:id ], + owl:onProperty gocam:taxon ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:status ], + owl:allValuesFrom gocam:ProvenanceInfo ; + owl:onProperty gocam:provenances ], [ a owl:Restriction ; owl:allValuesFrom gocam:TaxonTermObject ; owl:onProperty gocam:taxon ], [ a owl:Restriction ; - owl:allValuesFrom gocam:ModelStateEnum ; - owl:onProperty gocam:status ], + owl:minCardinality 0 ; + owl:onProperty gocam:provenances ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:taxon ], + owl:minCardinality 0 ; + owl:onProperty gocam:objects ], [ a owl:Restriction ; - owl:allValuesFrom gocam:ProvenanceInfo ; - owl:onProperty gocam:provenances ] ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:comments ] ; skos:definition "A model of a biological program consisting of a set of causally connected activities" ; skos:inScheme . @@ -77,34 +77,34 @@ gocam:EvidenceItem a owl:Class, linkml:ClassDefinition ; rdfs:label "EvidenceItem" ; rdfs:subClassOf [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:EvidenceTermObject ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:provenances ], [ a owl:Restriction ; - owl:allValuesFrom gocam:PublicationObject ; - owl:onProperty gocam:reference ], + owl:allValuesFrom gocam:Object ; + owl:onProperty gocam:with_objects ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:reference ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:ProvenanceInfo ; - owl:onProperty gocam:provenances ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:EvidenceTermObject ; - owl:onProperty gocam:term ], + owl:onProperty gocam:reference ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:PublicationObject ; owl:onProperty gocam:reference ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:with_objects ], + owl:allValuesFrom gocam:ProvenanceInfo ; + owl:onProperty gocam:provenances ], [ a owl:Restriction ; - owl:allValuesFrom gocam:Object ; + owl:minCardinality 0 ; owl:onProperty gocam:with_objects ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ] ; skos:definition "An individual piece of evidence that is associated with an assertion in a model" ; skos:inScheme . @@ -168,80 +168,92 @@ gocam:Activity a owl:Class, linkml:ClassDefinition ; rdfs:label "Activity" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom gocam:EnabledByAssociation ; + owl:onProperty gocam:enabled_by ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:ProvenanceInfo ; + owl:onProperty gocam:provenances ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:BiologicalProcessAssociation ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:allValuesFrom gocam:CausalAssociation ; - owl:onProperty gocam:causal_associations ], + owl:allValuesFrom gocam:MolecularFunctionAssociation ; + owl:onProperty gocam:molecular_function ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:has_direct_output ], + owl:onProperty gocam:has_primary_output ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty gocam:id ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:enabled_by ], + owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:molecular_function ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:occurs_in ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:causal_associations ], + owl:onProperty gocam:has_primary_input ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:provenances ], + owl:onProperty gocam:has_output ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:has_direct_input ], + owl:onProperty gocam:causal_associations ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:id ], + owl:onProperty gocam:enabled_by ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:has_input ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:has_primary_input ], [ a owl:Restriction ; owl:allValuesFrom gocam:MoleculeAssociation ; - owl:onProperty gocam:has_direct_input ], + owl:onProperty gocam:has_primary_output ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty gocam:id ], + owl:minCardinality 0 ; + owl:onProperty gocam:enabled_by ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:has_primary_output ], [ a owl:Restriction ; owl:allValuesFrom gocam:CellularAnatomicalEntityAssociation ; owl:onProperty gocam:occurs_in ], [ a owl:Restriction ; - owl:allValuesFrom gocam:ProvenanceInfo ; + owl:minCardinality 0 ; owl:onProperty gocam:provenances ], [ a owl:Restriction ; - owl:allValuesFrom gocam:EnabledByAssociation ; - owl:onProperty gocam:enabled_by ], + owl:allValuesFrom gocam:MoleculeAssociation ; + owl:onProperty gocam:has_primary_input ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; + owl:minCardinality 0 ; + owl:onProperty gocam:occurs_in ], + [ a owl:Restriction ; + owl:minCardinality 1 ; owl:onProperty gocam:id ], [ a owl:Restriction ; - owl:allValuesFrom gocam:MolecularFunctionAssociation ; + owl:minCardinality 0 ; owl:onProperty gocam:molecular_function ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:has_direct_output ], + owl:allValuesFrom gocam:CausalAssociation ; + owl:onProperty gocam:causal_associations ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:part_of ], + owl:allValuesFrom gocam:MoleculeAssociation ; + owl:onProperty gocam:has_input ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:enabled_by ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:BiologicalProcessAssociation ; owl:onProperty gocam:part_of ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:has_direct_input ], [ a owl:Restriction ; owl:allValuesFrom gocam:MoleculeAssociation ; - owl:onProperty gocam:has_direct_output ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:molecular_function ], + owl:onProperty gocam:has_output ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:occurs_in ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:occurs_in ] ; + owl:onProperty gocam:id ] ; skos:altLabel "annoton" ; skos:definition "An individual activity in a causal model, representing the individual molecular activity of a single gene product or complex in the context of a particular model" ; skos:inScheme . @@ -250,10 +262,10 @@ gocam:EnabledByGeneProductAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "EnabledByGeneProductAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:GeneProductTermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom gocam:GeneProductTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:minCardinality 0 ; @@ -266,20 +278,20 @@ gocam:EnabledByProteinComplexAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "EnabledByProteinComplexAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:GeneProductTermObject ; - owl:onProperty gocam:members ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:GeneProductTermObject ; owl:onProperty gocam:members ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:ProteinComplexTermObject ; owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:members ], gocam:EnabledByAssociation ; skos:definition "An association between an activity and a protein complex" ; skos:inScheme . @@ -332,6 +344,18 @@ gocam:evidence a owl:ObjectProperty, rdfs:label "evidence" ; skos:inScheme . +gocam:has_input a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "has_input" ; + skos:definition "The input molecules that are directly consumed by the activity" ; + skos:inScheme . + +gocam:has_output a owl:ObjectProperty, + linkml:SlotDefinition ; + rdfs:label "has_output" ; + skos:definition "The output molecules that are directly produced by the activity" ; + skos:inScheme . + gocam:members a owl:ObjectProperty, linkml:SlotDefinition ; rdfs:label "members" ; @@ -356,31 +380,31 @@ gocam:BiologicalProcessAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "BiologicalProcessAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:BiologicalProcessTermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom gocam:PhaseTermObject ; owl:onProperty gocam:happens_during ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:happens_during ], + owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom gocam:PhaseTermObject ; - owl:onProperty gocam:happens_during ], + owl:allValuesFrom gocam:BiologicalProcessTermObject ; + owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:allValuesFrom gocam:BiologicalProcessTermObject ; + owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:term ], + owl:onProperty gocam:happens_during ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:term ], + owl:onProperty gocam:happens_during ], [ a owl:Restriction ; - owl:allValuesFrom gocam:BiologicalProcessTermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:part_of ], gocam:TermAssociation ; skos:definition "An association between an activity and a biological process term" ; @@ -390,11 +414,14 @@ gocam:CausalAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "CausalAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:PredicateTermObject ; + owl:minCardinality 0 ; + owl:onProperty gocam:downstream_activity ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty gocam:predicate ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:downstream_activity ], + owl:allValuesFrom gocam:PredicateTermObject ; + owl:onProperty gocam:predicate ], [ a owl:Restriction ; owl:allValuesFrom gocam:Activity ; owl:onProperty gocam:downstream_activity ], @@ -402,10 +429,7 @@ gocam:CausalAssociation a owl:Class, owl:maxCardinality 1 ; owl:onProperty gocam:predicate ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:predicate ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:downstream_activity ], gocam:Association ; skos:definition "A causal association between two activities" ; @@ -415,7 +439,7 @@ gocam:CellTypeAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "CellTypeAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:GrossAnatomyAssociation ; @@ -424,13 +448,13 @@ gocam:CellTypeAssociation a owl:Class, owl:allValuesFrom gocam:CellTypeTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:part_of ], gocam:TermAssociation ; skos:definition "An association between an activity and a cell type term" ; @@ -448,18 +472,18 @@ gocam:CellularAnatomicalEntityAssociation a owl:Class, rdfs:label "CellularAnatomicalEntityAssociation" ; rdfs:subClassOf [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:term ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:CellTypeAssociation ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; owl:allValuesFrom gocam:CellularAnatomicalEntityTermObject ; @@ -493,13 +517,13 @@ gocam:MolecularFunctionAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "MolecularFunctionAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:allValuesFrom gocam:MolecularFunctionTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], gocam:TermAssociation ; skos:definition "An association between an activity and a molecular function term" ; @@ -544,8 +568,11 @@ gocam:PublicationObject a owl:Class, linkml:ClassDefinition ; rdfs:label "PublicationObject" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:full_text ], + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:abstract_text ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:abstract_text ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty gocam:full_text ], @@ -556,11 +583,8 @@ gocam:PublicationObject a owl:Class, owl:maxCardinality 1 ; owl:onProperty gocam:full_text ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:abstract_text ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:abstract_text ], + owl:minCardinality 0 ; + owl:onProperty gocam:full_text ], gocam:Object ; skos:definition "An object that represents a publication or other kind of reference" ; skos:inScheme . @@ -610,16 +634,16 @@ gocam:full_text a owl:ObjectProperty, rdfs:label "full_text" ; skos:inScheme . -gocam:has_direct_input a owl:ObjectProperty, +gocam:has_primary_input a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "has_direct_input" ; - skos:definition "The input molecules that are directly consumed by the activity" ; + rdfs:label "has_primary_input" ; + skos:definition "The primary input molecule that is directly consumed by the activity" ; skos:inScheme . -gocam:has_direct_output a owl:ObjectProperty, +gocam:has_primary_output a owl:ObjectProperty, linkml:SlotDefinition ; - rdfs:label "has_direct_output" ; - skos:definition "The output molecules that are directly produced by the activity" ; + rdfs:label "has_primary_output" ; + skos:definition "The primary output molecule that is directly produced by the activity" ; skos:inScheme . gocam:label a owl:ObjectProperty, @@ -698,53 +722,31 @@ gocam:GrossAnatomyAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "GrossAnatomyAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom gocam:GrossAnatomicalStructureTermObject ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom gocam:GrossAnatomyAssociation ; + owl:minCardinality 0 ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom gocam:GrossAnatomyAssociation ; owl:onProperty gocam:part_of ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:GrossAnatomicalStructureTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty gocam:part_of ], - gocam:TermAssociation ; - skos:definition "An association between an activity and a gross anatomical structure term" ; - skos:inScheme . - -gocam:MoleculeAssociation a owl:Class, - linkml:ClassDefinition ; - rdfs:label "MoleculeAssociation" ; - rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:term ], - [ a owl:Restriction ; - owl:allValuesFrom gocam:MoleculeTermObject ; - owl:onProperty gocam:term ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:term ], gocam:TermAssociation ; - skos:definition "An association between an activity and a molecule term" ; + skos:definition "An association between an activity and a gross anatomical structure term" ; skos:inScheme . gocam:ProvenanceInfo a owl:Class, linkml:ClassDefinition ; rdfs:label "ProvenanceInfo" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:provided_by ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:created ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:provided_by ], [ a owl:Restriction ; @@ -752,28 +754,34 @@ gocam:ProvenanceInfo a owl:Class, owl:onProperty gocam:contributor ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:provided_by ], + owl:onProperty gocam:created ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:date ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty gocam:contributor ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:provided_by ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:provided_by ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty gocam:created ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty gocam:date ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:String ; owl:onProperty gocam:date ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:created ], + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:contributor ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:contributor ] ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:created ] ; skos:definition "Provenance information for an object" ; skos:inScheme . @@ -782,25 +790,25 @@ gocam:Association a owl:Class, rdfs:label "Association" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:type ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:type ], + owl:onProperty gocam:evidence ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty gocam:provenances ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:type ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:evidence ], + owl:onProperty gocam:type ], [ a owl:Restriction ; owl:allValuesFrom gocam:EvidenceItem ; owl:onProperty gocam:evidence ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty gocam:type ], [ a owl:Restriction ; owl:allValuesFrom gocam:ProvenanceInfo ; - owl:onProperty gocam:provenances ] ; + owl:onProperty gocam:provenances ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty gocam:type ] ; skos:definition "An abstract grouping for different kinds of evidence-associated provenance" ; skos:inScheme . @@ -808,10 +816,10 @@ gocam:EnabledByAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "EnabledByAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom gocam:InformationBiomacromoleculeTermObject ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom gocam:InformationBiomacromoleculeTermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; owl:minCardinality 0 ; @@ -833,21 +841,28 @@ gocam:ModelStateEnum a owl:Class, linkml:permissible_values , . -gocam:Object a owl:Class, +gocam:MoleculeAssociation a owl:Class, linkml:ClassDefinition ; - rdfs:label "Object" ; + rdfs:label "MoleculeAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty gocam:label ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty gocam:label ], + owl:maxCardinality 1 ; + owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Uriorcurie ; - owl:onProperty gocam:type ], + owl:allValuesFrom gocam:MoleculeTermObject ; + owl:onProperty gocam:term ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:type ], + owl:onProperty gocam:term ], + gocam:TermAssociation ; + skos:definition "An association between an activity and a molecule term" ; + skos:inScheme . + +gocam:Object a owl:Class, + linkml:ClassDefinition ; + rdfs:label "Object" ; + rdfs:subClassOf [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty gocam:obsolete ], [ a owl:Restriction ; owl:allValuesFrom linkml:Uriorcurie ; owl:onProperty gocam:id ], @@ -856,21 +871,30 @@ gocam:Object a owl:Class, owl:onProperty gocam:type ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty gocam:id ], + owl:onProperty gocam:label ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; + owl:onProperty gocam:obsolete ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty gocam:id ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty gocam:obsolete ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty gocam:obsolete ], + owl:minCardinality 0 ; + owl:onProperty gocam:type ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty gocam:obsolete ], + owl:onProperty gocam:label ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; + owl:onProperty gocam:id ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Uriorcurie ; + owl:onProperty gocam:type ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty gocam:label ] ; skos:definition "An abstract class for all identified objects in a model" ; skos:inScheme . @@ -887,13 +911,13 @@ gocam:TermAssociation a owl:Class, linkml:ClassDefinition ; rdfs:label "TermAssociation" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:allValuesFrom gocam:TermObject ; + owl:maxCardinality 1 ; owl:onProperty gocam:term ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom gocam:TermObject ; owl:onProperty gocam:term ], gocam:Association ; skos:definition "An association between an activity and a term, potentially with extensions" ; @@ -948,9 +972,14 @@ The central class in this datamodel is a [Model](Model.md). A model consists of [Activity](Activity.md) objects.""" . [] a owl:Restriction ; - rdfs:subClassOf gocam:PublicationObject ; + rdfs:subClassOf gocam:TermAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:PublicationObject . + owl:someValuesFrom gocam:TermAssociation . + +[] a owl:Restriction ; + rdfs:subClassOf gocam:Object ; + owl:onProperty gocam:type ; + owl:someValuesFrom gocam:Object . [] a owl:Restriction ; rdfs:subClassOf gocam:CellTypeTermObject ; @@ -958,132 +987,127 @@ The central class in this datamodel is a [Model](Model.md). A model consists of owl:someValuesFrom gocam:CellTypeTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:BiologicalProcessAssociation ; + rdfs:subClassOf gocam:PredicateTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:BiologicalProcessAssociation . + owl:someValuesFrom gocam:PredicateTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:GeneProductTermObject ; + rdfs:subClassOf gocam:MoleculeAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:GeneProductTermObject . + owl:someValuesFrom gocam:MoleculeAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:MoleculeTermObject ; + rdfs:subClassOf gocam:ProteinComplexTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MoleculeTermObject . + owl:someValuesFrom gocam:ProteinComplexTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:EnabledByProteinComplexAssociation ; + rdfs:subClassOf gocam:EnabledByGeneProductAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EnabledByProteinComplexAssociation . + owl:someValuesFrom gocam:EnabledByGeneProductAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:Object ; + rdfs:subClassOf gocam:InformationBiomacromoleculeTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:Object . + owl:someValuesFrom gocam:InformationBiomacromoleculeTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellularAnatomicalEntityTermObject ; + rdfs:subClassOf gocam:GeneProductTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellularAnatomicalEntityTermObject . + owl:someValuesFrom gocam:GeneProductTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:GrossAnatomicalStructureTermObject ; + rdfs:subClassOf gocam:Association ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:GrossAnatomicalStructureTermObject . + owl:someValuesFrom gocam:Association . [] a owl:Restriction ; - rdfs:subClassOf gocam:EnabledByAssociation ; + rdfs:subClassOf gocam:GrossAnatomyAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EnabledByAssociation . + owl:someValuesFrom gocam:GrossAnatomyAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:TermObject ; + rdfs:subClassOf gocam:CellularAnatomicalEntityTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:TermObject . + owl:someValuesFrom gocam:CellularAnatomicalEntityTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:BiologicalProcessTermObject ; + rdfs:subClassOf gocam:CausalAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:BiologicalProcessTermObject . + owl:someValuesFrom gocam:CausalAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellularAnatomicalEntityAssociation ; + rdfs:subClassOf gocam:GrossAnatomicalStructureTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellularAnatomicalEntityAssociation . + owl:someValuesFrom gocam:GrossAnatomicalStructureTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:PredicateTermObject ; + rdfs:subClassOf gocam:BiologicalProcessAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:PredicateTermObject . + owl:someValuesFrom gocam:BiologicalProcessAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:GrossAnatomyAssociation ; + rdfs:subClassOf gocam:PublicationObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:GrossAnatomyAssociation . + owl:someValuesFrom gocam:PublicationObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:MoleculeAssociation ; + rdfs:subClassOf gocam:TermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MoleculeAssociation . + owl:someValuesFrom gocam:TermObject . [] a owl:Restriction ; rdfs:subClassOf gocam:PhaseTermObject ; owl:onProperty gocam:type ; owl:someValuesFrom gocam:PhaseTermObject . -[] a owl:Restriction ; - rdfs:subClassOf gocam:TaxonTermObject ; - owl:onProperty gocam:type ; - owl:someValuesFrom gocam:TaxonTermObject . - [] a owl:Restriction ; rdfs:subClassOf gocam:EvidenceTermObject ; owl:onProperty gocam:type ; owl:someValuesFrom gocam:EvidenceTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:CellTypeAssociation ; + rdfs:subClassOf gocam:MolecularFunctionTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CellTypeAssociation . + owl:someValuesFrom gocam:MolecularFunctionTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:Association ; + rdfs:subClassOf gocam:EnabledByProteinComplexAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:Association . + owl:someValuesFrom gocam:EnabledByProteinComplexAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:EnabledByGeneProductAssociation ; + rdfs:subClassOf gocam:BiologicalProcessTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:EnabledByGeneProductAssociation . + owl:someValuesFrom gocam:BiologicalProcessTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:MolecularFunctionAssociation ; + rdfs:subClassOf gocam:TaxonTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MolecularFunctionAssociation . + owl:someValuesFrom gocam:TaxonTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:InformationBiomacromoleculeTermObject ; + rdfs:subClassOf gocam:MolecularFunctionAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:InformationBiomacromoleculeTermObject . + owl:someValuesFrom gocam:MolecularFunctionAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:CausalAssociation ; + rdfs:subClassOf gocam:EnabledByAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:CausalAssociation . + owl:someValuesFrom gocam:EnabledByAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:MolecularFunctionTermObject ; + rdfs:subClassOf gocam:MoleculeTermObject ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:MolecularFunctionTermObject . + owl:someValuesFrom gocam:MoleculeTermObject . [] a owl:Restriction ; - rdfs:subClassOf gocam:ProteinComplexTermObject ; + rdfs:subClassOf gocam:CellularAnatomicalEntityAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:ProteinComplexTermObject . + owl:someValuesFrom gocam:CellularAnatomicalEntityAssociation . [] a owl:Restriction ; - rdfs:subClassOf gocam:TermAssociation ; + rdfs:subClassOf gocam:CellTypeAssociation ; owl:onProperty gocam:type ; - owl:someValuesFrom gocam:TermAssociation . + owl:someValuesFrom gocam:CellTypeAssociation . diff --git a/project/protobuf/gocam.proto b/project/protobuf/gocam.proto index cfdd5a6..7f425c0 100644 --- a/project/protobuf/gocam.proto +++ b/project/protobuf/gocam.proto @@ -9,8 +9,10 @@ message Activity molecularFunctionAssociation molecularFunction = 0 cellularAnatomicalEntityAssociation occursIn = 0 biologicalProcessAssociation partOf = 0 - moleculeAssociation hasDirectInput = 0 - moleculeAssociation hasDirectOutput = 0 + repeated moleculeAssociation hasInput = 0 + moleculeAssociation hasPrimaryInput = 0 + repeated moleculeAssociation hasOutput = 0 + moleculeAssociation hasPrimaryOutput = 0 repeated causalAssociation causalAssociations = 0 repeated provenanceInfo provenances = 0 } diff --git a/project/shacl/gocam.shacl.ttl b/project/shacl/gocam.shacl.ttl index 1735046..110f613 100644 --- a/project/shacl/gocam.shacl.ttl +++ b/project/shacl/gocam.shacl.ttl @@ -8,7 +8,11 @@ gocam:Association a sh:NodeShape ; sh:closed false ; sh:description "An abstract grouping for different kinds of evidence-associated provenance" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; + sh:property [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:provenances ], + [ sh:class gocam:EvidenceItem ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path gocam:evidence ], @@ -16,26 +20,22 @@ gocam:Association a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:type ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:provenances ] ; + sh:path gocam:type ] ; sh:targetClass gocam:Association . gocam:CellTypeAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a cell type term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path gocam:type ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; @@ -58,10 +58,6 @@ gocam:EnabledByGeneProductAssociation a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path gocam:term ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -70,18 +66,18 @@ gocam:EnabledByGeneProductAssociation a sh:NodeShape ; [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path gocam:provenances ] ; + sh:path gocam:provenances ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ] ; sh:targetClass gocam:EnabledByGeneProductAssociation . gocam:EnabledByProteinComplexAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a protein complex" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path gocam:provenances ], - [ sh:class gocam:GeneProductTermObject ; + sh:property [ sh:class gocam:GeneProductTermObject ; sh:description "The gene products that are part of the complex" ; sh:nodeKind sh:IRI ; sh:order 0 ; @@ -92,6 +88,10 @@ gocam:EnabledByProteinComplexAssociation a sh:NodeShape ; sh:nodeKind sh:IRI ; sh:order 1 ; sh:path gocam:term ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path gocam:provenances ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -107,17 +107,7 @@ gocam:GrossAnatomyAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a gross anatomical structure term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:GrossAnatomicalStructureTermObject ; - sh:description "The ontology term that describes the nature of the association" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path gocam:term ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:class gocam:ProvenanceInfo ; + sh:property [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path gocam:provenances ], @@ -125,83 +115,93 @@ gocam:GrossAnatomyAssociation a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path gocam:type ] ; + sh:path gocam:type ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], + [ sh:class gocam:GrossAnatomicalStructureTermObject ; + sh:description "The ontology term that describes the nature of the association" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path gocam:term ] ; sh:targetClass gocam:GrossAnatomyAssociation . gocam:Model a sh:NodeShape ; sh:closed true ; sh:description "A model of a biological program consisting of a set of causally connected activities" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:ProvenanceInfo ; + sh:property [ sh:class gocam:Activity ; + sh:description "All of the activities that are part of the model" ; + sh:nodeKind sh:IRI ; + sh:order 5 ; + sh:path gocam:activities ], + [ sh:class gocam:TaxonTermObject ; + sh:description "The primary taxon that the model is about" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path gocam:taxon ], + [ sh:datatype xsd:string ; + sh:description "The human-readable descriptive title of the model" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ], + [ sh:class gocam:ProvenanceInfo ; sh:description "Model-level provenance information" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 7 ; sh:path gocam:provenances ], - [ sh:datatype xsd:anyURI ; - sh:description "The identifier of the model. Should be in gocam namespace." ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], [ sh:description "The status of the model" ; sh:in ( "production" "development" ) ; sh:maxCount 1 ; sh:order 3 ; sh:path pav:status ], - [ sh:datatype xsd:string ; - sh:description "The human-readable descriptive title of the model" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], - [ sh:class gocam:TaxonTermObject ; - sh:description "The primary taxon that the model is about" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path gocam:taxon ], [ sh:class gocam:Object ; sh:description "All of the objects that are part of the model. This includes terms as well as publications and database objects like gene. This is not strictly part of the data managed by the model, it is for convenience, and should be refreshed from outside." ; sh:nodeKind sh:IRI ; sh:order 6 ; sh:path gocam:objects ], + [ sh:datatype xsd:anyURI ; + sh:description "The identifier of the model. Should be in gocam namespace." ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path gocam:id ], [ sh:datatype xsd:string ; sh:description "Comments about the model" ; sh:nodeKind sh:Literal ; sh:order 4 ; - sh:path ], - [ sh:class gocam:Activity ; - sh:description "All of the activities that are part of the model" ; - sh:nodeKind sh:IRI ; - sh:order 5 ; - sh:path gocam:activities ] ; + sh:path ] ; sh:targetClass gocam:Model . gocam:PhaseTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a phase term from GO or UBERON" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], - [ sh:datatype xsd:boolean ; + sh:order 1 ; + sh:path ], + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:string ; + [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ] ; + sh:order 3 ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:PhaseTermObject . gocam:TermAssociation a sh:NodeShape ; @@ -213,27 +213,36 @@ gocam:TermAssociation a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path gocam:type ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ], + [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], [ sh:class gocam:TermObject ; sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path gocam:term ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ] ; + sh:path gocam:term ] ; sh:targetClass gocam:TermAssociation . gocam:BiologicalProcessAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a biological process term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:ProvenanceInfo ; + sh:property [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path gocam:type ], + [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path gocam:provenances ], @@ -242,16 +251,7 @@ gocam:BiologicalProcessAssociation a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path gocam:term ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path gocam:type ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ] ; + sh:path gocam:term ] ; sh:targetClass gocam:BiologicalProcessAssociation . gocam:BiologicalProcessTermObject a sh:NodeShape ; @@ -265,15 +265,15 @@ gocam:BiologicalProcessTermObject a sh:NodeShape ; sh:path ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 0 ; + sh:path gocam:id ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -285,7 +285,13 @@ gocam:CausalAssociation a sh:NodeShape ; sh:closed true ; sh:description "A causal association between two activities" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class gocam:Activity ; + sh:description "The activity unit that is downstream of this one" ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path gocam:downstream_activity ], + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; @@ -303,47 +309,45 @@ gocam:CausalAssociation a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path gocam:predicate ], - [ sh:class gocam:Activity ; - sh:description "The activity unit that is downstream of this one" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path gocam:downstream_activity ] ; + sh:path gocam:predicate ] ; sh:targetClass gocam:CausalAssociation . gocam:CellTypeTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a cell type term from CL" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], - [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path ] ; + sh:path ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path gocam:id ] ; sh:targetClass gocam:CellTypeTermObject . gocam:CellularAnatomicalEntityAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a cellular anatomical entity term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:CellularAnatomicalEntityTermObject ; + sh:property [ sh:class gocam:EvidenceItem ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:evidence ], + [ sh:class gocam:CellularAnatomicalEntityTermObject ; sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; @@ -357,117 +361,113 @@ gocam:CellularAnatomicalEntityAssociation a sh:NodeShape ; [ sh:class gocam:ProvenanceInfo ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path gocam:provenances ], - [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ] ; + sh:path gocam:provenances ] ; sh:targetClass gocam:CellularAnatomicalEntityAssociation . gocam:CellularAnatomicalEntityTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a cellular anatomical entity term from GO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], + sh:order 1 ; + sh:path ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 0 ; + sh:path gocam:id ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; - sh:path gocam:obsolete ] ; + sh:path gocam:obsolete ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ] ; sh:targetClass gocam:CellularAnatomicalEntityTermObject . gocam:EnabledByAssociation a sh:NodeShape ; sh:closed false ; sh:description "An association between an activity and the gene product or complex that carries it out" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:EvidenceItem ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:evidence ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path gocam:type ], - [ sh:class gocam:ProvenanceInfo ; + [ sh:class gocam:EvidenceItem ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ], + sh:order 2 ; + sh:path gocam:evidence ], [ sh:class gocam:InformationBiomacromoleculeTermObject ; sh:description "The gene product or complex that carries out the activity" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path gocam:term ] ; + sh:path gocam:term ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ] ; sh:targetClass gocam:EnabledByAssociation . gocam:EvidenceTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents an evidence term from ECO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ], + [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path gocam:obsolete ], - [ sh:datatype xsd:anyURI ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 1 ; + sh:path ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:id ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ] ; + sh:path gocam:id ] ; sh:targetClass gocam:EvidenceTermObject . gocam:GrossAnatomicalStructureTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a gross anatomical structure term from UBERON" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], - [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:boolean ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ] ; + sh:order 1 ; + sh:path ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ] ; sh:targetClass gocam:GrossAnatomicalStructureTermObject . gocam:InformationBiomacromoleculeTermObject a sh:NodeShape ; @@ -501,106 +501,106 @@ gocam:MolecularFunctionAssociation a sh:NodeShape ; sh:closed true ; sh:description "An association between an activity and a molecular function term" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:MolecularFunctionTermObject ; - sh:description "The ontology term that describes the nature of the association" ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path gocam:term ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ], + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path gocam:type ], [ sh:class gocam:EvidenceItem ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 2 ; sh:path gocam:evidence ], - [ sh:datatype xsd:string ; + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path gocam:provenances ], + [ sh:class gocam:MolecularFunctionTermObject ; + sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path gocam:type ] ; + sh:nodeKind sh:IRI ; + sh:order 0 ; + sh:path gocam:term ] ; sh:targetClass gocam:MolecularFunctionAssociation . gocam:MolecularFunctionTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a molecular function term from GO" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], - [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path ], - [ sh:datatype xsd:boolean ; + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ] ; + sh:order 0 ; + sh:path gocam:id ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path gocam:type ] ; sh:targetClass gocam:MolecularFunctionTermObject . gocam:MoleculeTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a molecule term from CHEBI or UniProtKB" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], - [ sh:datatype xsd:string ; + sh:order 3 ; + sh:path gocam:obsolete ], + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:boolean ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ] ; + sh:order 1 ; + sh:path ] ; sh:targetClass gocam:MoleculeTermObject . gocam:PredicateTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a taxon term from NCBITaxon" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ], - [ sh:datatype xsd:anyURI ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], + sh:order 0 ; + sh:path gocam:id ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ] ; + sh:order 2 ; + sh:path gocam:type ] ; sh:targetClass gocam:PredicateTermObject . gocam:ProteinComplexTermObject a sh:NodeShape ; @@ -614,10 +614,9 @@ gocam:ProteinComplexTermObject a sh:NodeShape ; sh:path ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], + sh:order 2 ; + sh:path gocam:type ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -625,9 +624,10 @@ gocam:ProteinComplexTermObject a sh:NodeShape ; sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ] ; + sh:order 0 ; + sh:path gocam:id ] ; sh:targetClass gocam:ProteinComplexTermObject . gocam:PublicationObject a sh:NodeShape ; @@ -639,32 +639,32 @@ gocam:PublicationObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path gocam:full_text ], - [ sh:datatype xsd:string ; + [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path ], + sh:order 2 ; + sh:path gocam:id ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path gocam:type ], - [ sh:datatype xsd:boolean ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path gocam:obsolete ], + sh:order 3 ; + sh:path ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:abstract_text ], - [ sh:datatype xsd:anyURI ; + [ sh:datatype xsd:boolean ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:id ] ; + sh:order 5 ; + sh:path gocam:obsolete ] ; sh:targetClass gocam:PublicationObject . gocam:TaxonTermObject a sh:NodeShape ; @@ -676,6 +676,11 @@ gocam:TaxonTermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -685,12 +690,7 @@ gocam:TaxonTermObject a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; - sh:path gocam:type ], - [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ] ; + sh:path gocam:type ] ; sh:targetClass gocam:TaxonTermObject . gocam:TermObject a sh:NodeShape ; @@ -702,98 +702,124 @@ gocam:TermObject a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path gocam:type ], - [ sh:datatype xsd:string ; + [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:boolean ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path gocam:obsolete ] ; + sh:order 1 ; + sh:path ] ; sh:targetClass gocam:TermObject . gocam:Activity a sh:NodeShape ; sh:closed true ; sh:description "An individual activity in a causal model, representing the individual molecular activity of a single gene product or complex in the context of a particular model" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:CausalAssociation ; + sh:property [ sh:class gocam:ProvenanceInfo ; + sh:description "Provenance information for the activity" ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path gocam:provenances ], + [ sh:class gocam:CausalAssociation ; sh:description "The causal associations that connect this activity to other activities" ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; + sh:order 9 ; sh:path gocam:causal_associations ], - [ sh:class gocam:MolecularFunctionAssociation ; - sh:description "The molecular function that is carried out by the gene product or complex" ; + [ sh:class gocam:BiologicalProcessAssociation ; + sh:description "The larger biological process in which the activity is a part" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path gocam:molecular_function ], + sh:order 4 ; + sh:path gocam:part_of ], [ sh:class gocam:MoleculeAssociation ; sh:description "The output molecules that are directly produced by the activity" ; - sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path gocam:has_direct_output ], + sh:order 7 ; + sh:path gocam:has_output ], [ sh:class gocam:MoleculeAssociation ; sh:description "The input molecules that are directly consumed by the activity" ; - sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; - sh:path gocam:has_direct_input ], - [ sh:class gocam:BiologicalProcessAssociation ; - sh:description "The larger biological process in which the activity is a part" ; + sh:path gocam:has_input ], + [ sh:class gocam:MoleculeAssociation ; + sh:description "The primary output molecule that is directly produced by the activity" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path gocam:part_of ], + sh:order 8 ; + sh:path gocam:has_primary_output ], [ sh:class gocam:CellularAnatomicalEntityAssociation ; sh:description "The cellular location in which the activity occurs" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; sh:path gocam:occurs_in ], - [ sh:class gocam:ProvenanceInfo ; - sh:description "Provenance information for the activity" ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path gocam:provenances ], [ sh:class gocam:EnabledByAssociation ; sh:description "The gene product or complex that carries out the activity" ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path gocam:enabled_by ], + [ sh:class gocam:MolecularFunctionAssociation ; + sh:description "The molecular function that is carried out by the gene product or complex" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path gocam:molecular_function ], [ sh:datatype xsd:anyURI ; sh:description "Identifier of the activity unit. Should be in gocam namespace." ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path gocam:id ] ; + sh:path gocam:id ], + [ sh:class gocam:MoleculeAssociation ; + sh:description "The primary input molecule that is directly consumed by the activity" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path gocam:has_primary_input ] ; sh:targetClass gocam:Activity . gocam:GeneProductTermObject a sh:NodeShape ; sh:closed true ; sh:description "A term object that represents a gene product term from GO or UniProtKB" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 2 ; + sh:path gocam:type ], + [ sh:datatype xsd:boolean ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path gocam:obsolete ], [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path gocam:id ], - [ sh:datatype xsd:anyURI ; + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ] ; + sh:targetClass gocam:GeneProductTermObject . + +gocam:Object a sh:NodeShape ; + sh:closed true ; + sh:description "An abstract class for all identified objects in a model" ; + sh:ignoredProperties ( rdf:type ) ; + sh:property [ sh:datatype xsd:anyURI ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; @@ -802,8 +828,19 @@ gocam:GeneProductTermObject a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; - sh:path gocam:obsolete ] ; - sh:targetClass gocam:GeneProductTermObject . + sh:path gocam:obsolete ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path ], + [ sh:datatype xsd:anyURI ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path gocam:id ] ; + sh:targetClass gocam:Object . gocam:MoleculeAssociation a sh:NodeShape ; sh:closed true ; @@ -818,71 +855,44 @@ gocam:MoleculeAssociation a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path gocam:type ], - [ sh:class gocam:ProvenanceInfo ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path gocam:provenances ], [ sh:class gocam:MoleculeTermObject ; sh:description "The ontology term that describes the nature of the association" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; - sh:path gocam:term ] ; - sh:targetClass gocam:MoleculeAssociation . - -gocam:Object a sh:NodeShape ; - sh:closed true ; - sh:description "An abstract class for all identified objects in a model" ; - sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path gocam:id ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], - [ sh:datatype xsd:anyURI ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path gocam:type ], - [ sh:datatype xsd:boolean ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; + sh:path gocam:term ], + [ sh:class gocam:ProvenanceInfo ; + sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path gocam:obsolete ] ; - sh:targetClass gocam:Object . + sh:path gocam:provenances ] ; + sh:targetClass gocam:MoleculeAssociation . gocam:EvidenceItem a sh:NodeShape ; sh:closed true ; sh:description "An individual piece of evidence that is associated with an assertion in a model" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class gocam:Object ; - sh:description "Supporting database entities or terms" ; + sh:property [ sh:class gocam:EvidenceTermObject ; + sh:description "The ECO term representing the type of evidence" ; + sh:maxCount 1 ; sh:nodeKind sh:IRI ; - sh:order 2 ; - sh:path gocam:with_objects ], + sh:order 0 ; + sh:path gocam:term ], [ sh:class gocam:PublicationObject ; sh:description "The publication of reference that describes the evidence" ; sh:maxCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; sh:path gocam:reference ], - [ sh:class gocam:EvidenceTermObject ; - sh:description "The ECO term representing the type of evidence" ; - sh:maxCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 0 ; - sh:path gocam:term ], [ sh:class gocam:ProvenanceInfo ; sh:description "Provenance about the assertion, e.g. who made it" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 3 ; - sh:path gocam:provenances ] ; + sh:path gocam:provenances ], + [ sh:class gocam:Object ; + sh:description "Supporting database entities or terms" ; + sh:nodeKind sh:IRI ; + sh:order 2 ; + sh:path gocam:with_objects ] ; sh:targetClass gocam:EvidenceItem . gocam:ProvenanceInfo a sh:NodeShape ; @@ -892,22 +902,22 @@ gocam:ProvenanceInfo a sh:NodeShape ; sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path pav:providedBy ], + sh:order 2 ; + sh:path ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path ], + sh:order 0 ; + sh:path ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path ], + sh:order 3 ; + sh:path pav:providedBy ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path ] ; + sh:order 1 ; + sh:path ] ; sh:targetClass gocam:ProvenanceInfo . diff --git a/project/shex/gocam.shex b/project/shex/gocam.shex index d9eef46..4aa23b7 100644 --- a/project/shex/gocam.shex +++ b/project/shex/gocam.shex @@ -51,8 +51,10 @@ linkml:Sparqlpath xsd:string @ ? ; @ ? ; @ ? ; - @ ? ; - @ ? ; + @ * ; + @ ? ; + @ * ; + @ ? ; @ * ; @ * ) ; diff --git a/project/sqlschema/gocam.sql b/project/sqlschema/gocam.sql index bcbc938..9935e1d 100644 --- a/project/sqlschema/gocam.sql +++ b/project/sqlschema/gocam.sql @@ -10,8 +10,8 @@ -- * Slot: molecular_function_id Description: The molecular function that is carried out by the gene product or complex -- * Slot: occurs_in_id Description: The cellular location in which the activity occurs -- * Slot: part_of_id Description: The larger biological process in which the activity is a part --- * Slot: has_direct_input_id Description: The input molecules that are directly consumed by the activity --- * Slot: has_direct_output_id Description: The output molecules that are directly produced by the activity +-- * Slot: has_primary_input_id Description: The primary input molecule that is directly consumed by the activity +-- * Slot: has_primary_output_id Description: The primary output molecule that is directly produced by the activity -- # Class: "EvidenceItem" Description: "An individual piece of evidence that is associated with an assertion in a model" -- * Slot: id Description: -- * Slot: term Description: The ECO term representing the type of evidence @@ -77,6 +77,7 @@ -- * Slot: id Description: -- * Slot: term Description: The ontology term that describes the nature of the association -- * Slot: type Description: +-- * Slot: Activity_id Description: Autocreated FK slot -- # Class: "Object" Description: "An abstract class for all identified objects in a model" -- * Slot: id Description: -- * Slot: label Description: @@ -191,11 +192,38 @@ -- * Slot: EnabledByProteinComplexAssociation_id Description: Autocreated FK slot -- * Slot: members_id Description: The gene products that are part of the complex +CREATE TABLE "Activity" ( + id TEXT NOT NULL, + "Model_id" TEXT, + enabled_by_id INTEGER, + molecular_function_id INTEGER, + occurs_in_id INTEGER, + part_of_id INTEGER, + has_primary_input_id INTEGER, + has_primary_output_id INTEGER, + PRIMARY KEY (id), + FOREIGN KEY("Model_id") REFERENCES "Model" (id), + FOREIGN KEY(enabled_by_id) REFERENCES "EnabledByAssociation" (id), + FOREIGN KEY(molecular_function_id) REFERENCES "MolecularFunctionAssociation" (id), + FOREIGN KEY(occurs_in_id) REFERENCES "CellularAnatomicalEntityAssociation" (id), + FOREIGN KEY(part_of_id) REFERENCES "BiologicalProcessAssociation" (id), + FOREIGN KEY(has_primary_input_id) REFERENCES "MoleculeAssociation" (id), + FOREIGN KEY(has_primary_output_id) REFERENCES "MoleculeAssociation" (id) +); CREATE TABLE "Association" ( id INTEGER NOT NULL, type TEXT, PRIMARY KEY (id) ); +CREATE TABLE "MoleculeAssociation" ( + id INTEGER NOT NULL, + term TEXT, + type TEXT, + "Activity_id" TEXT, + PRIMARY KEY (id), + FOREIGN KEY(term) REFERENCES "MoleculeTermObject" (id), + FOREIGN KEY("Activity_id") REFERENCES "Activity" (id) +); CREATE TABLE "TermObject" ( id TEXT NOT NULL, label TEXT, @@ -332,6 +360,17 @@ CREATE TABLE "EnabledByProteinComplexAssociation" ( PRIMARY KEY (id), FOREIGN KEY(term) REFERENCES "ProteinComplexTermObject" (id) ); +CREATE TABLE "CausalAssociation" ( + id INTEGER NOT NULL, + predicate TEXT, + downstream_activity TEXT, + type TEXT, + "Activity_id" TEXT, + PRIMARY KEY (id), + FOREIGN KEY(predicate) REFERENCES "PredicateTermObject" (id), + FOREIGN KEY(downstream_activity) REFERENCES "Activity" (id), + FOREIGN KEY("Activity_id") REFERENCES "Activity" (id) +); CREATE TABLE "TermAssociation" ( id INTEGER NOT NULL, term TEXT, @@ -374,64 +413,6 @@ CREATE TABLE "GrossAnatomyAssociation" ( PRIMARY KEY (id), FOREIGN KEY(term) REFERENCES "GrossAnatomicalStructureTermObject" (id) ); -CREATE TABLE "MoleculeAssociation" ( - id INTEGER NOT NULL, - term TEXT, - type TEXT, - PRIMARY KEY (id), - FOREIGN KEY(term) REFERENCES "MoleculeTermObject" (id) -); -CREATE TABLE "Activity" ( - id TEXT NOT NULL, - "Model_id" TEXT, - enabled_by_id INTEGER, - molecular_function_id INTEGER, - occurs_in_id INTEGER, - part_of_id INTEGER, - has_direct_input_id INTEGER, - has_direct_output_id INTEGER, - PRIMARY KEY (id), - FOREIGN KEY("Model_id") REFERENCES "Model" (id), - FOREIGN KEY(enabled_by_id) REFERENCES "EnabledByAssociation" (id), - FOREIGN KEY(molecular_function_id) REFERENCES "MolecularFunctionAssociation" (id), - FOREIGN KEY(occurs_in_id) REFERENCES "CellularAnatomicalEntityAssociation" (id), - FOREIGN KEY(part_of_id) REFERENCES "BiologicalProcessAssociation" (id), - FOREIGN KEY(has_direct_input_id) REFERENCES "MoleculeAssociation" (id), - FOREIGN KEY(has_direct_output_id) REFERENCES "MoleculeAssociation" (id) -); -CREATE TABLE "Object" ( - id TEXT NOT NULL, - label TEXT, - type TEXT, - obsolete BOOLEAN, - "Model_id" TEXT, - PRIMARY KEY (id), - FOREIGN KEY("Model_id") REFERENCES "Model" (id) -); -CREATE TABLE "Model_comments" ( - "Model_id" TEXT, - comments TEXT, - PRIMARY KEY ("Model_id", comments), - FOREIGN KEY("Model_id") REFERENCES "Model" (id) -); -CREATE TABLE "EnabledByProteinComplexAssociation_members" ( - "EnabledByProteinComplexAssociation_id" INTEGER, - members_id TEXT, - PRIMARY KEY ("EnabledByProteinComplexAssociation_id", members_id), - FOREIGN KEY("EnabledByProteinComplexAssociation_id") REFERENCES "EnabledByProteinComplexAssociation" (id), - FOREIGN KEY(members_id) REFERENCES "GeneProductTermObject" (id) -); -CREATE TABLE "CausalAssociation" ( - id INTEGER NOT NULL, - predicate TEXT, - downstream_activity TEXT, - type TEXT, - "Activity_id" TEXT, - PRIMARY KEY (id), - FOREIGN KEY(predicate) REFERENCES "PredicateTermObject" (id), - FOREIGN KEY(downstream_activity) REFERENCES "Activity" (id), - FOREIGN KEY("Activity_id") REFERENCES "Activity" (id) -); CREATE TABLE "EvidenceItem" ( id INTEGER NOT NULL, term TEXT, @@ -464,6 +445,28 @@ CREATE TABLE "EvidenceItem" ( FOREIGN KEY("GrossAnatomyAssociation_id") REFERENCES "GrossAnatomyAssociation" (id), FOREIGN KEY("MoleculeAssociation_id") REFERENCES "MoleculeAssociation" (id) ); +CREATE TABLE "Object" ( + id TEXT NOT NULL, + label TEXT, + type TEXT, + obsolete BOOLEAN, + "Model_id" TEXT, + PRIMARY KEY (id), + FOREIGN KEY("Model_id") REFERENCES "Model" (id) +); +CREATE TABLE "Model_comments" ( + "Model_id" TEXT, + comments TEXT, + PRIMARY KEY ("Model_id", comments), + FOREIGN KEY("Model_id") REFERENCES "Model" (id) +); +CREATE TABLE "EnabledByProteinComplexAssociation_members" ( + "EnabledByProteinComplexAssociation_id" INTEGER, + members_id TEXT, + PRIMARY KEY ("EnabledByProteinComplexAssociation_id", members_id), + FOREIGN KEY("EnabledByProteinComplexAssociation_id") REFERENCES "EnabledByProteinComplexAssociation" (id), + FOREIGN KEY(members_id) REFERENCES "GeneProductTermObject" (id) +); CREATE TABLE "ProvenanceInfo" ( id INTEGER NOT NULL, contributor TEXT,