What problem does it solve? Hand-writing CDISC ODM-family XML or JSON is error-prone: wrong element order, missing namespace declarations, dangling OID references, and silent data loss on serialization. This Skill teaches the correct odmlib patterns so generated study metadata, Define-XML, Dataset-JSON, and ARM documents validate against the standard instead of failing schema checks or regulatory loads. ## Core Features & Use Cases - Model-driven document handling: Load, modify, and create ODM 1.3.2/2.0, Define-XML 2.1, Dataset-JSON 1.1, and ARM 1.0 documents as typed Python objects via the open_odm/open_define facades, explicit loaders, or the ODMBuilder fluent API. - Layered validation: Run element-order, OID integrity, Cerberus conformance, and bundled XSD schema validation with collect_errors=True to enumerate every defect in one pass, plus permissive mode for repairing non-conformant files. - Serialization and conversion guidance: Avoid the ET.tostring(to_xml()) data-loss trap with to_xml_string()/to_element(), and convert between Define-XML and tabular Dataset-JSON via DefineFlattener. - Use Case: A clinical programmer needs to generate a Define-XML 2.1 file for an SDTM submission. The Skill guides building the document with define_2_1 model classes (single Study/MetaDataVersion objects), validating OID references, and schema-checking against the bundled Define-XML 2.1 XSD. ## Quick Start Ask the AI to load your define.xml with odmlib, list its datasets and variables, fix any dangling OID references, and validate the result against the bundled Define-XML 2.1 schema.