Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Timeline


Proposal ready:

  

XSD public

available

review

17

  


Communication period
Implementation / testing

Q4, 2020

Release Date

Q4,2020 or Q1,2021

Staging: Jan, 14th, 2021

Prod: Feb, 15th, 2021

Planned Retire Date

31st, Oct, 2024 

Status

Progress Bar | Vectors (Formerly: SP Progress bar)
current-step

3

6
stepsPreparation, Draft, Discussion, Public review , Implementation, Release

Info

The WMDA data-upload production is now with XSD 2.2 3 supported from  

WMDA data-upload will still support XSD 2.1 till 2020.Q4.

Organsations have one year to arrange the update of using XSD 2.2.

Table of Contents

Download XSD version 2.3 :

...

 

Till Nov, 2020, as there are only 40% of organization moved to XSD 2.2, WMDA data-upload decide to keep support XSD 2.1 till 31st, Oct, 2021.

Organizations can upgrade to XSD 2.2 which will now be supported till 31st, Oct, 2023, or update to XSD 2.3 directly with changes from both XSD 2.2 and XSD 2.3.

Table of Contents

Download XSD version 2.3 :

Info

Please notice that  XSD 2.2 must be implemented as well if upgrade to XSD 2.3 directly from XSD 2.1

...

The files below are officially approved by the Datadictionary Technical XML group (XSD group).

...

Panel
bgColorlightyellow
titleInventories.xsd
Code Block
languagexml
themeRDark
titleVersion 2.12
linenumberstrue
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.2">
  • Update version number to 2.23

Code Block
languagexml
themeRDark
titleVersion 2.23
linenumberstrue
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.3">

...

Panel
bgColorlightyellow
titleInventories.xsd
Code Block
languagexml
themeRDark
titleversion 2.2
linenumberstrue
	<xs:complexType name="itemBaseType" abstract="true">
		<xs:annotation>
			<xs:documentation xml:lang="en">Abstract base type of donor and CBU items</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="ID" minOccurs="0">
				...
			</xs:element>
			<xs:element name="GRID" minOccurs="0">
				...
			</xs:element>
			<xs:element name="ATTR" minOccurs="0">
				...

Because GRID is compulsory for DONOR, and ID is optional for DONOR, but compulsory for CBU, the xsd schema 1.0 we use can not handle with conditions structure, so we need move GRID and ID,

  • Move ID to the sequence to the type "donItemType", keep ID as "optional"
  • Move ID to the sequence to the type "cbuItemType", and changed ID to '"required".
    GRID is already required/compulsory in the validation control in WMDA data upload from XSD 2.2, but not using XSD schema control, we added the "required" control in the XSD schema file in 2.3
  • '.Move GRID to the sequence to the type "donItemType", and changed GRID to 'required'.


Code Block
languagexml
themeRDark
firstline86
titleVersion 2.3
linenumberstrue
<xs:complexType name="donItemType">
		<xs:annotation>
			<xs:documentation xml:lang="en">A donor is an adult person who has consented to donate haematopoietic progenitor cells to an unrelated patient.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="itemBaseType">
				<xs:sequence>
					<xs:element name="STAT_REASONID" type="statReasonDonType" minOccurs="0">
						<xs:annotation>...
					</xs:element>
					<xs:documentationelement xml:langname="enGRID">Additional information relevant to the donor status</xs:documentation> minOccurs="1">
						</xs:annotation>...
					</xs:element>
					<xs:element name="IDSTAT_REASON" type="statReasonDonType" minOccurs="0">
						...
					</xs:element>
<xs:annotation>
							<xs:elementdocumentation namexml:lang="GRIDen" minOccurs="1">>Additional information relevant to the donor status</xs:documentation>
						...</xs:annotation>
					</xs:element>

