#14 Syntax error in SOFA OBO file


SOFA 2_4_3 (and previous versions) contain terms with invalid intersections e.g. SO:0000372. These terms have only a single intersection_of
tag. From the OBO 1.2 spec: "at least two intersection_of tags need to be present or it is a parse error". This appears to be caused by intersection_of tags in SOFA referring to terms that are not in the SOFA subset. One solution would be to transitively include intersected terms in SOFA.

This problem potentially also affects union_of, however, I have not checked this.


  • Karen Eilbeck
    Karen Eilbeck

    The intersection tags are not needed for SOFA. The implied links from the cross product terms appear in the file.

    I have asked the OBO edit developers for clarification on saving SOFA without intersections. transitively including the other terms in the intersection would violate the idea that SOFA only include a subsection of sequence feature terms, and would allow attributes to appear in annotations which would be bad.
    FYI, GFF3 allows the use of the full SO rather than SOFA.
    I will endeavor to find a solution to the saving problem before the next release, but suggest that in the mean time you parse out the intersection tags lines from the file.


  • Karen Eilbeck
    Karen Eilbeck

    • status: open --> closed
  • Karen Eilbeck
    Karen Eilbeck

    I talked to the OBO edit people and this is not handled as a saving option as yet.
    Their best advice in this case is to completely remove the intersection tags from SOFA :

    "But the safest thing is to grep out the intersection_of tags."

    I will start doing this for releases of SOFA.