From 2f42e5cf8ac6d1682dead2b1ed82dcaad774c9c4 Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 22 Jan 2024 14:18:50 -0500 Subject: [PATCH 01/10] Add experimental SheX for a GO-CAM limited to the GPAD spec. --- shapes/gpad-shapes.shapeMap | 1 + shapes/gpad-shapes.shex | 464 ++++++++++++++++++++++++++++++++++++ 2 files changed, 465 insertions(+) create mode 100644 shapes/gpad-shapes.shapeMap create mode 100644 shapes/gpad-shapes.shex diff --git a/shapes/gpad-shapes.shapeMap b/shapes/gpad-shapes.shapeMap new file mode 100644 index 0000000..8b7087c --- /dev/null +++ b/shapes/gpad-shapes.shapeMap @@ -0,0 +1 @@ +{ FOCUS }@ \ No newline at end of file diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex new file mode 100644 index 0000000..060efdf --- /dev/null +++ b/shapes/gpad-shapes.shex @@ -0,0 +1,464 @@ +BASE +PREFIX obo: +PREFIX rdf: +PREFIX rdfs: +PREFIX owl: +PREFIX xsd: +PREFIX skos: +PREFIX prov: +PREFIX GO: +PREFIX ECO: +#metadata +PREFIX bl: +PREFIX contributor: +PREFIX provided_by: +PREFIX modification_date: +PREFIX creation_date: +PREFIX import_date: +PREFIX xref: +PREFIX exact_match: +PREFIX source: +PREFIX evidence: +PREFIX with: +PREFIX x: +PREFIX y: +#model level annotations +PREFIX ontology: +PREFIX taxon: +PREFIX modelstate: +PREFIX templatestate: +PREFIX oboinowlid: +###contributor, date, providedBy reused +PREFIX title: +PREFIX imports: +# always limit imports to? ; +PREFIX in_taxon: +#semantic: classes +PREFIX GoInformationBiomacromolecule: +PREFIX GoProtein: +PREFIX GoProteinContainingComplex: +PREFIX GoCellularComponent: +PREFIX GoBiologicalProcess: +PREFIX GoAnatomicalStructureDevelopment: +PREFIX GoAnatomicalStructureFormationInvolvedInMorphogenesis: +PREFIX GoAnatomicalStructureMorphogenesis: +PREFIX GoCellDifferentiation: +PREFIX GoCellDivision: +PREFIX GoCellFateCommitment: +PREFIX GoCellFateDetermination: +PREFIX GoCellFateSpecification: +PREFIX GoCellularComponentAssembly: +PREFIX GoCellularComponentDisassembly: +PREFIX GoCellularComponentOrganization: +PREFIX GoDevelopmentalMaturation: +PREFIX GoGrowth: +PREFIX GoLocalization: +PREFIX GoLocomotion: +PREFIX GoProteinContainingComplexRemodeling: +PREFIX GoPatternSpecificationProcess: +PREFIX GoMetabolicProcess: +PREFIX GoTransport: +PREFIX GoMolecularFunction: +prefix GoMolecularEvent: +PREFIX GoTransporterActivity: +PREFIX GoChemicalEntity: +PREFIX GoEvidence: +PREFIX GoAnatomicalEntity: +PREFIX GoCell: +PREFIX GoOrganism: +PREFIX GoBiologicalPhase: +PREFIX GoLifeCycleStage: +PREFIX GoPlantStructureDevelopmentStage: +#semantic: relations +PREFIX part_of: +PREFIX has_part: +PREFIX occurs_in: +PREFIX adjacent_to: +PREFIX overlaps: +PREFIX existence_overlaps: +PREFIX existence_starts_and_ends_during: +PREFIX enabled_by: +PREFIX contributes_to: +PREFIX has_input: +PREFIX has_output: +PREFIX has_primary_input: +PREFIX has_primary_output: +PREFIX has_target_end_location: +PREFIX has_target_start_location: +PREFIX transports_or_maintains_localization_of: +PREFIX directly_provides_input_for: +PREFIX directly_positively_regulates: +PREFIX has_small_molecule_regulator: +PREFIX has_small_molecule_activator: +PREFIX has_small_molecule_inhibitor: +PREFIX is_small_molecule_regulator_of: +PREFIX is_small_molecule_activator_of: +PREFIX is_small_molecule_inhibitor_of: +PREFIX located_in: +PREFIX location_of: +PREFIX is_active_in: +PREFIX happens_during: +PREFIX regulates: +PREFIX negatively_regulates: +PREFIX positively_regulates: +PREFIX directly_regulates: +PREFIX directly_negatively_regulates: +PREFIX directly_activates: +PREFIX indirectly_regulates: +PREFIX indirectly_positively_regulates: +PREFIX indirectly_negatively_regulates: +PREFIX constitutively_upstream_of: +PREFIX removes_input_for: +PREFIX causally_upstream_of_or_within: +PREFIX causally_upstream_of_or_within_negative_effect: +PREFIX causally_upstream_of_or_within_positive_effect: +PREFIX causally_upstream_of: +PREFIX causally_upstream_of_negative_effect: +PREFIX causally_upstream_of_positive_effect: +PREFIX acts_on_population_of: +PREFIX results_in_development_of: +PREFIX results_in_formation_of: +PREFIX results_in_morphogenesis_of: +PREFIX results_in_acquisition_of_features_of: +PREFIX results_in_commitment_to: +PREFIX results_in_determination_of: +PREFIX results_in_specification_of: +PREFIX results_in_assembly_of: +PREFIX results_in_disassembly_of: +PREFIX results_in_organization_of: +PREFIX results_in_maturation_of: +PREFIX results_in_growth_of: +PREFIX results_in_movement_of: +PREFIX results_in_remodeling_of: + + { + a [owl:Ontology] + ; + contributor: xsd:string +; #TODO would be better as an IRI + modification_date: xsd:string {1}; #Use ISO 8601 as a standard. + creation_date: xsd:string {0,1}; #Use ISO 8601 as a standard. + import_date: xsd:string {0,1}; #Use ISO 8601 as a standard. + provided_by: xsd:string +; #TODO would be better as an IRI + rdfs:comment xsd:string *; + modelstate: xsd:string {1}; #TODO would be better as an IRI + templatestate: xsd:string {0,1}; #TODO should be modeled as xsd:boolean but currently a string. No value means false. + in_taxon: . *; + title: xsd:string {1}; + imports: . *; + oboinowlid: . *; #TODO not sure if we really want this? + owl:versionIRI . *; + prov:wasDerivedFrom IRI {0,1}; # for model copy +} + + { + $ ( + contributor: xsd:string +; #TODO would be better as an IRI + modification_date: xsd:string {1}; #Use ISO 8601 as a standard. + creation_date: xsd:string {0,1}; #Use ISO 8601 as a standard. + import_date: xsd:string {0,1}; #Use ISO 8601 as a standard. + provided_by: xsd:string *; #TODO would be better as an IRI + rdfs:comment xsd:string *; + skos:note xsd:string * + ) ; +} + + IRI and EXTRA a { + $ ( + a [owl:NamedIndividual] // rdfs:comment "Every entity we care about is a named individual"; + xref: . * // rdfs:comment "mappings for the entity. Value is typically a CURIE string. Currently this is only used for Reactome-derived models." ; + rdfs:label . {0,1} // rdfs:comment "the name of the entity. Currently this is only used for Reactome-derived models." ; + exact_match: . *; + x: . {0,1} // rdfs:comment "X coordinate for node. This is used for caching layouts in the Noctua Graph Editor."; + y: . {0,1} // rdfs:comment "Y coordinate for node. This is used for caching layouts in the Noctua Graph Editor."; + skos:narrower . * // rdfs:comment "This entity (e.g. a node representing a pathway) represents a narrower (in any sense) concept then the target node. "; + skos:broader . * // rdfs:comment "This entity (e.g. a node representing a pathway) represents a broader (in any sense) concept then the target node. " + ) ; +} // rdfs:comment "Default allowable metadata for GO-CAM entities" + + { + rdf:type [ owl:Class ] ; +} + + IRI { + a [ owl:NamedIndividual ] ; + a [ GO:~ ] +} + + CLOSED { + & ; + & ; + & ; + a ( IRI AND ( NOT [ owl:NamedIndividual ] ) ) +} + + IRI AND [ GO:~ ] AND @ AND EXTRA rdfs:subClassOf { + # disabled checking class hierarchy so that this is useable without running the enrichment script + #rdfs:subClassOf [ GoBiologicalProcess: ] ; +} + + BNode @ AND { + owl:complementOf @ +} + + IRI CLOSED { + & ; + & ; + & ; + a ( @ OR @ ) ; + occurs_in: @ {0,1}; +} // rdfs:comment "A biological process instance" + + IRI AND [ GO:~ ] AND @ AND EXTRA rdfs:subClassOf { + # disabled checking class hierarchy so that this is useable without running the enrichment script + #rdfs:subClassOf [ GoMolecularFunction: ] ; +} + + BNode @ AND { + owl:complementOf @ +} + + IRI CLOSED { + & ; + & ; + & ; + a ( @ OR @ ) {1}; + enabled_by: @ ; + ( part_of: @ {0,1} | + causally_upstream_of: @ {0,1} | + causally_upstream_of_positive_effect: @ {0,1} | + causally_upstream_of_negative_effect: @ {0,1} | + causally_upstream_of_or_within: @ {0,1} | + causally_upstream_of_or_within_positive_effect: @ {0,1} | + causally_upstream_of_or_within_negative_effect: @ {0,1} + ) ; + occurs_in: @ {0,1}; +} // rdfs:comment "A molecular function instance" + + IRI AND [ GO:~ ] AND @ AND EXTRA rdfs:subClassOf { + # disabled checking class hierarchy so that this is useable without running the enrichment script + #rdfs:subClassOf [ GoCellularComponent: ]; +} + + BNode @ AND { + owl:complementOf @ +} + + IRI CLOSED { + & ; + & ; + & ; + a ( @ OR @ ) {1}; +} // rdfs:comment "a cellular component instance" + + IRI CLOSED { + & ; + & ; + a @; +} // rdfs:comment "a protein complex instance" + + IRI @ AND EXTRA rdfs:subClassOf { + #rdfs:subClassOf [ GoProteinContainingComplex: ]; +} + + IRI @ AND EXTRA rdfs:subClassOf { + #rdfs:subClassOf [ GoInformationBiomacromolecule: ]; +} + IRI CLOSED { + & ; + & ; + a @ +; +} // rdfs:comment "an information biomacromolecule instance - e.g. a protein or RNA product" + + @ OR @ + + IRI AND [ ECO:~ ] AND @ AND EXTRA rdfs:subClassOf { + #rdfs:subClassOf [ GoEvidence: ] ; +} + + IRI CLOSED { + & ; + & ; + a @ {1}; + source: xsd:string {1}; + with: xsd:string {0,1} +} // rdfs:comment "An evidence instance" + + BNode CLOSED { + & ; + a [ owl:Axiom ] ; + owl:annotatedSource @ ; + owl:annotatedProperty IRI ; + owl:annotatedTarget @ ; + evidence: @ * +} + + @ OR @ OR @ OR @ OR @ OR @ + + { + $ ( + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + @ * ; + ) +} + + { + $ ( + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ | + ^ @ + ) +} From c6bd0ba937d006a07a29c2ba29be58b3e67945ba Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 22 Jan 2024 14:26:22 -0500 Subject: [PATCH 02/10] Add more comments. --- shapes/gpad-shapes.shex | 3 +++ 1 file changed, 3 insertions(+) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 060efdf..39c2c04 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -256,10 +256,12 @@ PREFIX results_in_remodeling_of: } // rdfs:comment "a protein complex instance" IRI @ AND EXTRA rdfs:subClassOf { + # disabled checking class hierarchy so that this is useable without running the enrichment script #rdfs:subClassOf [ GoProteinContainingComplex: ]; } IRI @ AND EXTRA rdfs:subClassOf { + # disabled checking class hierarchy so that this is useable without running the enrichment script #rdfs:subClassOf [ GoInformationBiomacromolecule: ]; } IRI CLOSED { @@ -271,6 +273,7 @@ PREFIX results_in_remodeling_of: @ OR @ IRI AND [ ECO:~ ] AND @ AND EXTRA rdfs:subClassOf { + # disabled checking class hierarchy so that this is useable without running the enrichment script #rdfs:subClassOf [ GoEvidence: ] ; } From 2d4dc3e55b2531020159894333ba6e1a3ed6f900 Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 22 Jan 2024 19:56:31 -0500 Subject: [PATCH 03/10] Change Enabler to DBObject. --- shapes/gpad-shapes.shex | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 39c2c04..837a24b 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -72,6 +72,7 @@ PREFIX GoPlantStructureDevelopmentStage: PREFIX has_part: +PREFIX colocalizes_with: PREFIX occurs_in: PREFIX adjacent_to: PREFIX overlaps: @@ -221,7 +222,7 @@ PREFIX results_in_remodeling_of: & ; & ; a ( @ OR @ ) {1}; - enabled_by: @ ; + enabled_by: @ ; ( part_of: @ {0,1} | causally_upstream_of: @ {0,1} | causally_upstream_of_positive_effect: @ {0,1} | @@ -246,15 +247,17 @@ PREFIX results_in_remodeling_of: & ; & ; & ; - a ( @ OR @ ) {1}; + a ( @ OR @ ) {1} ; + ( + ^occurs_in: @ | + ^occurs_in: @ | + ^located_in: @ | + ^part_of: @ | + ^is_active_in: @ | + ^colocalizes_with: @ + ) } // rdfs:comment "a cellular component instance" - IRI CLOSED { - & ; - & ; - a @; -} // rdfs:comment "a protein complex instance" - IRI @ AND EXTRA rdfs:subClassOf { # disabled checking class hierarchy so that this is useable without running the enrichment script #rdfs:subClassOf [ GoProteinContainingComplex: ]; @@ -264,13 +267,20 @@ PREFIX results_in_remodeling_of: # disabled checking class hierarchy so that this is useable without running the enrichment script #rdfs:subClassOf [ GoInformationBiomacromolecule: ]; } - IRI CLOSED { + + IRI AND [ . - GO:~ ] AND CLOSED { & ; & ; - a @ +; -} // rdfs:comment "an information biomacromolecule instance - e.g. a protein or RNA product" - - @ OR @ + ( a @ | a @ ) ; + ( + part_of: @ | + located_in: @ | + is_active_in: @ | + colocalizes_with: @ | + ^enabled_by: @ | + contributes_to: @ + ) +} IRI AND [ ECO:~ ] AND @ AND EXTRA rdfs:subClassOf { # disabled checking class hierarchy so that this is useable without running the enrichment script @@ -294,7 +304,7 @@ PREFIX results_in_remodeling_of: evidence: @ * } - @ OR @ OR @ OR @ OR @ OR @ + @ OR @ OR @ OR @ OR @ OR @ { $ ( From 916ffbb6b7d73cbed6544f2bc2323152f2c3a55d Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 29 Jan 2024 13:30:54 -0500 Subject: [PATCH 04/10] Add 'has primary input/output' relations to allowed GPAD extensions. --- shapes/gpad-shapes.shex | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 837a24b..2c679f4 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -184,7 +184,7 @@ PREFIX results_in_remodeling_of: a [ GO:~ ] } - CLOSED { + IRI CLOSED { & ; & ; & ; @@ -388,6 +388,8 @@ PREFIX results_in_remodeling_of: @ * ; @ * ; @ * ; + @ * ; + @ * ; ) } @@ -472,6 +474,8 @@ PREFIX results_in_remodeling_of: ^ @ | ^ @ | ^ @ | - ^ @ + ^ @ | + ^ @ | + ^ @ ) } From 5c070374b8f7c70e5765bd5c527f7bdae9ee65ae Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 29 Jan 2024 13:56:17 -0500 Subject: [PATCH 05/10] Add some incoming constraints. --- shapes/gpad-shapes.shex | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 2c679f4..b2db81f 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -205,6 +205,14 @@ PREFIX results_in_remodeling_of: & ; & ; a ( @ OR @ ) ; + ( ^part_of: @ | + ^causally_upstream_of: @ | + ^causally_upstream_of_positive_effect: @ | + ^causally_upstream_of_negative_effect: @ | + ^causally_upstream_of_or_within: @ | + ^causally_upstream_of_or_within_positive_effect: @ | + ^causally_upstream_of_or_within_negative_effect: @ + ) ; occurs_in: @ {0,1}; } // rdfs:comment "A biological process instance" @@ -222,7 +230,7 @@ PREFIX results_in_remodeling_of: & ; & ; a ( @ OR @ ) {1}; - enabled_by: @ ; + ( enabled_by: @ | ^contributes_to: @ ); ( part_of: @ {0,1} | causally_upstream_of: @ {0,1} | causally_upstream_of_positive_effect: @ {0,1} | From 3903c47c0a0f57a3ab2847aeb5e7dbaed7489c67 Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Tue, 30 Jan 2024 12:12:55 -0500 Subject: [PATCH 06/10] Add GP-to-BP relations, and handle negated GO terms with extensions. --- shapes/gpad-shapes.shex | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index b2db81f..1141cf9 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -131,6 +131,13 @@ PREFIX results_in_maturation_of: PREFIX results_in_growth_of: PREFIX results_in_movement_of: PREFIX results_in_remodeling_of: +PREFIX acts_upstream_of: +PREFIX acts_upstream_of_positive_effect: +PREFIX acts_upstream_of_negative_effect: +PREFIX acts_upstream_of_or_within: +PREFIX acts_upstream_of_or_within_positive_effect: +PREFIX acts_upstream_of_or_within_negative_effect: +PREFIX involved_in: { a [owl:Ontology] + ; @@ -181,7 +188,7 @@ PREFIX results_in_remodeling_of: IRI { a [ owl:NamedIndividual ] ; - a [ GO:~ ] + a ( [ GO:~ ] OR ( BNode AND ( { owl:complementOf [ GO:~ ] } ) ) ) } IRI CLOSED { @@ -211,7 +218,14 @@ PREFIX results_in_remodeling_of: ^causally_upstream_of_negative_effect: @ | ^causally_upstream_of_or_within: @ | ^causally_upstream_of_or_within_positive_effect: @ | - ^causally_upstream_of_or_within_negative_effect: @ + ^causally_upstream_of_or_within_negative_effect: @ | + ^acts_upstream_of: @ | + ^acts_upstream_of_positive_effect: @ | + ^acts_upstream_of_negative_effect: @ | + ^acts_upstream_of_or_within: @ | + ^acts_upstream_of_or_within_positive_effect: @ | + ^acts_upstream_of_or_within_negative_effect: @ | + ^involved_in: @ ) ; occurs_in: @ {0,1}; } // rdfs:comment "A biological process instance" @@ -286,7 +300,14 @@ PREFIX results_in_remodeling_of: is_active_in: @ | colocalizes_with: @ | ^enabled_by: @ | - contributes_to: @ + contributes_to: @ | + acts_upstream_of: @ | + acts_upstream_of_positive_effect: @ | + acts_upstream_of_negative_effect: @ | + acts_upstream_of_or_within: @ | + acts_upstream_of_or_within_positive_effect: @ | + acts_upstream_of_or_within_negative_effect: @ | + involved_in: @ ) } From e094623db344a48428601744bc0c255027307e79 Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 5 Feb 2024 13:50:58 -0500 Subject: [PATCH 07/10] Add 'existence starts and ends during'. --- shapes/gpad-shapes.shex | 2 ++ 1 file changed, 2 insertions(+) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 1141cf9..288b27e 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -412,6 +412,7 @@ PREFIX involved_in: @ * ; @ * ; @ * ; + @ * ; @ * ; @ * ; @ * ; @@ -499,6 +500,7 @@ PREFIX involved_in: ^ @ | ^ @ | ^ @ | + ^ @ | ^ @ | ^ @ | ^ @ | From 937ddea5a2a2b1500d02a51e084c0779727ee438 Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 19 Feb 2024 14:26:24 -0500 Subject: [PATCH 08/10] Relax string literal constraints. --- shapes/gpad-shapes.shex | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 288b27e..c475059 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -141,16 +141,16 @@ PREFIX involved_in: { a [owl:Ontology] + ; - contributor: xsd:string +; #TODO would be better as an IRI - modification_date: xsd:string {1}; #Use ISO 8601 as a standard. - creation_date: xsd:string {0,1}; #Use ISO 8601 as a standard. - import_date: xsd:string {0,1}; #Use ISO 8601 as a standard. - provided_by: xsd:string +; #TODO would be better as an IRI - rdfs:comment xsd:string *; - modelstate: xsd:string {1}; #TODO would be better as an IRI - templatestate: xsd:string {0,1}; #TODO should be modeled as xsd:boolean but currently a string. No value means false. + contributor: Literal +; #TODO would be better as an IRI + modification_date: Literal {1}; #Use ISO 8601 as a standard. + creation_date: Literal {0,1}; #Use ISO 8601 as a standard. + import_date: Literal {0,1}; #Use ISO 8601 as a standard. + provided_by: Literal +; #TODO would be better as an IRI + rdfs:comment Literal *; + modelstate: Literal {1}; #TODO would be better as an IRI + templatestate: Literal {0,1}; #TODO should be modeled as xsd:boolean but currently a string. No value means false. in_taxon: . *; - title: xsd:string {1}; + title: Literal {1}; imports: . *; oboinowlid: . *; #TODO not sure if we really want this? owl:versionIRI . *; @@ -159,13 +159,13 @@ PREFIX involved_in: { $ ( - contributor: xsd:string +; #TODO would be better as an IRI - modification_date: xsd:string {1}; #Use ISO 8601 as a standard. - creation_date: xsd:string {0,1}; #Use ISO 8601 as a standard. - import_date: xsd:string {0,1}; #Use ISO 8601 as a standard. - provided_by: xsd:string *; #TODO would be better as an IRI - rdfs:comment xsd:string *; - skos:note xsd:string * + contributor: Literal +; #TODO would be better as an IRI + modification_date: Literal {1}; #Use ISO 8601 as a standard. + creation_date: Literal {0,1}; #Use ISO 8601 as a standard. + import_date: Literal {0,1}; #Use ISO 8601 as a standard. + provided_by: Literal *; #TODO would be better as an IRI + rdfs:comment Literal *; + skos:note Literal * ) ; } @@ -320,8 +320,8 @@ PREFIX involved_in: & ; & ; a @ {1}; - source: xsd:string {1}; - with: xsd:string {0,1} + source: Literal {1}; + with: Literal {0,1} } // rdfs:comment "An evidence instance" BNode CLOSED { From 83e3bb58a2857f345bfe0ec9ba02c07c0b6a92e9 Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Mon, 19 Feb 2024 14:42:10 -0500 Subject: [PATCH 09/10] Make class declarations optional. --- shapes/gpad-shapes.shex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index c475059..5f1fc51 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -183,7 +183,7 @@ PREFIX involved_in: } // rdfs:comment "Default allowable metadata for GO-CAM entities" { - rdf:type [ owl:Class ] ; + rdf:type [ owl:Class ] ? ; } IRI { From c6707dfec30f19c9f483e28beba8b2b1d309889b Mon Sep 17 00:00:00 2001 From: Jim Balhoff Date: Wed, 6 Mar 2024 11:45:49 -0500 Subject: [PATCH 10/10] Add 'regulates transport of' to extensions. --- shapes/gpad-shapes.shex | 3 +++ 1 file changed, 3 insertions(+) diff --git a/shapes/gpad-shapes.shex b/shapes/gpad-shapes.shex index 5f1fc51..41873ff 100644 --- a/shapes/gpad-shapes.shex +++ b/shapes/gpad-shapes.shex @@ -117,6 +117,7 @@ PREFIX causally_upstream_of: PREFIX causally_upstream_of_negative_effect: PREFIX causally_upstream_of_positive_effect: PREFIX acts_on_population_of: +PREFIX regulates_transport_of: PREFIX results_in_development_of: PREFIX results_in_formation_of: PREFIX results_in_morphogenesis_of: @@ -363,6 +364,7 @@ PREFIX involved_in: @ * ; @ * ; @ * ; + @ * ; @ * ; @ * ; @ * ; @@ -451,6 +453,7 @@ PREFIX involved_in: ^ @ | ^ @ | ^ @ | + ^ @ | ^ @ | ^ @ | ^ @ |