The overall scope of BMDW development phase two is to receive more data from our listing organisations and to make these data available through our Search & Match Service. However, the old format (DOT20) is not an appropriate format when you have many different fields/columns. Therefore, we had to move to another file format. The new file format is an XML (Extensible Markup Language) file, which is considered an industry standard that is extendable, robust and easy to use.
Several people from the community formed a working group to create the required XML Schema Definition (XSD) files. These files define the elements that are allowed in the XML file, the order of the elements and the values that will be accepted. The names of the elements are based upon EMDIS specifications and aligns with the EMDIS Data Dictionary when appropriate. Several elements are basic elements that should be included in all files, but there are also elements that are specific for only donors or only cord blood units (CBUs).
We will now explain the composition of the XML file and how you should use the XSD reference files.
2. XSD schema files
We provided two XSD schema files that define the structure of your XML file: basicTypes.xsd and Inventories.xsd.
The Inventories file describes the structure of the XML file and the order of the elements. Here you can also find if a certain field is mandatory or not (minOccurs="0"-> not mandatory). This file includes many "complexTypes" : an XML element that contains other elements and/or attributes. In the file you can see that the values of the elements can be defined here, like the elements GRID and ID, or that after the name of the field a "type" is defined. For example for the element with name BIRTH_DATE you see type="bareDateType". The definition of "bareDateType" is described in the basicTypes.xsd file.
We will now describe the global structure of the XML file and the elements.
Please note: For a lot of elements, we use abbreviations as allowed values. The explanation of all those abbreviations can be found in the XSD files. Most abbreviations are also the same as used for EMDIS and clarified in the EMDIS dictionary.
2.1 InventoryType elements
Field Identifier
Required
Description
Type
Length
Comment
CREATION_TIME
Yes
Creation time stamp of the inventories (in UTC)
dateTime
minimal 20
Without fractional seconds the length is 20, for example: 2016-08-23T13:16:48Z.
Additional notes: CREATION_TIME is defined as "Creation time stamp of the <INVENTORIES>" that means the time in UTC when the complete and valid file was finally created at the registry. This can be the same as SNAPSHOT_TIME.
LISTING_ORGANIZATION
Yes
Organisation that lists the donor/cbu provided as ION
ionType: number between 1000 and 9999
4
Issuing Organisation Number (ION) allocated by ICBBA. This can be different from the POOL when another organisation is sending the data to BMDW.
POOL
Yes
Physical location of the donors/CBUs of the inventory provided as ION
ionType: number between 1000 and 9999
4
Physical location of the donors/CBUs of the inventory provided as ION.
CONTENT_TYPE
Yes
Type of the inventory items, i.e. donor ("D") or CBU ("C")
contentTypeType
1
The content-type is also shown in the fileName. When CONTENT_TYPE is "D", the INVENTORY must contain <DONOR>-blocks. When CONTENT_TYPE is "C", the INVENTORY must contain <CBU>-blocks.
UPDATE_MODE
Yes
Update mode of the inventory, i.e. FULL or DIFF
updateModeType
4
Only UPDATE_MODE "FULL" is currently supported. Always the complete inventory should be send.
SNAPSHOT_TIME
No
Timestamp of the 'data snapshot' (in UTC)
dateTime
minimal 20
Without fractional seconds the length is 20, for example: 2016-08-23T13:16:48Z
Additional notes: SNAPSHOT_TIME in the element <INVENTORY> is defined as "timestamp of the data snapshot in UTC" that means the timestamp of the creation of this part of the complete file. This can be the timestamp of the XML export and I guess that in most of the cases it will be identical to the CREATION_TIME.
SCHEMA_VERSION
Yes
Version of the applied XML Schema Definition (XSD)
schemaVersionType
The schema version is very important as this determines the validation rules that should be applied during the processing of your file.
2.2 ItemBaseType elements (for Donors and CBUs)
Field Identifier
Required
Description
Type
Length
Comment
ID
Yes
Unique identifier of the donor/CBU
String
17
Unique identifier of the donor/CBU:
If you are an EMDIS member, you can use the same ID as you use for that system (EMDIS hub code + donor identification allocated by the associated donor registry).
For non-EMDIS members we recommend to use two digit ISO country code of the associated donor registry + donor identification allocated by the associated donor registry. For example: AU600196166, DEGOE-35487, US087013165, SB45.
However, you are also allowed to use just the donor ID allocated by your registry.
GRID
No
Global registration identifier of the donor
String
19
ONLY applicable for donors
ATTR
No
Describing attribute of the donor/CBU according to house rules of the sending organization.
String
3
BIRTH_DATE
Yes
Date of birth of the donor/CBU
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
Infectious disease markers (IDM) and other relevant tests of the donor/CBU
idmType
Explained separately at idmType 2.5
RSV_PAT
No
Unique identifier of the patient the donor/CBU is reserved for (STATUS=RS).
String
17
The value comprises the EMDIS patient identification, where the patient search centre is an EMDIS member, otherwise the value is empty. For example: AU9654021, DE275342, US2277450.
NOTE: This field is not required for status "RS" and can be transmitted as empty if privacy concerns exist.
STATUS
Yes
Status of the donor/CBU
statusType
2
statusType: "AV","TU","RS" ("DE" is not supported yet, "RE" not valid for CBUs)
STAT_END_DATE
No
Date until which the current status will be applicable
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
2.3 hlaType elements
HlaType fields can be divided in hlaSerFieldsType and hlaDnaFieldsType
hlaSerFieldsType: HLA values obtained by serological typing methods
hlaSerFieldsType = “<FIELD1>” string of max length 5 “</FIELD1>”, “<FIELD2>” string of max length 5 “</FIELD2>”;
DNA typing results can be given for loci that are defined as hlaLocusType and hlaLocusDnaOnlyType. These loci include HLA-A, -B, -C, -DRB1, -DQB1, -DRB3, -DRB4, -DRB5, -DQA1, -DPA1, -DPB1.
Finally, previously the dot20 file format allowed to submit values like 01 in DNA fields. We can no longer accept this and you have to submit the equivalent of 01, so '01:XX' .
Minimal required elements
Minimal typing values for Donor: A (either SER or DNA), B (either SER or DNA)
Minimal typing values for CBU: A (either SER or DNA), B (either SER or DNA), DRB1 (either SER or DNA)
Please note:
It is no longer possible to submit string HLA values; only single values are allowed.
When a donor or CBU has homozygous alleles/values, please use the following notation:
<HLA><A><SER><FIELD1>1</FIELD1><FIELD2 /></SER></A> ... or <DQB1><DNA><FIELD1>05:02:01G</FIELD1><FIELD2 /></DNA></DQB1>
Field Identifier
Required
Description
Type
Length
Comment
SER
depends on content type and DNA fields provided
HLA values obtained by serological typing methods
hlaSerFieldsType
5
Each SER element contains two other elements: FIELD1 and FIELD2
DNA
depends on content type and SER fields provided
HLA values obtained by DNA based typing methods
hlaDnaFieldsType
20
Each DNA element contains two other elements: FIELD1 and FIELD2
FIELD1
HLA value of allele 1
5 or 20
Element within the element SER and DNA
FIELD2
HLA value of allele 2
5 or 20
Element within the element SER and DNA
A
Yes
HLA-A values
hlaLocusType
Both SER and DNA possible; either SER or DNA values required
B
Yes
HLA-B values
hlaLocusType
Both SER and DNA possible; either SER or DNA values required
C
No
HLA-C values
hlaLocusType
Both SER and DNA possible
DRB1
Yes (CBU) No (Donor)
HLA-DRB1 values
hlaLocusType
Both SER and DNA possible; either SER or DNA values required for CBU
DRB3
No
HLA-DRB3 values
hlaLocusDnaOnlyType
Only DNA possible
DRB4
No
HLA-DRB4 values
hlaLocusDnaOnlyType
Only DNA possible
DRB5
No
HLA-DRB5 values
hlaLocusDnaOnlyType
Only DNA possible
DQA1
No
HLA-DQA1 values
hlaLocusDnaOnlyType
Only DNA possible
DQB1
No
HLA-DQB1 values
hlaLocusType
Both SER and DNA possible
DPA1
No
HLA-DPA1 values
hlaLocusDnaOnlyType
Only DNA possible
DPB1
No
HLA-DPB1 values
hlaLocusDnaOnlyType
Only DNA possible
2.4 kirType elements
The kirType Field Definitions consists of the type: kirLocusType. This is defined as a String with 3 characters: "POS" or "NEG". "POS" means "Presence of KIR gene", "NEG" means "Absence of KIR gene".
The following elements are possible and in this specific order:
There is another field called <KIR_GL> (URI that refers to a GL-string registered with a GL-service or direct GL-string for absence / presence) this field is not used at the moment and must be empty.
Field Identifier
Required
Description
Type
Length
Comment
KIR gene e.g. KIR2DL1
No
KIR genotype e.g. KIR gene 2DL1
kirLocusType
3
valid values: "POS" = presence of KIR gene; "NEG" = absence of KIR gene
2.5 idmType elements
There are many infectious disease markers (IDM) possible in the element IDM. Many IDM elements can have either the values idmValueType or idmValueExtType
idmValueType includes the following values: "P","N"
idemValueExtType include the following values: “P”,“G”,“M”,“B”,“H”,“O”,“N”
Field Identifier
Required
Description
Type
Length
Comment
CMV
No
CMV status
idmValueExtType
1
idmValueExtType: “P”,“G”,“M”,“B”,“H”,“O”,“N”
EMDIS data dictionary also has a ‘Q’ (questionable / unclear) but that will not be applicable within the BMDW data submission file.
CMV_NAT
No
CMV NAT status
idmValueType
1
idmValueType: "P","N"
CMV_DATE
No
Date of CMV test
bareDateTyp
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
HBS_AG
No
Hepatitis B status (hepatitis B surface antigen)
idmValueType
1
idmValueType: "P","N"
ANTI_HBC
No
Hepatitis B status (antibody to hepatitis B core antigen)
idmValueType
1
idmValueType: "P","N"
ANTI_HBS
No
Hepatitis B status (antibody to hepatitis B surface antigen)
idmValueType
1
idmValueType: "P","N"
ANTI_HCV
No
Hepatitis C status (antibody to hepatitis C virus)
idmValueType
1
idmValueType: "P","N"
ANTI_HIV_12
No
Anti-HIV 1/2 status
idmValueType
1
idmValueType: "P","N"
HIV_1_NAT
No
HIV-1 NAT status
idmValueType
1
idmValueType: "P","N"
HIV_P24
No
HIV p24 status
idmValueType
1
idmValueType: "P","N"
HCV_NAT
No
HCV NAT status
idmValueType
1
idmValueType: "P","N"
ANTI_HTLV
No
Antibody to HTLV I/II
idmValueType
1
idmValueType: "P","N"
SYPHILIS
No
Syphilis status
idmValueType
1
idmValueType: "P","N"
WNV
No
WNV status
idmValueType
1
idmValueType: "P","N"
CHAGAS
No
Chagas status
idmValueType
1
idmValueType: "P","N"
EBV
No
EBV status
idmValueExtType
1
idmValueExtType: “P”,“G”,“M”,“B”,“H”,“O”,“N”
EMDIS data dictionary also has a ‘Q’ (questionable / unclear) but that will not be applicable within the BMDW data submission file. Please leave blank for Q.
TOXO
No
Toxoplasmosis status
idmValueExtType
1
idmValueExtType: “P”,“G”,“M”,“B”,“H”,“O”,“N”
EMDIS data dictionary also has a ‘Q’ (questionable / unclear) but that will not be applicable within the BMDW data submission file. Please leave blank for Q.
HBV_NAT
No
HBV NAT status
idmValueType
1
idmValueType: "P","N"
PB19_NAT
No
ParvoB19 NAT status
idmValueType
1
idmValueType: "P","N"
ALT
No
Alanine aminotransferase status in units per litre
Short
Number, no decimals, minimal value is 1
2.6 donItemType elements
DonItemType elements contain elements that are specific for donors and not applicable for CBUs.
Field Identifier
Required
Description
Type
Length
Comment
STAT_REASON
No
Additional information relevant to the donor status
Date of last confirmed contact - defined as the date of an active form of communication (e.g. a query about status, an address update, confirmation of their interest in donating) via any channel (e.g. email, mail, phone, website), post registration, from a donor to the registry. Any communication from the registry to the donor that does not lead to an activity of the donor suggesting his further interest in donation is explicitly excluded (e.g. annual mailing without reaction).
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
CHECKUP_DATE
No
Date of the last medical checkup - defined as the date of a donor health assessment that indicates whether a donor is minimally suitable to be considered for donation, regardless if eligible for only one donation type, and includes questions about current medication and health issues (e.g. completion of a health screening questionnaire at Extended Typing or Verification Typing). The donor health assessment can be completed by any means (e.g. paper-based, online, phone). This does not require any physical examination of a donor.
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
WEIGHT
No
Weight in kg
Short
Number between 1 and 999, no decimals
HEIGHT
No
Height in cm
Short
Number between 1 and 999, no decimals
NMBR_TRANS
No
Number of blood transfusions
Short
Number: zero or greater, no decimals
NMBR_PREG
No
Number of pregnancies
Short
Number: zero or greater, no decimals
NMBR_MARR
No
Number of marrow donations
Short
Number: zero or greater, no decimals
NMBR_PBSC
No
Number of PBSC donations
Short
Number: zero or greater, no decimals
COLL_TYPE
No
Collection type, i.e. the willingness of the donor to donate in a specific manner
String
1
collTypeType: "M", "P","B"
2.7 cbuItemType elements
CbuItemType elements contain elements that are specific for CBUs and not applicable for donors.
Identification of CBU locally at the associated CBB
String
17
BAG_ID
No
Identification as it appears on the bag. If more than one bag is available then this data attribute is not populated
String
17
BANK_MANUF_ID
No
Unique identifier of the CBB that manufactured the CBU. ID shown in table in tab Cord blood bank IDs
String
10
PLEASE NOTE: For the upload to BMDW the fields BANK_MANUF_ID and BANK_DISTRIB_ID should be fulfilled with a new ID for the corresponding cord blood banks and not with the EMDIS IDs.
These IDs are important to allow BMDW to identify if the CBU is from an accredited bank which will be displayed within a search report.
BANK_DISTRIB_ID
No
Unique identifier of the CBB distributing the CBU. ID shown in table in tab Cord blood bank IDs
String
10
PLEASE NOTE: For the upload to BMDW the fields BANK_MANUF_ID and BANK_DISTRIB_ID should be fulfilled with a new ID for the corresponding cord blood banks and not with the EMDIS IDs.
These IDs are important to allow BMDW to identify if the CBU is from an accredited bank which will be displayed within a search report.
COLL_DATE
No
Date that the CBU was collected
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
PROC_DATE
No
Date that the processing started
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
Collected volume before processing (without additives) in ml
Short
Number between 1 and 9999, no decimals
VOL_FRZN
No
Total volume frozen (post processing, prior to cryopreservation) in ml
Short
Number between 1 and 9999, no decimals
TNC
No
Total number of nucleated cells (before processing)
Float
Number with decimals
TNC_FRZN
No
Total number of nucleated cells (post processing, prior to cryopreservation)
Float
Number with decimals
RED_BC_FRZN
No
Total number of nucleated red blood cells (post processing, prior to cryopreservation)
Float
Number with decimals: minimum is 0.0E0, maximum is 999.9E7
MNC_FRZN
No
Total Number of mononucleated cells (post processing, prior to cryopreservation)
Float
Number with decimals
CD34PC
No
Total number of CD34+ cells (before processing)
Float
Number with decimals
CD34PC_FRZN
No
Total number of CD34+ cells (post processing, prior to cryopreservation)
Float
Number with decimals
CFU_FRZN
No
Total count of colony forming units (post processing, prior to cryopreservation)
Float
Number with decimals
VIABILITY
No
Viability as percentage value
Short
Number between 0 and 100, no decimals
VIABILITY_DATE
No
Date that viability was tested
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
VIABILITY_CELLS
No
Type of cells tested for viability
viabilityCellsType
6
viabilityCellsType: "TNC","CD34PC","CD45PC"
NOTE:
VIABILITY_CELLS = "CD34PC" corresponds to CB_VIABILITY_CELLS = "CD34" in EMDIScord.
VIABILITY_CELLS = "CD45PC" corresponds to CB_VIABILITY_CELLS = "CD45" in EMDIScord.
VIABILITY_METHOD
No
Method used to calculate the viability
viabilityMethodType
2
viabilityMethodType: "7A","PI","TB","OT"
ATT_SEG
No
Number of attached segments available
Short
Number between 0 and 99, no decimals
DNA_SMPL
No
DNA samples available?
Boolean
true,false
OTH_SMPL
No
Samples other than DNA available?
Boolean
true,false
CT_COMPLETE_DATE
No
Date of completion of confirmatory typing (CT)
bareDateType
10
Date without timezone information, example 1968-06-28, Date Delimiter = "-"
CT_SMPL_TYPE
No
Confirmatory typing (CT) sample type
ctSmplTypeType
2
ctSmplTypeType: "AS","WB","RC","FP","ED"
AL_RED_BC
No
Number of red cell fraction aliquots
Short
Number between 0 and 99, no decimals
AL_SER
No
Number of serum aliquots available
Short
Number between 0 and 99, no decimals
SER_QUANT
No
Total quantity of serum available in ml
Float
Number between 0.0 and 99.9, one decimal
AL_PLA
No
Number of plasma aliquots available
Short
Number between 0 and 99, no decimals
PLA_QUANT
No
Total quantity of plasma available in ml
Float
Number between 0.0 and 99.9, one decimal
MAT
No
Data of the mother of the infant associated with the CBU
matType
see further on this webpage matType
2.8 matType elements
The matType elements are a sub-element from the element CBU.
Field Identifier
Required
Description
Type
Length
Comment
ID
No
Identification used to identify the maternal donor as assigned by the registry
String
15
ID_BANK
No
Identification used by associated CBU manufacturer to identify maternal detail
String
15
HLA
No
HLA of the mother of the infant associated with the CBU
hlaType
see above in section 2.3 hlaType
IDM
No
Infectious disease markers (IDM) and other relevant tests of the mother of the CBU
idmType
see above in section 2.5 idmType
AL_SER
No
Number of serum aliquots available
short
Number between 0 and 99, no decimals
SER_QUANT
No
Total quantity of serum available in ml
Float
Number between 0.0 and 99.9, one decimal
AL_PLA
No
Number of plasma aliquots available
Short
Number between 0 and 99, no decimals
PLA_QUANT
No
Total quantity of plasma available in ml
Float
Number between 0.0 and 99.9, one decimal
#
Minimal required data
Organisations providing donor or CBU data, should at least include the following elements with valid values. Without this data, the records will be rejected during the validation procedure.
A DONOR record should include:
ID
BIRTH_DATE
SEX
HLA (including at least HLA-A (SER or DNA) and HLA-B (SER or DNA))
STATUS
A CBU record should include:
ID
BIRTH_DATE
HLA (including at least HLA-A (SER or DNA), HLA-B (SER or DNA) and HLA-DRB1 (SER or DNA))
STATUS
#
XML example files
We already provided you the XSD files, but these files do not show directly how an XML file with those definitions will look like. Therefore we created some example files: one for donors and one for CBUs.
Both files contain only 2 records, but in those two records almost all possible elements contain a value. It can help you to check the order of the elements in your own XML file. Please be aware that values like GRID are fictive and do not follow the rules for the check character. These two examples are based on the XSD files version 2.1.
XML files tend to be large. For quick visual inspection and search you may use Glogg (windows)
#
File names
Registries with data on stem cell donors and cord blood units should separate these two data sets and provide two files: one for stem cell donors, and one for cord blood units. Data of stem cell donors and cord blood units should not be combined in one file. In the filename the distinction between donor data and cord blood unit data is made clear.
The first part of the filename is "ION-" (without the quotes) followed by the ion number and either a "D-" for donors (without the quotes) or a "C-" (without the quotes) for cold blood units. This <ION> should be similar to the one provided in the field <POOL>. The extension of the file is ".XML". Using this naming convention the name of the Austrian cord blood registry is: ION-2614-C.XML and the name of the German donor registry is: ION-6939-D.XML
After encryption, the file should follow almost the same name convention as for the xml file name, but then xml is replaced to pgp. So the first part of the GPG-filename is identical to the XML-filename. The GPG software will either add a second extension ".PGP", or replace the ".XML" extension of the data file with the ".PGP" extension. As an example, the file name of an encrypted Austrian cord blood file would then be: "ION-2614-C.PGP" (without the quotes).
If you are listing organisation and are also sending data from other listing organisations (with ION), you can provide the inventory of different POOL IDs together in one file. However, you should not combine donor and CBU data together. For the file naming, please always use the ION from the organisation that is sending the data.
#
How to compress your XML file with ZIP
When your file is larger then 200Mb, you have to compress your file by using ZIP. If your file is smaller, you are also encouraged to compress your file, because the time to upload your file will be reduced.
Please find below some methods to compress your file with ZIP when you are using any of the operating systems Windows, OS, or Linux/unix.
Please note: When you are using another method to compress your file, like tar, we cannot decompress your file during processing and we have to reject the file.
Creating a compressed zip file in Windows
Click to highlight the file that you need to zip. Please note: BMDW can only accept your file when the zip file contains 1 file.
Right-click the file and select Send to > Compressed (zipped) Folder.
Windows will create the zip file and will position the cursor where you can choose a unique name for the file.
It is also possible to first create your ZIP folder and then drag the file to your zip folder.
Creating a compressed zip file in OS X
Open a new Finder window and navigate to the file.
Click to highlight the file that you need to zip.
Select File > Compress from the pull-down menu. Sometimes you can also click with your right mouse button on the file and use the quick menu.
Finder will compress the selected file and will create the zip file with the same same as your file but with the extension .zip.
Creating a compressed zip file in Linux
Open a terminal session and navigate to the location of your file
To view a listing of directory contents, enter the following command: ls
Note the files to be zipped.
Create the zip file by entering the command: zip {.zip-filename} {filename-to-compress} (e.g. zip ION-1234-D.zip ION-1234-D.xml)
#
How to encrypt your XML file
BMDW will only accept pgp encrypted XML files for data upload. We will now describe how you can encrypt your xml file. If you have a very large file, you should first compress your file with ZIP before you encrypted your file. Please see the picture below for a schematic representation of the encryption en decryption process.
Encryption is performed by the organisation who is sending data to BMDW; decryption is performed by BMDW to be able to process and validate the data in your file.
For this encryption, you should use the BMDW public key.
Please note: This key is different from the key that you used to encrypt your DOT20 file.
STEP 1: Encryption program
The DOT20 file you sent before to BMDW also needed to be encrypted. The procedure is actually the same, but you now have to use the new BMDW public key.
Currently, there are several different software packages that you can use to encrypt and decrypt your files. It depends of course also of your operating system which programs you can use.
Here are some examples:
Windows: Kleopatra, PGP Tool
OS (MAC): GPG Suite
Linux/unix: GnuPG
GnuPG is a complete and free implementation of the OpenPGP standard as defined by RFC4880 (also known as PGP). GnuPG allows to encrypt and sign your data and communication, features a versatile key management system as well as access modules for all kinds of public key directories. GnuPG, also known as GPG, is a command line tool with features for easy integration with other applications. A wealth of frontend applications and libraries are available. GnuPG is Free Software (meaning that it respects your freedom). It can be freely used, modified and distributed under the terms of the GNU General Public License . For installation on your Linux/Unix machine, please visit the following page for HowTos: https://www.gnupg.org/documentation/howtos.html
STEP 2: Import BMDW public key
After installing your preferred program, you have to import the BMDW public key.
First download the BMDW public key to your computer. It is important that you save the file with extension asc (key.asc)
Open your encryption program and look for something like import (PGP) key or import certificate. Click on this and then you have to upload the file with the BMDW public key and save the key.
If you might get an error with importing the key, you can try to remove the text “Version: GnuPG v2” from the file and try to import the file again.
For Linux/Unix, importing of the key in your gpg keyring can be done by using the following command:
$ gpg --import {public_key_file}
Alternatively, instead of saving this file and importing the key, you may look it up at a keyserver.
For example, if you use Kleopatra, use CTRL-SHIFT-I and search for 0xC44E0E7A736E374E
If you use gpg from the commandline, use gpg --recv-keys --keyserver pool.sks-keyservers.net --recv 0xC44E0E7A736E374E
STEP 3: Encrypt XML or ZIP file with BMDW public key
Next step is to use the BMDW public key that you just imported into your encryption program to encrypt your XML or zipped XML file.
In your encryption program, go to the function called encrypt or encrypt files.
A windows with all your files will open. Look up the file you would like to encrypt.
Following the steps in your program and make sure you choose the BMDW public key to encrypt your file
Some programs work together with your file exploring program like Finder for Mac or Explorer for windows. If this is the case, go to your file look-up program and look for your file.
Select your file and click on the right mouse button. A quick menu will become visible. Look for something with encryption or GPG or with a MAC it is probably under Services. This depends on the program you installed on your computer. Click on that and follow the instructions on your screen.
Make sure you choose the BMDW public key to encrypt your file.
For Linux/Unix, encryption of your file can be done by using the following command:
$ gpg --encrypt --recipient ID {filename_to_be_encrypted}
where ID is replaced with that key's ID
The short version of the above command is:
$ gpg -e -r ID {filename_to_be_encrypted}
In either case, a file is created with the same name, plus an additional .gpg file extension added to the end. Thus, if your file is ION-1234-D.xml, you will create an encrypted copy of the file named ION-1234-D.xml.gpg.
Please note: Do not sign your file. This will result in rejection of your file during processing.
#
Explanation of Errors and Warnings in your processing report
INFORMATION
We are currently working on the new errors and warning you might find in your processing report. The errors and warnings shown below are mainly based on the old processing reports and are amended to our best knowledge at this moment. More information will follow soon.
After submitting a file to BMDW you will receive a processing report in your BMDW data upload service account. This document describes explanations of warnings or errors as you may find them in the processing report. In the explanations below you find references to various fields from the file format for data delivery. For details on these field names and the file format look in the tabs 'XML file' and 'File name' of this page.
The ID of the donor or CBU will be displayed as well. This helps you find the problem line in the file you have sent, and hopefully helps you correct the problem.
BMDW – Business validation rules applied
BMDW has additional business validation rules in place to ensure that even though the data supplied on a field level might be correct they need to have passed the validation rules applied sometimes on multiple fields to ensure correct data is being added to the GCD database. As part of providing us the XML your organisation should also perform these checks to ensure the validity of the data you are providing to BMDW.
Cannot render 'confiform-table'. No form found
We could not find a form with the name 'ValidationRulesXML' on the page
Page (page id = 274367107) has no ConfiForms Form macros defined
File Errors
FileError: Empty file or file without data.
Explanation: When the size of the received file is zero bytes, or no data could be read from the received file, this error is returned.
Record Errors
RecordError: No ID specified: Explanation: The ID or GRID field should be given, and should not be blank.
RecordError: Duplicate donor/CBU ID found: Explanation: Every donor or cord blood unit should be listed only once. During processing of your file, a donor or cord blood ID is listed more than once, only the first occurrence has been accepted. The second occurrence XXXXX has been rejected.
RecordError: Invalid GRID ID specified: Explanation: The global registration identified provided is invalid. PLEASE NOTE: GRID format allowed is: XXXX XXXX XXXX XXXX XXX. Also only upper case letter and numbers are allowed.
RecordError: Duplicate GRID ID found: Explanation: Every donor or cord blood unit should be listed only once. During processing of your file, a GRID ID is listed more than once, only the first occurrence has been accepted. The second occurrence XXXXX has been rejected.
RecordError: Invalid ION & GRID specified: Explanation: The GRID ID and Listing organisation (ION) ID are contradictory.
RecordError: "Collected Volume before processing" (VOL) has an incorrect value: Explanation: The "Volume Collected" (VOL) should be no less than 10, or more than 400 milliliters (ml).
RecordError: "Total Nucleated Cells" (TNC) has an incorrect value: Explanation: The "Total Nucleated Cells" should be no less than 10, or more than 999 (10^7).
RecordError: "Collected number of CD34+ cells" (CD34PC) has an incorrect value: Explanation: The value provided for the CD34+ cell count is not a numeric value with decimal point in units of 10^6.
RecordError: "Collected number of mononuclear cells" (MNC_FRZN) has an incorrect value: Explanation: The value provided for the mononucleated cell count is rounded number of mononuclear cells in the units of 10^7.
RecordError: Duplicate donor/CBU ID found: Explanation: Every donor or cord blood unit should be listed only once. If during processing of a file, a donor or cord blood ID is listed more than once, only the first occurrence is accepted, the second occurrence generates this error.
RecordError: Invalid date format for field 'field name' given: Explanation:This error may be returned for date fields. The format for dates field should be in the format YYYY-MM-DD.
RecordError: Donor is either too young or too old: Explanation:The age limits of donors that BMDW adheres to, are set by the WMDA. Donor age outside range of 18-60 years are rejected.
RecordError: Invalid Gender value found (not "M" or "F"): Explanation: Gender of donors other than "M" (for Male) or "F" (for Female) are reported as an error.
RecordError: Invalid CMV Status value found: Explanation: The CMV status provided is not one of the possible values for this field.
RecordError: BANK_MANUF_ID not provided: Explanation: The BANK_MANUF_ID allows the Search report to indicate that the Cord blood bank unit is accredited. If you do not provide this ID the search report will not be able to indicate the cord blood bank unit as being accredited or not.
HLA/DNA Related Errors
HLA/DNA-ERROR: Invalid allele value X found for DNA-"Allele".
Explanation: The value for DRB4 contains a slash (/) which is invalid. If such a problem is found the allele values are blanked and processing of the record continues. So, this is a warning, and not an error that requires the record to be rejected!Another examples might be an C*04:AVK (AVK is assigned bij the NMDP as 01/02/03/04/05/06) which is not valid since the C*04:02 is not assigned.
HLA/DNA-ERROR: Invalid DNA string found: "some string"
Example: For HLA A, the following value is given: 01:01/01:02/01:03/01:04.
Explanation: The DNA string given A*01:01/01:02/01:03/01:04 is not valid since the A*01:04 does not exist. Another reported problem may be that a ambiguity in the format of A*01:01/02/03 is invalid.
HLA/DNA-ERROR: Invalid HLA antigen "some value" found for field "field name".
Example: Serological HLA A30/3 is given in the file.
Explanation: The antigen or search determinant value "30/3" for HLA-A in this example is invalid.
HLA/DNA-ERROR: Incomplete typing found: HLA-A and HLA-B are required.
Explanation: At least one HLA-A and -B antigen or serological value should be available to be able to match the record. If no HLA-A or -B values (either on DNA level or on serological level) are available the record is rejected.
HLA/DNA-ERROR: "DNA allele values" does not match "serology". Equivalents for DNA alleles are ...
Example: HLA-B*15:02,15:26N does not match serological HLA-B76,62. Equivalents for the DNA-B alleles are: 75(15)
Explanation: The serology and DNA values provided, are validated separately, but also matched. If there is no match between the provided serology and the provided DNA, the record is reported.
HLA/DNA-ERROR: Number of alleles for DRB3/4/5 is more than 2; DRB3/4/5 blanked.
Example: Values are given for DRB4 for FIELD 1 and FIELD 2 and also for DRB5 for FIELD 1
Explanation: Only two allele values are allowed for DRB3, DRB4 and DRB5 combined.
HLA/DNA-ERROR: DRB3 (or DRB4 or DRB5) does not match HLA-DR "values". DRB3 (or DRB4 or DRB5) blanked.
Example: Serology DR is 4 and 11; DRB5 is 01:XX
Explanation: DRB5 is associated with DR2, DR15(2), DR16(2) or DR1(rare). Likewise, DRB3 is associated with DR3, DR5, DR6, DR11(5), DR12(5), DR13(6), DR14(6), DR1403, DR1404, DR17(3), DR18(3); and DRB4 with DR4, DR7, DR9.
Cord blood bank IDs
In the XML file format we also defined two fields that are referring to cord blood banks: BANK_MANUF_ID and BANK_DISTRIB_ID.
The BANK_MANUF_ID is the ID corresponding to the cord blood bank that manufactured the cord blood unit (CBU)
The BANK_DISTRIB_ID is the ID corresponding to the cord blood bank that will distribute the CBU
Please find in the table below the ID you have to use for your cord blood banks. The number always consist of 4 digits and is not the same as your ION number. We expect that the BANK_MANUF_ID and the BANK_DISTRIB_ID will be the same for many CBUs.
PLEASE NOTE: EMDIS is using very similar fields, but here you need to use a different ID.
Benefits of this ID
The BANK_MANUF_ID is very important for us. These IDs allow us to identify if the CBU is from an accredited bank or not which will be displayed within BMDW Search & Match Service and the search reports. If you are not providing this ID, we cannot link the CBU to the accreditation status of your cord blood bank registered in our administration. Especially when your cord blood bank is accredited, you might benefit from providing this ID as several transplant centres only want to select CBUs from accredited cord blood banks.
If the ID of your cord blood bank is not provided in the table below, please contact us by sending an email to support@bmdw.org and we will generate an ID and update this list. Please also check if the accreditation status is correct.
ID
Organisation
Country
City
Accreditation
1327
Argentina National Cord Blood Bank
Argentina
Buenos Aires
AABB
1372
Murdoch Childrens Research Institute - BMDI Cord Blood Bank
Australia
Victoria
FACT
1371
Queensland Cord Blood Bank At The Mater
Australia
Brisbane
FACT
1346
Sydney Cord Blood Bank
Australia
Randwick
FACT
1279
Red Cross Blood Transfusion Service of Upper Austria
Austria
Linz
none
1014
Vita 34 Austria
Austria
Graz- Andritz
none
1382
Banque de Sang de Cordon, Cliniques Universitaires Saint Luc
Belgium
Brussels
FACT
1265
Cord Blood Bank UZ Leuven
Belgium
Leuven
FACT
1385
Institut Jules Bordet - ULB Cord Blood Bank
Belgium
Brussels
FACT
1266
Liege Cord Blood Bank
Belgium
Liege
FACT
1381
UZ Gent Cord Blood Bank
Belgium
Gent
FACT
1363
Banco da Rede BrasilCord-Banco de Sangue de Cordão Umbilical e Placentário do INCA
Brazil
Rio de Janeiro
none
1397
Bancos da Rede BrasilCord-BSCUP HEMOSC
Brazil
Florianópolis/SC
none
1368
Bancos da Rede BrasilCord-Banco de Sangue de Cordão Umbilical da Fundação Hemocentro de Brasília
Brazil
Brasília
none
1399
Bancos da Rede BrasilCord-Banco de Sangue de Cordão Umbilical e Placentário do HEMOCE
Brazil
FORTALEZA
none
1858
Bancos da Rede BrasilCord-Hospital Israelita Albert Einstein
Brazil
Sao Paulo
FACT and AABB
1396
Bancos da Rede BrasilCord-Sociedade Beneficente de Senhoras Hospital Sírio Libanes
Brazil
Sao Paulo
none
1369
Bancos da Rede-BrasilCord-Hospital de Clinicas de Porto Alegre
Brazil
Porto Alegre
none
1393
"Canadian Blood Services" Cord Blood Bank
Canada
Ottawa
AABB
1351
Hema-Quebec Public Cord Blood Bank
Canada
St-Laurent
FACT
1021
Victoria Angel Registry of Hope Public Cord Blood Bank
Canada
Markham (Ontario)
FACT and AABB
1022
Vidacel
Chile
Santiago
none
1026
Beijing Jiachenhong Bio-tech Co., Ltd
China
Beijing
AABB
1240
Guangzhou Cord Blood Bank
China
Guangzhou
AABB
1027
Shanghai Cord Blood Bank
China
Shanghai
none
1213
Banco Sangre Cordon Umbilical Bogota
Colombia
Bogota D.C.
none
1350
Public CBB Ana Rukavina
Croatia
Zagreb
none
1389
CYCORD PACBB
Cyprus
Nicosia
FACT
1388
Cord Blood Bank Czech Republic
Czech Republic
Prague
none
1348
Finnish Cord Blood Bank
Finland
Helsinki
FACT
1442
Banque de Sang Placentaire du CHRU de Montpellier
France
Montpellier
FACT
1377
Besancon Cord Blood Bank
France
Besancon Cedex
FACT
1379
Bordeaux Cord Blood Bank
France
Bordeaux
FACT
1357
Bayerische Stammzellbank GmbH
Germany
Gauting
none
1322
DKMS Nabelschnurblutbank
Germany
Dresden
FACT
1839
Deutsche Stammzellspenderdatei Nabelschnurblut
Germany
Mannheim
FACT
1886
Norddeutsches Knochenmark- und Stammzellspenderregister
Germany
Hannover
none
1887
Universitaetsklinikum Erlangen Stammzellbank
Germany
Erlangen
none
1039
José Carreras Cord Blood Bank Düsseldorf-Universitätsklinikum Düsseldorf
Germany
Dusseldorf
FACT
1042
Hellenic Cord Blood Bank
Greece
Athens
FACT
1043
Thessaloniki Public Cord Blood Bank
Greece
Thessaloniki
none
1408
Hong Kong Red Cross Catherine Chow Cord Blood Bank
Hong Kong
Hong Kong
FACT
1323
Jeevan Stem Cell Bank
India
Chennai
none
1859
LifeCell International Pvt. Ltd.
India
Manesar, Gurgaon
AABB
1048
Royan Institute Cord Blood Bank
Iran
Tehran
none
1380
Bedomaich Chayi Cord Blood Bank
Israel
Jerusalem
none
1384
MDA Public Cord Blood Bank
Israel
Ramat-Gan
FACT
1840
Sheba Cord Blood Bank
Israel
Tel Hashomer
FACT and AABB
1892
Banca Del Sangue Cordonale Di Cagliari (Ccbb)
Italy
Cagliari
none
1893
Banca Del Sangue Del Cordone Ombelicale Di Sciacca
Italy
Sciacca
none
1894
Banca Del Sangue Di Cordone Ombelicale Di Verona
Italy
Verona
none
1352
Banca Di Tessuti E Cellule Regione Toscana Pisa Cord Blood Bank
Italy
Pisa
none
1888
Banca Sangue Placentare Regione Abruzzo Pecb
Italy
Pescara
FACT
1211
Banca del Sangue Placentare di Treviso (Treviso Cord Blood Bank)
Italy
Treviso
FACT
1367
CBB Roma Azienda Policlinico Umberto I
Italy
Rome
none
1356
Calabria Cord Blood Bank
Italy
Reggio Calabria
none
1362
Campania Cord Blood Bank
Italy
Napoli
none
1354
Emilia Romagna Cord Blood Bank
Italy
Bologna
FACT
1387
Florence Cord Blood Bank
Italy
Florence
none
1890
Liguria Cord Blood Bank
Italy
Genova
none
1832
Milano Cord Blood Bank
Italy
Milano
FACT
1895
Padova Cord Blood Bank
Italy
Padova
none
1366
Pavia Cord Blood Bank
Italy
Pavia
none
1359
Puglia Cord Blood Bank
Italy
San Giovanni Rotondo
none
1360
St. Eugenio Hospital
Italy
Rome
none
1891
Torino Cord Blood Bank
Italy
Torino
none
1889
Unicatt Cord Blood Bank
Italy
Rome
none
1373
Japanese Red Cross Cord Blood Bank
Japan
Tokyo
none
1062
Banco Central de Sangre; Centro Médico Nacional La Raza
Mexico
Mexico
none
1061
CNTS-National Center of Blood Transfusion
Mexico
Mexico
none
1341
Cord Blood Bank of Samara Regional Center of Family Planning and Reproduction
Russian Federation
Samara
none
1843
King Abdullah International Medical Research Center-Cord Blood Bank
Saudi Arabia
Riyadh
FACT
1079
Singapore Cord Blood Bank
Singapore
Singapore
FACT and AABB
1082
Slovenský register placentárnych krvotvorných buniek- Eurocord-Slovakia (SRPKB)
Slovakia
Bratislava
none
1083
Slovenia Donor + CB Bank ESPOK
Slovenia
Ljubljana
none
1394
Andalucia Cord Blood Bank (Malaga)
Spain
Málaga
FACT
1390
Barcelona CBB (Programa Concordia BST)
Spain
Barcelona
FACT
1383
Basque Country Cord Blood Bank
Spain
Galdakao
none
1914
Canarias Cord Blood Bank
Spain
Tenerife
none
1911
Galicia Cord Blood Bank
Spain
Santiago de Compostela
none
1915
Ivida Cord Blood Bank
Spain
Madrid
FACT
1912
Madrid Cord Blood Bank
Spain
Madrid
none
1913
Valencia Cord Blood Bank
Spain
Valencia
FACT
1916
VidaCord Cord Blood Bank
Spain
Madrid
none
1342
Swedish National Cord Blood Bank
Sweden
Gothenburg
FACT
1375
Cord Blood Bank Basel
Switzerland
Basel
none
1392
Geneva Cord Blood Bank
Switzerland
Geneva 14
none
1088
Bionet Corporation
Taiwan
Taipei City
AABB
1089
Buddhist Tzu Chi Stem Cells Center - BTCSCC
Taiwan
ROC Hualien
none
1090
Healthbanks Biotech Co., Ltd
Taiwan
Taipei City
FACT and AABB
1204
Meribank Biotech Co., Ltd,
Taiwan
New Taipei City
none
1406
Sino Cell Technologies Ltd.
Taiwan
Taipei
none
1091
StemCyte Taiwan Cord Blood Bank
Taiwan
New Taipei City
FACT and AABB
1365
Thai National Cord Blood Bank Bangkok
Thailand
Bangkok
none
1287
Sanquin Cord Blood Bank
The Netherlands
Leiden
FACT
1386
Ankara University Cord Blood Bank
Turkey
Ankara
FACT
1841
Anthony Nolan Cord Blood Bank
United Kingdom
Nottingham
FACT
1391
NHS Cord Blood Bank London
United Kingdom
Bristol
FACT
1854
Precious Cells International
United Kingdom
London
none
1343
Bloodworks NW Cord Blood Services
United States of America
Seattle
AABB
1358
CHOC Cord Blood Bank
United States of America
Orange
FACT
1221
Cleveland Cord Blood Center
United States of America
Cleveland, Ohio
FACT and AABB
1842
Cord: Use Public Cord Blood Bank
United States of America
Orlando
FACT and AABB
1374
Duke University Medical Center - Carolinas Cord Blood Bank