Code Block
languagexml
themeRDark
firstline199
titleVersion 2.3
linenumberstrue
	<xs:complexType name="cbuItemType">
		<xs:annotation>
			<xs:documentation xml:lang="en">A cord blood unit (CBU) is a banked, frozen blood product extracted from a newborn baby's umbilical cord.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="itemBaseType">
				<xs:sequence>
					<xs:element name="STAT_REASON" type="statReasonCbuTypeID" minOccurs="01">
						...
					</xs:element>
					<xs:element name="STAT_REASON" type="IDstatReasonCbuType" minOccurs="10">
						...
					</xs:element>


XML Example  version 2.3:

Code Block
languagexml
titleXML Example version 2.3
<DONOR>
	<BIRTH_DATE>...</BIRTH_DATE>
	...
	<HLA>...</HLA>	
	<IDM>...</IDM>
	<STATUS>RS</STATUS>
    <STAT_END_DATE>2022-10-20</STAT_END_DATE>
    <ID>WMDA001</ID>
    <GRID>1234000000WMDA00121</GRID>
    <STAT_REASON>TX</STAT_REASON>
	...

...

Panel
bgColorlightyellow
titlebasicTypes.xsd
Code Block
languagexml
themeRDark
firstline1059
titleVersion 2.2
linenumberstrue
<xs:sequence>
			<xs:element name="A" type="hlaLocusType" minOccurs="0"/>
			<xs:element name="B" type="hlaLocusType" minOccurs="0"/>
			<xs:element name="C" type="hlaLocusType" minOccurs="0"/>
            <xs:element name="DRB1" type="hlaLocusType" minOccurs="0"/>


  • Add HLA-E after HLA-C, HLA-E only has DNA fields
  • For the type change of "A", "B", "C" and "DRB1", please check below the "XSD schema type naming optimization" for more details for the type changes in the code below.


Code Block
Code Block
languagexml
themeRDark
firstline1097
titleVersion 2.23
linenumberstrue
<xs:sequence>
			<xs:element name="A" type="hlaLocusTypehlaLocusSerDnaType" minOccurs="0"/>
			<xs:element name="B" type="hlaLocusTypehlaLocusSerDnaType" minOccurs="0"/>
			<xs:element name="C" type="hlaLocusTypehlaLocusSerDnaType" minOccurs="0"/>
			<xs:element name="E" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DRB1" type="hlaLocusTypehlaLocusSerDnaType" minOccurs="0"/>


XML Examples Example to add the HLA-E:

Code Block
languagexml
<HLA>
	<A>...</A>
	<B>...</B>	
	<E>
		<DNA>
			<FIELD1>01:01:01:01</FIELD1>
			<FIELD2>01:01:01:02</FIELD2>
		</DNA>
	</E>
</HLA>



...

Panel
bgColorlightyellow
titlebasicTypes.xsd
Code Block
languagexml
themeRDark
firstline1063
titleVersion 2.2
linenumberstrue
			<xs:element name="DRB1" type="hlaLocusType" minOccurs="0"/>
			<xs:element name="DRB3" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DRB4" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DRB5" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DQA1" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DQB1" type="hlaLocusType" minOccurs="0"/>
			<xs:element name="DPA1" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DPB1" type="hlaLocusDnaOnlyType" minOccurs="0"/>
		</xs:sequence>


  • Add fields MICA and MICB (affect XML)as part of HLA
    - Added a new type "hlaLocusGlsOnlyType" for MICA and MICB

       Because of the request to add MICA and MICB, we see issue issues with naming of the existing schema type for HLA types, so some improvements are made.

  • Change the type of "hlaLocusType" to "hlaLocusSerDnaType" (XSD structure optimization)
  • Additionally 3 new schema types are added:
    - simpleType "hlaGlsFieldType"
    - complexType "hlaLocusGlsOnlyType"
    - complexType "hlaLocusSerDnaType"

     Check below the "XSD schema type naming optimization" for more details for the type changes in the code below.


