REDCap does not have fixed instruments for participants and visits. Therefore, you need to map the REDCap Instruments with OpenSpecimen Participant and Visit fields.
For mapping, the REDCap variables can be obtained from the ‘data dictionary’ available under ‘Project Home and Design’.
Before configuring the REDCap project to a specific Collection Protocol in OpenSpecimen, you must establish a link between your desired REDCap and OpenSpecimen servers. This will helps the OpenSpecimen to pull the data from the REDCap projects associated with the REDCap server using API tokens. Furthermore, once the server is configured, you can reuse the saved configuration multiple times for adding the projects. You can add the REDCap Server in the following steps:
Data Dictionary for Server Configuration
|
To add a new REDCap project to your desired collection protocol, you can follow the below steps:
Data Dictionary for Project details
|
Mapping can be done at two levels: Participant (Both classical and longitudinal studies) and Visit (Longitudinal study)
After adding the project, you can move to the ‘Fields and Events Mapping’ page by clicking the Next button.
Map REDCap variables (on the left) obtained from the 'data dictionary' to OpenSpecimen (on the right) as shown below.
List of Participant Fields and Variables
Field Name | Variable Name |
---|---|
PPID | ppid |
Registration Date | registrationDate |
External Subject ID | externalSubjectId |
Registration Site | site |
First Name | participant.firstName |
Last Name | participant.lastName |
Middle Name | participant.middleName |
Birth Date | participant.birthDate |
Death Date | participant.deathDate |
Gender | participant.gender |
Races | participant.races |
Vital Status | participant.vitalStatus |
Ethnicity | participant.ethnicities |
eMPI | participant.empi |
National ID / SSN | participant.uid |
MRN Site | participant.pmis.siteName |
MRN | participant.pmis.mrn |
Custom field | participant.extensionDetail.attrsMap.<custom_field_name> For example: if the field name is 'redcap_age' in the custom form the use: participant.extensionDetail.attrsMap.redcap_age |
Like 'Participant Level Mapping', map visits fields for the REDCap project as shown below.
Additionally, you can map events for the REDCap project, as shown below.
Those events from REDCap which are not mapped can create unwanted, unplanned events in OpenSpecimen. To avoid this, click on the 'Ignore Unmapped Events’ checkbox as shown above in the red box.
List of Visit Fields and Variables
Fields Name | Variable Name |
---|---|
Event Label | eventLabel |
Visit Date | visitDate |
Clinical Diagnosis | clinicalDiagnoses |
Visit Site | site |
Clinical Status | clinicalStatus |
Path. Report Number | surgicalPathologyNumber |
Cohort | cohort |
Comments | comments |
Collection Status | status |
Custom Field | extensionDetail.attrsMap.<custom_field_name> For example: if the field name is 'visit_number' in the custom form the use: extensionDetail.attrsMap.visit_number |
Add the list of forms/fields separated by comma, tab, or newline.
Add the list of forms/fields separated by comma, tab, or newline.
The user can define certain conditions to synchronize specific REDCap records to OpenSpecimen. Once applied, the system will ignore all other records that don’t satisfy the criteria irrespective of being mapped to the participant or visit field.
The expression is formed using REDCap variables obtained from the 'data dictionary'.
The example shown below will only fetch the records of female participants who are 18 years or older from REDCap.
The example show below will only fetch the records where the eligibility has value either ‘eligible, needs scheduled' or 'eligible, scheduled’.
This example show below will only fetch those records who have value in their mrn field
The user can define the list of forms to exclude for synchronization irrespective of being mapped to participant or visit field.
If the user provides the list to the ‘Forms Exclusion list’ text box, then all the forms will be synchronized except the forms mentioned on the list.
Like ‘Forms Exclusion List’, the user can also define the list of fields to either include or exclude for synchronization. The user can’t define both the parameters at once.
If the user provides the list to the ‘Field Exclusion list’ text box, then all the fields will be synchronized except the fields mentioned on the list. On the other hand, only specified fields will be synchronized if the user provides the list to the ‘Field Inclusion list’.
To include or exclude a form/field use the variable name of the form/field from REDCap.
To include or exclude a form/field use the variable name of the form/field from REDCap.
Data Dictionary for Fields and Events Mapping
|
Field Name | Mandatory? | Supported study type | Description |
---|---|---|---|
Participant Fields Mapping | No | Classical/Longitudinal | Specifies the list of OpenSpecimen participant fields that are mapped to their respective REDCap fields. For example, rcRecordId=ppid,dob=participant.birthDate |
Visit Fields Mapping | No | Classical/Longitudinal | Specifies the list of OpenSpecimen visit fields which are mapped to their respective REDCap fields. For example, visit_label=eventLable,visit_site=site,visit_date=visitDate |
Records Inclusion Rule | No | Classical/Longitudinal | Defines condition/s to synchronize specific REDCap records to OpenSpecimen. The expression is formed using REDCap variables obtained from the 'data dictionary'. For example, to fetch the records of female participants who are 18 years old or older we can use following expression: #sex == 'Female' and #yearBetween(#dob, #regDate) >= 18 |
Form Exclusion List | No | Classical/Longitudinal | Defines the list of forms to be excluded for synchronization irrespective of being mapped to participant or visit field. For examples, Follow_up_year_1,Follow_up_year_2 |
Fields Inclusion List | No | Classical/Longitudinal | Defines the list of fields to be included for synchronization. For examples, enrollment_date, consent_date |
Fields Exclusion List | No | Classical/Longitudinal | Defines the list of fields to be excluded for synchronization irrespective of being mapped to participant or visit field. |
Events Mapping | No | Longitudinal | Specifies the list of OpenSpecimen events which are mapped to their respective REDCap events. |
Ignore Unmapped Events | No | Longitudinal | Checkbox fields that can be ‘ticked’ to ignore the unmapped events of the REDCap. This prevents the creation of unwanted, unplanned events in OpenSpecimen. |
REDCap | OpenSpecimen | Description |
---|---|---|
Project | Collection Protocol | The RC project can be synchronized with a particular CP in OS. |
Instruments/Forms | Forms | The instruments from RC can be synchronized with forms linked with a particular CP in OS. |
Records | Participant | The records from RC can be synchronized with participants linked with a particular CP in OS. |
Visits/Events | Visits/Events | The visits/events from RC can be synchronized with visits/events linked with a particular CP in OS. |
To add more than one REDCap project to your collection protocol in OpenSpecimen, you can follow below steps:
Go to the REDCap configuration page for your collection protocol of choice.
Click on the ‘More' option and select ‘+Add Another’.
Configure the new project as shown above.
Ans: It is a very common problem faced by the integration of any two disparate systems. Let's say you want to map the gender value "M" received from the REDCap project to the corresponding OpenSpecimen PV "Male". In OpenSpecimen, you can do this by adding the property value to the dropdown of your choice, as shown below:
Let's say you want to map the gender value "M" received from the REDCap project to the corresponding OpenSpecimen PV "Male". To do so, you can follow the given steps:
Mapping Specific CP The property name is the same as the "PV Mapping Key" displayed on the OS-RC configuration page. ![]() Mapping for all CPs under a single site The property name is RC_<site_id>. The site ID can be obtained from the sites list view in the following steps:
![]() ![]() Mapping all REDCap projects irrespective of sites or CP The property name is RC, as illustrated in the below image. ![]() |
It is possible to map multiple PVs from REDCap to one PV on OpenSpecimen using caret (^) as the delimiter. For example, you want to map multiple gender values received Mapping Specific CP The property name is the same as the "PV Mapping Key" displayed on the OS-RC configuration page. ![]() |