Abstract-class attributes carry a subclass's C-code
https://kerfors.github.io/usdm-overlay/id/finding/abstract-class-attribute-ccodes
For attributes declared on abstract classes, dataStructure.yml carries the C-code, preferred term and definition of one concrete subclass, not the abstract class's own entry in USDM_CT.xlsx. usdm-rdf renders the YAML, so its skos:exactMatch on these properties points to the subclass concept. Example: SyntaxTemplate.text carries C207478 Characteristic Text; USDM_CT.xlsx lists C207578 Syntax Template Text for SyntaxTemplate.text.
- standing
- Ready to raise: Two published artefacts, dataStructure.yml and USDM_CT.xlsx, give different C-codes for the same attributes.
- evidence
- Model-stated
- holds
- true
- observation
- 27 of 388 C-coded attributes in dataStructure.yml differ from USDM_CT.xlsx. All differences are on abstract classes (Identifier 1, PopulationDefinition 9, ScheduledInstance 3, StudyDesign 9, SyntaxTemplate 5); 27 C-coded attributes are declared on abstract classes in total. usdm-rdf skos:exactMatch follows the YAML code for all 27.
- about
- Identifier, PopulationDefinition, ScheduledInstance, StudyDesign, SyntaxTemplate
- sources
- https://github.com/cdisc-org/DDF-RA/blob/v4.0.0/Deliverables/CT/USDM_CT.xlsx
https://github.com/cdisc-org/DDF-RA/blob/v4.0.0/Deliverables/UML/dataStructure.yml
https://github.com/kerfors/usdm-rdf/blob/v0.7.1/usdm_v4.ttl
Test
Check function abstract_class_attribute_ccodes in scripts/check_findings.py.