Description

This package contains configuration and plugins to import results from the TapeStation into SLIMS.

The TapeStation supports multiple types of assays. Each assay produces results at the sample level and results at peak level and/or region level for each sample.

The package contains the following entities:

  • Two plugins: 
    • TapeStation result import
      • The result import plugin can import Sample results (Concentration, DIN, RIN, …), Peak concentration, and Region concentration result files in the XML format.
    • TapeStation sample sheet export
      • The sample sheet export plugin can generate TXT files with two columns: well, and description for each input Content record.
        • These files can be imported into the Agilent TapeStation controller software.
  • Three tests:
    • TapeStation concentration (ng/μl)
    • TapeStation peak concentration (ng/μl)
    • TapeStation region concentration (ng/μl)
  • Grid Template
    • TapeStation sample sheet
  • Nine custom fields on Result
    • DIN: A field of type Decimal number.
    • RIN: A field of type Decimal number.
    • Observation: A field of type Text box.
    • Fragment size: A field of type quantity and dimension DNA/RNA length, with default unit BP.
    • Average size: A field of type quantity and dimension DNA/RNA length, with default unit BP.
    • Molarity: A field of type quantity and dimension molar concentration, with default unit nmol/l.
    • Area: A field of type quantity and dimension scalar, with default unit blank.
    • Height: A field of type quantity and dimension scalar, with default unit blank.
    • %cfDNA: A field of type quantity and dimension scalar, with default unit %.

How to use the package

Pre-requisite

  • The results should be exported from TapeStation in XML format.
  • Units: the package contains the minimum necessary units for the test configuration. However, it is recommended to install the SI Unit and the Molar concentration unit packages.
  • SLIMS GATE must be running.

Configuration

Result import plugin

The plugin is configured to have four flows (flowConfigurations):

  • Three flows to import each type of results into SLIMS:
    • tapestationConcentrationResultImport (sample identified by its barcode using the value from the Comment section in the XML): import Sample results
    • tapestationPeakConcentrationResultImport (sample identified by its barcode using the value from the Comment section in the XML): import the Peak Concentration
    • tapestationRegionConcentrationResultImport (sample identified by its barcode using the value from the Comment section in the XML): import the Region Concentration
  • One flow to give an example of import based on the sample position (WellNumber) instead of the sample barcode:
    • tapestationConcentrationResultImportBasedOnPosition (sample identified by its position): import Sample results

With the default configuration of the plugin:

  • The sample is identified by its barcode (except for the last flow, which shows an example of import where the sample is identified with its well position).