Code Block
language
Code Block
languagexml
themeRDark
firstline1102
titleVersion 2.3
linenumberstrue
			<xs:element name="DRB1" type="hlaLocusSerDnaType" minOccurs="0"/>
			<xs:element name="DRB3" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DRB4" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DRB5" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DQA1" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DQB1" type="hlaLocusSerDnaType" minOccurs="0"/>
			<xs:element name="DPA1" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="DPB1" type="hlaLocusDnaOnlyType" minOccurs="0"/>
			<xs:element name="MICA" type="hlaLocusGlsOnlyType" minOccurs="0"/>
			<xs:element name="MICB" type="hlaLocusGlsOnlyType" minOccurs="0"/>
		</xs:sequence>


XML example to use MICA:

Code Block
languagexml
themeRDark
firstline1033
titleVersion 2.3
linenumberstrue
	<xs:simpleType name="hlaGlsFieldType">
		<xs:annotation>
			<xs:documentation xml:lang="en">HLA typing result provided as GL String</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:maxLength value="255"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="hlaLocusBaseType">
<HLA>
	<A>...</A>
	<B>...</B>	
	<DPB1>...</DPB1>
	<MICA>
		<GLS>008:01:01/008:01:02/008:03/008:04+018:01/018:02</GLS>
	</MICA>
</HLA>

XSD schema type naming optimization

Panel
bgColorlightyellow
titlebasicTypes.xsd
Panel
bgColorlightyellow
titlebasicTypes.xsd
Code Block
languagexml
themeRDark
firstline1053
Code Block
languagexml
themeRDark
firstline1051
titleVersion 2.32
linenumberstrue
	   <xs:complexType name="hlaLocusSerDnaTypehlaLocusType">
		<xs:annotation>
			<xs:documentation xml:lang="en">HLA locus type comprising SER and DNA fields</xs:documentation>
		</xs:annotation>
					<xs:complexContent>
			<xs:restriction base="hlaLocusBaseType">
   					<xs:sequence>
		  			<xs:element name="SER" type="hlaSerFieldsType" minOccurs="0" maxOccurs="1"/>
			   				 										 				 																									  
		<xs:sequence>
			<xs:element name="DNASER" type="hlaDnaFieldsTypehlaSerFieldsType" minOccurs="0" maxOccurs="1"/>
					<xs<xs:element name="GLSDNA" type="hlaGlsFieldTypehlaDnaFieldsType" minOccurs="0" maxOccurs="01"/>
																</xs:sequence>
			</xs:restriction>  
		</xs:complexContent>sequence>
	</xs:complexType>
Code Block


Because of the request to add MICA and MICB, we see issue with naming of the schema type for HLA fields, so some additional improvements are made as below:

  • General "hlaLocusType" is improved to "hlaLocusBaseType"
  • Add GLS field with type "hlaGlsFieldType" in the "hlaLocusBaseType"


Code Block
languagexml
themeRDark
firstline1061
languagexml
themeRDark
firstline1099
titleVersion 2.3
linenumberstrue
	    <xs:complexType name="hlaLocusGlsOnlyTypehlaLocusBaseType">
		<xs:annotation>
			<xs:documentation xml:lang="en">HLA locus base type comprising a GL String only<SER, DNA and GLS fields</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:restriction base="hlaLocusBaseType">
				<xs:sequence>
					<xs:element name="SER" type="hlaSerFieldsType" minOccurs="0" maxOccurs="01"/>
					<xs:element name="DNA" type="hlaDnaFieldsType" minOccurs="0" maxOccurs="01"/>
					<xs:element name="GLS" type="hlaGlsFieldType" minOccurs="0" maxOccurs="1"/>
				</xs:sequence>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>

Additional improvement to XSD structures:

complexType>


  • Additionally 3 new schema types are added:
    - simpleType "hlaGlsFieldType"
    - complexType "hlaLocusGlsOnlyType"
    - complexType "hlaLocusSerDnaType"
  • Change the type of "hlaLocusType" for locus to "hlaLocusSerDnaType" (XSD structure optimization, no effect to XML structure)
  • "hlaLocusType" is improved to "hlaLocusBaseType"
  •  Add GLS field with type "hlaGlsFieldType"


