Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GAF inference are incomplete because of incorrect mapping for part_of #238

Open
cmungall opened this issue Feb 3, 2018 · 5 comments
Open
Assignees

Comments

@cmungall
Copy link
Member

cmungall commented Feb 3, 2018

Given this test GAF

!gaf-version: 2.1
PomBase	SPCC1902.01	gaf1		GO:0001078	PMID:22900017	IDA		F	transcription factor Gaf1	SPCC417.01c	protein	taxon:4896	20170728	PomBase	directly_negatively_regulates(PomBase:SPBC32C12.02),part_of(GO:0010515)	

this command

owltools target/go-gaf.owl --gaf test.gaf  --gaf-fold-inferences > results.txt

yields

Prediction=GO:0010515 'negative regulation of induction of conjugation with cellular fusion' // PomBase SPCC1902.01     gaf1            GO:0010515      PMID:22900017   IC      GO:0001078      F       transcription factor Gaf1       SPCC417.01c     protein taxon:4896      20170728        GOC-OWL directly_negatively_regulates(PomBase:SPBC32C12.02),part_of(GO:0010515)         

which is what we expect

However, this is not recapitulated when we run a different command, which should be using the same underlying machinery

owltools target/go-gaf.owl --gaf test.gaf --createReport  --gaf-prediction-file z  --gaf-report-file zz --gaf-run-checks

however, this is only the case for newer editions of the ontology. i.e. --gaf-fold-inferences works on old and new. However, --createReport works on only on old. Very odd...

@cmungall
Copy link
Member Author

cmungall commented Feb 3, 2018

Additional docs on the procedure being used here: https://github.com/owlcollab/owltools/wiki/Annotation-Extension-Folding

@cmungall
Copy link
Member Author

cmungall commented Feb 3, 2018

#238

the two contexts:

predictor = new FoldBasedPredictor(gafDoc, source, false);

FoldBasedPredictor fbp = new FoldBasedPredictor(gafdoc, g, false);

@cmungall
Copy link
Member Author

cmungall commented Feb 3, 2018

I think I've found it - the part_of in the c16 expression is somehow being mapped onto http://purl.obolibrary.org/obo/so#part_of

							String extRelString = ext.getRelation();
							OWLClass extCls = f.getOWLClass(g.getIRIByIdentifier(extClsString));
							OWLObjectProperty extRel = g.getOWLObjectPropertyByIdentifier(extRelString);

1 similar comment
@cmungall
Copy link
Member Author

cmungall commented Feb 3, 2018

I think I've found it - the part_of in the c16 expression is somehow being mapped onto http://purl.obolibrary.org/obo/so#part_of

							String extRelString = ext.getRelation();
							OWLClass extCls = f.getOWLClass(g.getIRIByIdentifier(extClsString));
							OWLObjectProperty extRel = g.getOWLObjectPropertyByIdentifier(extRelString);

@cmungall
Copy link
Member Author

cmungall commented Feb 3, 2018

Also here BasicAnnotationPropagator.getDirectLinkedClasses

@cmungall cmungall changed the title GAF inference are incomplete GAF inference are incomplete because of incorrect mapping for part_of Feb 3, 2018
cmungall added a commit to geneontology/go-ontology that referenced this issue Feb 3, 2018
this is because SO has fake part-ofs that are confusing both to curators
and unfortunately to software (this will be fixed)
see owlcollab/owltools#238

this is a partial fix to geneontology/go-site#524
however, the software needs to be more more robust
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants