loinc / comp-loinc

Computational LOINC in OWL.
MIT License
13 stars 4 forks source link

Bug: Repeated declarations #113

Open joeflack4 opened 1 week ago

joeflack4 commented 1 week ago

Overview

I haven't looked deeply into this yet, but I noticed that the same declarations are being made multiple times. In the example below, I found multiple snippets, each repeated 11 times.

Example case 1

This was created by running comploinc --fast-run build on branch:

The repeated snippet

Some repeating snippets I found: Snippet 1: ```owl Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) ``` Snippet 2: ```owl Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) ```

The file itself

`snomed-parts.owl`: ```owl Prefix( brick: = ) Prefix( csvw: = ) Prefix( dc: = ) Prefix( dcat: = ) Prefix( dcmitype: = ) Prefix( dcterms: = ) Prefix( dcam: = ) Prefix( doap: = ) Prefix( foaf: = ) Prefix( geo: = ) Prefix( odrl: = ) Prefix( org: = ) Prefix( prof: = ) Prefix( prov: = ) Prefix( qb: = ) Prefix( schema: = ) Prefix( sh: = ) Prefix( skos: = ) Prefix( sosa: = ) Prefix( ssn: = ) Prefix( time: = ) Prefix( vann: = ) Prefix( void: = ) Prefix( wgs: = ) Prefix( owl: = ) Prefix( rdf: = ) Prefix( rdfs: = ) Prefix( xsd: = ) Prefix( xml: = ) Prefix( linkml: = ) Prefix( loinc: = ) Prefix( loinc_property: = ) Prefix( sct: = ) Ontology( Declaration( Class( loinc:309606002 ) ) AnnotationAssertion( rdfs:label loinc:309606002 "SCT Before menopause (qualifier value)" ) Declaration( Class( loinc:309605003 ) ) AnnotationAssertion( rdfs:label loinc:309605003 "SCT Temporal periods relating to menopause (qualifier value)" ) Declaration( Class( loinc:307158003 ) ) AnnotationAssertion( rdfs:label loinc:307158003 "SCT Temporal periods relating to physiological functions (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) SubClassOf( loinc:307158003 loinc:307142001 ) Declaration( Class( loinc:282032007 ) ) AnnotationAssertion( rdfs:label loinc:282032007 "SCT Periods of life (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) SubClassOf( loinc:282032007 loinc:307142001 ) SubClassOf( loinc:282032007 loinc:703763000 ) SubClassOf( loinc:309605003 loinc:307158003 ) SubClassOf( loinc:309605003 loinc:282032007 ) SubClassOf( loinc:309606002 loinc:309605003 ) AnnotationAssertion( loinc:309606002 "Before menopause (qualifier value)" ) Declaration( Class( loinc:307429007 ) ) AnnotationAssertion( rdfs:label loinc:307429007 "SCT After menopause (qualifier value)" ) Declaration( Class( loinc:309605003 ) ) AnnotationAssertion( rdfs:label loinc:309605003 "SCT Temporal periods relating to menopause (qualifier value)" ) Declaration( Class( loinc:307158003 ) ) AnnotationAssertion( rdfs:label loinc:307158003 "SCT Temporal periods relating to physiological functions (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) SubClassOf( loinc:307158003 loinc:307142001 ) Declaration( Class( loinc:282032007 ) ) AnnotationAssertion( rdfs:label loinc:282032007 "SCT Periods of life (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) SubClassOf( loinc:282032007 loinc:307142001 ) SubClassOf( loinc:282032007 loinc:703763000 ) SubClassOf( loinc:309605003 loinc:307158003 ) SubClassOf( loinc:309605003 loinc:282032007 ) SubClassOf( loinc:307429007 loinc:309605003 ) AnnotationAssertion( loinc:307429007 "After menopause (qualifier value)" ) Declaration( Class( loinc:739030006 ) ) AnnotationAssertion( rdfs:label loinc:739030006 "SCT a.m. peak specimen (qualifier value)" ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) SubClassOf( loinc:739030006 loinc:703763000 ) AnnotationAssertion( loinc:739030006 "a.m. peak specimen (qualifier value)" ) Declaration( Class( loinc:707761002 ) ) AnnotationAssertion( rdfs:label loinc:707761002 "SCT Before contrast medium (qualifier value)" ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) SubClassOf( loinc:707761002 loinc:703763000 ) AnnotationAssertion( loinc:707761002 "Before contrast medium (qualifier value)" ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) Declaration( Class( loinc:309605003 ) ) AnnotationAssertion( rdfs:label loinc:309605003 "SCT Temporal periods relating to menopause (qualifier value)" ) Declaration( Class( loinc:307158003 ) ) AnnotationAssertion( rdfs:label loinc:307158003 "SCT Temporal periods relating to physiological functions (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) SubClassOf( loinc:307158003 loinc:307142001 ) Declaration( Class( loinc:282032007 ) ) AnnotationAssertion( rdfs:label loinc:282032007 "SCT Periods of life (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) SubClassOf( loinc:282032007 loinc:307142001 ) SubClassOf( loinc:282032007 loinc:703763000 ) SubClassOf( loinc:309605003 loinc:307158003 ) SubClassOf( loinc:309605003 loinc:282032007 ) Declaration( Class( loinc:307158003 ) ) AnnotationAssertion( rdfs:label loinc:307158003 "SCT Temporal periods relating to physiological functions (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) SubClassOf( loinc:307158003 loinc:307142001 ) Declaration( Class( loinc:282032007 ) ) AnnotationAssertion( rdfs:label loinc:282032007 "SCT Periods of life (qualifier value)" ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) Declaration( Class( loinc:703763000 ) ) AnnotationAssertion( rdfs:label loinc:703763000 "SCT Precondition value (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:703763000 loinc:362981000 ) SubClassOf( loinc:282032007 loinc:307142001 ) SubClassOf( loinc:282032007 loinc:703763000 ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) Declaration( Class( loinc:307142001 ) ) AnnotationAssertion( rdfs:label loinc:307142001 "SCT Temporal periods (qualifier value)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) SubClassOf( loinc:307142001 loinc:303102005 ) SubClassOf( loinc:307142001 loinc:272103003 ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) Declaration( Class( loinc:303102005 ) ) AnnotationAssertion( rdfs:label loinc:303102005 "SCT Special disorder atoms (qualifier value)" ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) SubClassOf( loinc:303102005 loinc:281586009 ) Declaration( Class( loinc:272103003 ) ) AnnotationAssertion( rdfs:label loinc:272103003 "SCT Time patterns (qualifier value)" ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) SubClassOf( loinc:272103003 loinc:272099008 ) Declaration( Class( loinc:281586009 ) ) AnnotationAssertion( rdfs:label loinc:281586009 "SCT Special atomic mapping values (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:281586009 loinc:362981000 ) Declaration( Class( loinc:272099008 ) ) AnnotationAssertion( rdfs:label loinc:272099008 "SCT Descriptor (qualifier value)" ) Declaration( Class( loinc:362981000 ) ) AnnotationAssertion( rdfs:label loinc:362981000 "SCT Qualifier value (qualifier value)" ) Declaration( Class( loinc:138875005 ) ) AnnotationAssertion( rdfs:label loinc:138875005 "SCT SNOMED CT Concept (SNOMED RT+CTV3)" ) SubClassOf( loinc:362981000 loinc:138875005 ) SubClassOf( loinc:272099008 loinc:362981000 ) ) ```

Possible solutions

a. Solve in the Python code where the problem occurs. Don't add duplicate assertions. b. At end of Python code, before writing, do some kind of deduping logic. c. After save-owl, running through robot in some way, perhaps just converting to the same format, might perform some deduping.