Code Block
languagexml
themeRDark
firstline10531033
titleVersion 2.23
linenumberstrue
   	<xs:complexTypesimpleType name="hlaLocusTypehlaGlsFieldType">
		<xs:annotation>
			<xs:documentation xml:lang="en">HLA locustyping typeresult comprisingprovided SERas andGL DNA fields<String</xs:documentation>
		</xs:annotation>
								   							  				   				 										 				 																									  
		<xs:sequence>
			<xs:element name="SER" type="hlaSerFieldsType" minOccurs="0" maxOccurs="1"/>
			<xs:element name="DNA" type="hlaDnaFieldsType" minOccurs="0" maxOccurs="1"/>																			  
		</xs:sequence>
	</xs:complexType>

Code Block
languagexml
themeRDark
firstline1061
titleVersion 2.3
linenumberstrue
    <xs:complexType name="hlaLocusBaseType">
		<xs:annotation>
			<xs:documentation xml:lang="en">HLA locus base type comprising SER, DNA and GLS fields</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="SER" type="hlaSerFieldsType" minOccurs="0" maxOccurs="1"/>
			<xs:element name="DNA" type="hlaDnaFieldsType" minOccurs="0" maxOccurs="1"/>
			<xs:element name="GLS" type="hlaGlsFieldType" minOccurs="0" maxOccurs="1"/>
		</xs:sequence>
	</xs:complexType>

XSD schema type nameing optimization

<xs:restriction base="xs:string">
			<xs:maxLength value="255"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="hlaLocusBaseType">
Code Block
languagexml
themeRDark
firstline10531099
titleVersion 2.23
linenumberstrue
   	<xs:complexType name="hlaLocusTypehlaLocusGlsOnlyType">
		<xs:annotation>
			<xs:documentation xml:lang="en">HLA locus type comprising SER and DNA fields</xs:documentation>
		</xs:annotation>								   							  				   				 										 				 																									  
"en">HLA locus type comprising a GL String only</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:restriction base="hlaLocusBaseType">
				<xs:sequence>
					<xs:element name="SER" type="hlaSerFieldsType" minOccurs="0" maxOccurs="10"/>
					<xs:element name="DNA" type="hlaDnaFieldsType" minOccurs="0" maxOccurs="10"/>
					<xs:element name="GLS" type="hlaGlsFieldType" minOccurs="0" maxOccurs="1"/>
				</xs:sequence>
										  </xs:restriction>
		</xs:sequence>complexContent>
	</xs:complexType>

Because of the request to add MICA and MICB, we see issue with naming of the schema type for HLA fields, so some additional improvements are made as below:

  • "hlaLocusType" is improved to "hlaLocusBaseType"
  •  Add GLS field with type "hlaGlsFieldType" in the "hlaLocusBaseType"
    Code Block
    languagexml
    themeRDark
    firstline10611051
    titleVersion 2.3
    linenumberstrue
        	<xs:complexType name="hlaLocusBaseTypehlaLocusSerDnaType">
    		<xs:annotation>
    			<xs:documentation xml:lang="en">HLA locus base type comprising SER, DNA and GLSDNA fields</xs:documentation>
    		</xs:annotation>
    		<xs:complexContent>
    			<xs:restriction base="hlaLocusBaseType">
    				<xs:sequence>
    					<xs:element name="SER" type="hlaSerFieldsType" minOccurs="0" maxOccurs="1"/>
    					<xs:element name="DNA" type="hlaDnaFieldsType" minOccurs="0" maxOccurs="1"/>
    					<xs:element name="GLS" type="hlaGlsFieldType" minOccurs="0" maxOccurs="10"/>
    				</xs:sequence>
    			</xs:restriction>
    		</xs:complexContent>
    	</xs:complexType>