geneontology / go-shapes

Schema for Gene Ontology Causal Activity Models defined using RDF Shapes
2 stars 0 forks source link

Include shapes for models/graphs #252

Open cmungall opened 3 years ago

cmungall commented 3 years ago

We should include shapes for the model itself.

I think we should make all assumptions explicit. E.g. should every model have a title? a status?

Should we have separate shapes for a curated model vs the named graphs we use to cache inferences (cc @balhoff @dougli1sqrd )?

here is a model chosen at random

http://model.geneontology.org/5b318d0900000583,http://www.geneontology.org/formats/oboInOwl#id,gomodel:5b318d0900000583
http://model.geneontology.org/5b318d0900000583,http://model.geneontology.org/graphType,http://model.geneontology.org/noctuaCam
http://model.geneontology.org/5b318d0900000583,lego:modelstate,production
http://model.geneontology.org/5b318d0900000583,http://purl.org/pav/providedBy,http://www.wormbase.org
http://model.geneontology.org/5b318d0900000583,owl:versionIRI,http://model.geneontology.org/5b318d0900000583
http://model.geneontology.org/5b318d0900000583,https://w3id.org/biolink/vocab/in_taxon,obo:NCBITaxon_6239
http://model.geneontology.org/5b318d0900000583,rdf:type,owl:Ontology
http://model.geneontology.org/5b318d0900000583,owl:imports,obo:go/extensions/go-lego.owl
http://model.geneontology.org/5b318d0900000583,dc:title,C. elegans PERK-mediated unfolded protein response
http://model.geneontology.org/5b318d0900000583,dc:contributor,http://orcid.org/0000-0002-1706-4196
http://model.geneontology.org/5b318d0900000583,dc:contributor,http://orcid.org/0000-0002-3013-9906
http://model.geneontology.org/5b318d0900000583,dc:date,2019-11-26

here is it's corresponding inferred graph:

http://model.geneontology.org/5b318d0900000583_inferred,http://model.geneontology.org/graphType,http://model.geneontology.org/noctuaCam
http://model.geneontology.org/5b318d0900000583_inferred,prov:wasDerivedFrom,http://model.geneontology.org/5b318d0900000583

todo: compare with a reactome-derived graph @goodb

Do we have a more explicit way to tell if a graph is inferred other than checking if a derivedFrom triple is there? Is this a guarantee, e.g. might we have derivedFrom on the main models in future (e.g. derived from a template?)

goodb commented 3 years ago

@cmungall we do have the start of this in the schema now. e.g. it specifies that models should have exactly one title

<GoCamModel> {
  a [owl:Ontology] + ;
  contributor: xsd:string +; #TODO would be better as an IRI
  date: xsd:string {1}; #TODO can we make this an xsd:date?
  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
  in_taxon: . *;
  title: xsd:string {1};
  imports: . *;
  oboinowlid: . *; #TODO not sure if we really want this?
  owl:versionIRI . *;
}
cmungall commented 3 years ago

ah cool, was looking at an older version

so if we run this over the public triplestore all the inferred models will be marked invalid (same if we adopt a caching reasoner strategy for the curation store)

it's also confusing if we use shex as documentation for end-user developers

any ideas how to handle this? Two separate GoCamModel classes?

On Mon, Nov 16, 2020 at 4:00 PM goodb notifications@github.com wrote:

@cmungall https://github.com/cmungall we do have the start of this in the schema now. e.g. it specifies that models should have exactly one title

{ a [owl:Ontology] + ; contributor: xsd:string +; #TODO would be better as an IRI date: xsd:string {1}; #TODO can we make this an xsd:date? 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 in_taxon: . *; title: xsd:string {1}; imports: . *; oboinowlid: . *; #TODO not sure if we really want this? owl:versionIRI . *; } — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub , or unsubscribe .
cmungall commented 3 years ago

current count of model properties (on public store):

N property
52 rdfs:label
66 lego:json-model
130 owl:versionIRI
301 http://www.geneontology.org/formats/oboInOwl#id
2237 rdfs:comment
2932 https://w3id.org/biolink/vocab/in_taxon
2960 lego:modelstate
2960 dc:date
2961 dc:title
2970 http://purl.org/pav/providedBy
2979 owl:imports
3013 http://model.geneontology.org/graphType
3013 rdf:type
5541 dc:contributor