The following parameters are set to the specifics needed for the TapeStation import:

  • tapestationConcentrationResultImport
    • fileProperties:
      • ignoreTree:
        • Results whose Observations attribute contains “Ladder” are ignored.
        • Results missing a value for “Comment” are ignored.
      • xPathToSamples: “/File/Samples/Sample” is the XPath where samples are searched in the file.
      • fileHeaders: The list of test properties imported from the file and their mapping to SLIMS fields.
        • Concentration test will import the concentration (ng/μl) as the result value and the following properties as result fields:
          • DIN (for gDNA assays only)
          • RINe (for RNA assays only)
          • PercentageCfDNA (%) (for cfDNA assays only)
          • Observation
  • tapestationConcentrationResultImportBasedOnPosition:
    • fileProperties:
      • ignoreTree:
        • Results whose Observations attribute contains “Ladder” are ignored.
        • Results missing a value for “WellNumber” are ignored.
      • xPathToSamples: “/File/Samples/Sample” is the XPath where samples are searched in the file.
    • fileHeaders: The list of test properties imported from the file and their mapping to SLIMS fields.
      • Concentration test will import the concentration (ng/μl) as the result value and the following properties as result fields:
        • DIN (for gDNA assays only)
        • RINe (for RNA assays only)
        • PercentageCfDNA (%) (for cfDNA assays only)
        • Observation
  • tapestationPeakConcentrationResultImport
    • fileProperties:
      • ignoreTree:
        • Results missing a value for “Comment” are ignored.
        • Results missing a value for “Peaks/Peak/CalibratedQuantity” are ignored.
        • Results whose Peaks/Peak/CalibratedQuantity attribute contains “-” are ignored.
        • Results whose Peaks/Peak/Molarity attribute contains “-” are ignored.
        • Results whose Observations attribute contains “Ladder” are ignored.
        • Results whose Peaks/Peak/Observations attribute contains “Marker” are ignored.
      • xPathToSamples: “/File/Samples/Sample” is the XPath where samples are searched in the file.
    • fileHeaders: The list of test properties imported from the file and their mapping to SLIMS fields.
      • Peak concentration test will import the “Calibrated Quantity (Peaks/Peak/CalibratedQuantity) as the result value (with the unit found in the file “/File/Assay/Units/ConcentrationUnit”) and the following properties as result fields:
        • Observation
        • Size (BP)
        • Molarity (with unit found in the file “/File/Assay/Units/MolarityUnit”)
        • Area
        • Height
  • tapestationRegionConcentrationResultImport:
    • fileProperties:
      • ignoreTree:
        • Results missing a value for “Comment” are ignored.
        • Results missing a value for “Regions/Region/Concentration” are ignored.
        • Results whose Observations attribute contains “Ladder” are ignored.
      • xPathToSamples: “/File/Samples/Sample” is the XPath where samples are searched in the file.
    • fileHeaders: The list of test properties imported from the file and their mapping to SLIMS fields.
      • Region concentration test will import the Concentration (Regions/Region/Concentration) as the result value (with the unit found in the file “/File/Assay/Units/ConcentrationUnit”) and the following properties as result fields:
        • AverageSize (BP)
        • Molarity (with unit found in the file “/File/Assay/Units/MolarityUnit”)
        • Area
        • Observation

It is possible to update the configuration of the plugin to:

  • Import more or fewer fields.
  • Change the ignoreTree options.
  • Change the identification of the sample.
    • Replace barcode with custom identifier or position.
  • Add more custom fields to the test results if you need to import more data from the TapeStation.
  • Remove custom fields from the test results.
  • Remove unused flowConfigurations/tests.

You can then use the tests and flows in any “Result” protocol step of your workflow.

Sample Sheet Export Plugin

  • The current configuration expects input Contents to be in an 8×12 location with letters for its row labels.
  • The exported sample sheet does not contain headers:
    • The first column is the Sample’s row/column position concatenated.
    • The second column is the Sample’s barcode.
  • If you want to use locations with a different number of rows/columns, you can adjust the following lines in the flow configuration to match:

    [# th:each=\"j,itercol: ${#numbers.sequence(1,12)} \" ]\ -- can adjust the "8" in sequence(1,12) to the number of columns in your locations
      [# th:each=\"i,iterrow: ${#numbers.sequence(1,8)} \" ]\ -- can adjust "12" in sequence(1,8) to the number of rows in your locations
  • If you want to use an identifier other than barcode, you can:
    1. Adjust the Grid Template to include your desired identifier field as a column.
    2. Update this line in the flow configuration:

      [# th:text=\"${row.getValue('cntn_position_row')} + ${row.getValue('cntn_position_column')} + '\t' + ${row.getValue('cntn_barCode')}\"/]\r\n\
      ------
      # ${row.getValue('cntn_barCode')} can be replaced with ${row.getValue('<your field name goes here>')}

This SLIMS GATE flow can be used in a protocol step in your workflow proceeding the result step or in the same step as the result import.

Where to Look Next

These references have further information on how to configure or use the package contents after the initial installation and integration.

  • SLIMS Administration Manual:
    • Miscellaneous > Plugins Module
    • Miscellaneous > Fields > Custom Fields
    • Electronic Lab Notebook > Tests and Test groups
    • Reporting and Grids > Grid templates
    • Workflows
  • Plugin configuration details can be requested from your Agilent SLIMS Administrator.