Validation of Non-TMS XML Files
CROs using a system other than TMS for dictionary coding should validate their XML files before sending them to the sponsor. Sponsors working with CROs operating without TMS should provide them with the following information about how to do this:
Example B-3 Sponsor Schema Validation Text
<?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:annotation> <xsd:documentation xml:lang="en"> TMS schema to validate DSI XML Files. Source data Import (Sponsor Extract) Copyright (c) 2004 Oracle Corporation. All rights reserved. </xsd:documentation> </xsd:annotation> <xsd:element name="ACTION_OWNER" type="xsd:string"/> <xsd:element name="ACTION_TEXT" type="xsd:string"/> <xsd:element name="APPROVED_FLAG" type="xsd:string"/> <xsd:element name="CREATED_BY" type="xsd:string"/> <xsd:element name="DEF_DETAIL_VALUE" type="xsd:string"/> <xsd:element name="DICTIONARY_SHORT_NAME" type="xsd:string"/> <xsd:element name="DICTIONARY_TERM" type="xsd:string"/> <xsd:element name="ERROR_ROW" type="xsd:string"/> <xsd:element name="DOMAIN_NAME" type="xsd:string"/> <xsd:element name="LABEL_TEXT_UPPER" type="xsd:string"/> <xsd:element name="EXT_VALUE_1" type="xsd:string"/> <xsd:element name="EXT_VALUE_2" type="xsd:string"/> <xsd:element name="EXT_VALUE_3" type="xsd:string"/> <xsd:element name="EXT_VALUE_4" type="xsd:string"/> <xsd:element name="EXT_VALUE_5" type="xsd:string"/> <xsd:element name="EXT_VALUE_6" type="xsd:string"/> <xsd:element name="EXT_VALUE_7" type="xsd:string"/> <xsd:element name="EXT_VALUE_8" type="xsd:string"/> <xsd:element name="GMT_DIFF" type="xsd:string"/> <xsd:element name="INSTANCE_NAME" type="xsd:string"/> <xsd:element name="INTEGRATION_KEY" type="xsd:string"/> <xsd:element name="OCCURRENCE_ID" type="xsd:integer"/> <xsd:element name="OMISSION_STATUS" type="xsd:string"/> <xsd:element name="SOURCE_TERM_ALT_KEY" type="xsd:string"/> <xsd:element name="SOURCE_TERM_ID" type="xsd:integer"/> <xsd:element name="STATUS" type="xsd:string"/> <xsd:element name="VERBATIM_TERM" type="xsd:string"/> <xsd:element name="VT_SUBTYPE" type="xsd:string"/> <xsd:element name="VTA_CREATED_BY" type="xsd:string"/> <xsd:element name="VTI_CREATED_BY" type="xsd:string"/> <xsd:element name="DICT_CONTENT_CODE" type="xsd:string"/> <xsd:element name="VTA_GLOBAL_FLAG" type="xsd:string"/> <xsd:element name="X_AREA" type="xsd:integer"/> <xsd:element name="X_AREA_NAME" type="xsd:string"/> <xsd:element name="WARNING_ROW" type="xsd:string"/> <xsd:attribute name="LOCAL_FLAG" type="xsd:string"/> <xsd:element name="TMSDSI"> <xsd:complexType> <xsd:sequence> <xsd:element name="META_DATA" type="MetaDataType"/> <xsd:element name="ACCOUNTS" type="AccountRowType" minOccurs="0"/> <xsd:element name="VTA_DEL" type="VtaDelType" minOccurs="0"/> <xsd:element name="VTI_DEL" type="VtiDelType" minOccurs="0"/> <xsd:element name="VTA" type="VtaType" minOccurs="0"/> <xsd:element name="VTI" type="VtiType" minOccurs="0"/> <xsd:element name="VT" type="VtType" minOccurs="0"/> <xsd:element name="SOURCE_DATA" type="SourceDataType" minOccurs="0"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="MetaDataType"> <xsd:sequence> <xsd:element name="INTEGRATION_KEY"/> <xsd:element name="INSTANCE_NAME"/> <xsd:element name="X_AREA"/> <xsd:element name="X_AREA_NAME"/> <xsd:element name="GMT_DIFF"/> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SourceDataRowType"> <xsd:sequence maxOccurs="1" minOccurs="0"> <xsd:element name="SOURCE_TERM_ID"/> <xsd:element name="OCCURRENCE_ID"/> <xsd:element name="OMISSION_STATUS" minOccurs="0"/> <xsd:element name="ACTION_TEXT" minOccurs="0"/> <xsd:element name="ACTION_OWNER" minOccurs="0"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SourceDataType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="SOURCE_DATA_ROW" type="SourceDataRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtaDelRowType"> <xsd:sequence maxOccurs="1" minOccurs="0"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="VTA_GLOBAL_FLAG"/> <xsd:element name="VTA_MODIFIED_BY"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtiDelRowType"> <xsd:sequence maxOccurs="1" minOccurs="0"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="SOURCE_TERM_ID"/> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtaDelType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VTA_DEL_ROW" type="VtaDelRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtiDelType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VTI_DEL_ROW" type="VtiDelRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtaRowType"> <xsd:sequence minOccurs="0"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="VT_SUBTYPE" minOccurs="0"/> <xsd:element name="DICTIONARY_TERM" minOccurs="0"/> <xsd:element name="APPROVED_FLAG" minOccurs="0"/> <xsd:element name="VTA_GLOBAL_FLAG" minOccurs="0"/> <xsd:element name="VTA_CREATED_BY" minOccurs="0"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtiRowType"> <xsd:sequence minOccurs="0"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="SOURCE_TERM_ID"/> <xsd:element name="OCCURRENCE_ID"/> <xsd:element name="VT_SUBTYPE" minOccurs="0"/> <xsd:element name="DICTIONARY_TERM" minOccurs="0"/> <xsd:element name="DICT_CONTENT_CODE" minOccurs="0"/> <xsd:element name="VTI_CREATED_BY" minOccurs="0"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtaType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VTA_ROW" type="VtaRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtiType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VTI_ROW" type="VtiRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtNoteRowType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="LABEL_TEXT_UPPER"/> <xsd:element name="OCCURRENCE_ID"/> <xsd:element name="DEF_DETAIL_VALUE" minOccurs="0"/> <xsd:element name="CREATED_BY"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtNoteType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VT_NOTE_ROW" type="VtNoteRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtRowType"> <xsd:sequence maxOccurs="1" minOccurs="1"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="VT_NOTE" type="VtNoteType"/> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VT_ROW" type="VtRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="ErrorRowType"> <xsd:sequence minOccurs="0"> <xsd:element name="ERROR_ROW"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="WarningRowType"> <xsd:sequence minOccurs="0"> <xsd:element name="WARNING_ROW"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="AccountRowType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="OPA_ACCOUNT"> <xsd:complexType mixed="true"> <xsd:attribute name="FIRST_NAME" use="required"/> <xsd:attribute name="LAST_NAME" use="required"/> <xsd:attribute name="ENTRY_TS" use="required"/> <xsd:attribute name="END_TS" use="required"/> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:schema>
Example B-4 Source Schema Validation Text
<?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:annotation> <xsd:documentation xml:lang="en"> TMS schema to validate DSI XML Files. Source data Export (Sponsor Import) Copyright (c) 2004 Oracle Corporation. All rights reserved. </xsd:documentation> </xsd:annotation> <xsd:element name="ACTION_OWNER" type="xsd:string"/> <xsd:element name="ACTION_TEXT" type="xsd:string"/> <xsd:element name="APPROVED_FLAG" type="xsd:string"/> <xsd:element name="CREATED_BY" type="xsd:string"/> <xsd:element name="DEF_DETAIL_VALUE" type="xsd:string"/> <xsd:element name="DICTIONARY_SHORT_NAME" type="xsd:string"/> <xsd:element name="DICTIONARY_TERM" type="xsd:string"/> <xsd:element name="ERROR_ROW" type="xsd:string"/> <xsd:element name="DOMAIN_NAME" type="xsd:string"/> <xsd:element name="LABEL_TEXT_UPPER" type="xsd:string"/> <xsd:element name="EXT_VALUE_1" type="xsd:string"/> <xsd:element name="EXT_VALUE_2" type="xsd:string"/> <xsd:element name="EXT_VALUE_3" type="xsd:string"/> <xsd:element name="EXT_VALUE_4" type="xsd:string"/> <xsd:element name="EXT_VALUE_5" type="xsd:string"/> <xsd:element name="EXT_VALUE_6" type="xsd:string"/> <xsd:element name="EXT_VALUE_7" type="xsd:string"/> <xsd:element name="EXT_VALUE_8" type="xsd:string"/> <xsd:element name="GMT_DIFF" type="xsd:string"/> <xsd:element name="INSTANCE_NAME" type="xsd:string"/> <xsd:element name="INTEGRATION_KEY" type="xsd:string"/> <xsd:element name="OCCURRENCE_ID" type="xsd:integer"/> <xsd:element name="OMISSION_STATUS" type="xsd:string"/> <xsd:element name="SOURCE_TERM_ALT_KEY" type="xsd:string"/> <xsd:element name="SOURCE_TERM_ID" type="xsd:integer"/> <xsd:element name="STATUS" type="xsd:string"/> <xsd:element name="VERBATIM_TERM" type="xsd:string"/> <xsd:element name="VT_SUBTYPE" type="xsd:string"/> <xsd:element name="VT_TYPE" type="xsd:string"/> <xsd:element name="DICT_CONTENT_CODE" type="xsd:string"/> <xsd:element name="VTA_CREATED_BY" type="xsd:string"/> <xsd:element name="VTI_CREATED_BY" type="xsd:string"/> <xsd:element name="VTA_GLOBAL_FLAG" type="xsd:string"/> <xsd:element name="X_AREA" type="xsd:integer"/> <xsd:element name="X_AREA_NAME" type="xsd:string"/> <xsd:element name="WARNING_ROW" type="xsd:string"/> <xsd:attribute name="LOCAL_FLAG" type="xsd:string"/> <xsd:element name="TMSDSI"> <xsd:complexType> <xsd:sequence> <xsd:element name="META_DATA" type="MetaDataType"/> <xsd:element name="ACCOUNTS" type="AccountRowType" minOccurs="0"/> <xsd:element name="VT" type="VtType" minOccurs="0"/> <xsd:element name="SOURCE_DATA_DEL" type="SourceDataDelType" minOccurs="0"/> <xsd:element name="SOURCE_DATA" type="SourceDataType" minOccurs="0"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="MetaDataType"> <xsd:sequence> <xsd:element name="INTEGRATION_KEY"/> <xsd:element name="INSTANCE_NAME"/> <xsd:element name="X_AREA"/> <xsd:element name="X_AREA_NAME"/> <xsd:element name="GMT_DIFF"/> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SourceDataRowType"> <xsd:sequence maxOccurs="1" minOccurs="1"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="DICTIONARY_TERM" minOccurs="0"/> <xsd:element name="DICT_CONTENT_CODE" minOccurs="0"/> <xsd:element name="VTA_GLOBAL_FLAG" minOccurs="0"/> <xsd:element name="VTA_CREATED_BY" minOccurs="0"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="VT_SUBTYPE" minOccurs="0"/> <xsd:element name="VT_TYPE" minOccurs="0"/> <xsd:element name="SOURCE_TERM_ID"/> <xsd:element name="OCCURRENCE_ID"/> <xsd:element name="SOURCE_TERM_ALT_KEY" minOccurs="0"/> <xsd:element name="EXT_VALUE_1" minOccurs="0"/> <xsd:element name="EXT_VALUE_2" minOccurs="0"/> <xsd:element name="EXT_VALUE_3" minOccurs="0"/> <xsd:element name="EXT_VALUE_4" minOccurs="0"/> <xsd:element name="EXT_VALUE_5" minOccurs="0"/> <xsd:element name="EXT_VALUE_6" minOccurs="0"/> <xsd:element name="EXT_VALUE_7" minOccurs="0"/> <xsd:element name="EXT_VALUE_8" minOccurs="0"/> <xsd:element name="APPROVED_FLAG" minOccurs="0"/> <xsd:element name="OMISSION_STATUS" minOccurs="0"/> <xsd:element name="ACTION_TEXT" minOccurs="0"/> <xsd:element name="ACTION_OWNER" minOccurs="0"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SourceDataType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="SOURCE_DATA_ROW" type="SourceDataRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SourceDataDelRowType"> <xsd:sequence maxOccurs="1" minOccurs="1"> <xsd:element name="SOURCE_TERM_ID"/> <xsd:element name="OCCURRENCE_ID"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SourceDataDelType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="SOURCE_DATA_DEL_ROW" type="SourceDataDelRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtNoteRowType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="LABEL_TEXT_UPPER"/> <xsd:element name="OCCURRENCE_ID"/> <xsd:element name="DEF_DETAIL_VALUE" minOccurs="0"/> <xsd:element name="CREATED_BY"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute ref="LOCAL_FLAG"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtNoteType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VT_NOTE_ROW" type="VtNoteRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtRowType"> <xsd:sequence maxOccurs="1" minOccurs="1"> <xsd:element name="DICTIONARY_SHORT_NAME"/> <xsd:element name="DOMAIN_NAME"/> <xsd:element name="VERBATIM_TERM"/> <xsd:element name="VT_NOTE" type="VtNoteType"/> <xsd:element name="ERROR" maxOccurs="unbounded" minOccurs="0" type="ErrorRowType"/> <xsd:element name="WARNING" maxOccurs="unbounded" minOccurs="0" type="WarningRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="VtType"> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="VT_ROW" type="VtRowType"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="ErrorRowType"> <xsd:sequence minOccurs="0" maxOccurs="unbounded" > <xsd:element name="ERROR_ROW"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="WarningRowType"> <xsd:sequence minOccurs="0" maxOccurs="unbounded" > <xsd:element name="WARNING_ROW"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="AccountRowType"> <xsd:sequence minOccurs="0" maxOccurs="unbounded"> <xsd:element name="OPA_ACCOUNT"> <xsd:complexType mixed="true"> <xsd:attribute name="FIRST_NAME" use="required"/> <xsd:attribute name="LAST_NAME" use="required"/> <xsd:attribute name="ENTRY_TS" use="required"/> <xsd:attribute name="END_TS" use="required"/> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:schema>
Parent topic: Disconnected System Integration XML Files