Library Validation QC 5.1.2

Overview

The Library Validation QC protocol contains steps to track quality control data from commonly used QC instruments. Through data integrations, QC data can be added to Clarity LIMS directly from the instrument outputs.

Highlights of this protocol include:

  • Data integrations for Bioanalyzer 2100 and Tapestation 2200, including creation of the input file and parsing of data output.

  • Possible integrations with qPCR instruments: TaqMan 7900 or ViiA7.

  • Assignment of pass/fail QC based on chosen criteria.

  • Aggregation of data from multiple QC steps.

Protocol 1: Library Validation QC 5.1.2

  • Protocol Type = QC

  • Capacity = 50

  • QC Filters

    • Bioanalyzer QC (DNA) 5.1.2

      • Did not pass - Bioanalyzer QC (DNA) 5.1.2

    • qPCR QC 5.1.2

      • Did not pass - qPCR QC 5.1.2

    • Tapestation QC (DNA) 5.1.2

      • Did not pass - Tapestation QC (DNA) 5.1.2

    • Aggregate QC (Library Validation) 5.1.2

      • Passed - Bioanalyzer QC (DNA) 5.1.2 OR

      • Passed - qPCR QC 5.1.2 OR

      • Passed - Tapestation QC (DNA) 5.1.2

Step: Bioanalyzer QC (DNA) 5.1.2

  • Master Step Name = Bioanalyzer QC (DNA) 5.1.2

  • Step Type = Standard QC

  • Measurement Generation = Fixed, 1

  • Naming Convention = {InputItemName} Bioanalyzer

Automations

Generate Bioanalyzer driver file
  • Trigger Location = Record Details

  • Trigger Style = Automatic upon entry

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/DriverFileGenerator.jar -u {username} -p {password} \
      script:driver_file_generator \
        -i {processURI:v2} \
        -t /opt/gls/clarity/extensions/ngs-common/v5/EPP/conf/readonly/bioA_driver_file_template.csv \
        -o {compoundOutputFileLuid0}.csv \
        -l {compoundOutputFileLuid1}  \
      && /opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -u {username} -p {password} \
      script:addBlankLines \
        -i {stepURI:v2} \
        -f {compoundOutputFileLuid0}.csv \
        -l {compoundOutputFileLuid1} \
        -sep COMMA \
        -b ',False,' \
        -h 1 \
        -c LIMSID \
        -pre 'Sample '"
Parse Bioanalyzer XML and assign QC flags
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -u {username} -p {password} -i {processURI:v2} \
      script:parseBioAnalyzer \
        -inputFile {compoundOutputFileLuid2} \
        -log {compoundOutputFileLuid5} \
        -configFile '/opt/gls/clarity/extensions/conf/v5/bioanalyzer/defaultBioAnalyzerDNAConfig.groovy' \
      script:assignQC \
        -log {compoundOutputFileLuid6} \
        -qcResult {compoundOutputFileLuid7}"
Set Next Step - Advance
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -i {stepURI:v2} -u {username} -p {password} \
      script:evaluateDynamicExpression \
      -t true \
      -h false \
      -exp 'nextStep = ::ADVANCE::' \
      -log {compoundOutputFileLuid0}"
Set Next Step - Output PASS/FAIL
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -i {stepURI:v2} -u {username} -p {password} script:evaluateDynamicExpression -t true -h false -excludeControls true -exp 'if (output.QC == true) { nextStep = ::ADVANCE:: } else { nextStep = ::ESCALATE:: }' -log {compoundOutputFileLuid0}"
Set Next Step and Copy to Input
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -i {stepURI:v2} -u {username} -p {password} script:evaluateDynamicExpression -t true -h false -exp 'nextStep = ::ADVANCE:: ; input.::Concentration (ng/ul):: = output.::Concentration::' -log {compoundOutputFileLuid7}"

Queue/Ice Bucket

  • Defaults

    • Sample Grouping = Group by Previous Steps

    • Well Sort Order = Row

  • Sample Table

    • Column Headers

    • Expanded View Fields

Placement = Enabled

  • Defaults

    • Sample Grouping = Group by Containers

    • Well Sort Order = Row

    • Placement Pattern = Column

  • Destination Containers

    • BioAnalyzer DNA High Sensitivity Chip

    • BioAnalyzer DNA 1000 Chip

Record Details

Group of Defaults

NRCC
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Peak 2 Size - bp

  • Criteria 1 - Threshold Value = 150.00

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Peak 2 Size - bp

  • Criteria 2 - Threshold Value = 1,000.00

  • Use strict matching for Bioanalyzer results = No

Peak 2 Size Thresholds
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Peak 2 Size - bp

  • Criteria 1 - Threshold Value = 100.00

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Peak 2 Size - bp

  • Criteria 2 - Threshold Value = 1,000.00

  • Use strict matching for Bioanalyzer results = No

TruSeq ChIP-Seq
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Region 1 Molarity

  • Criteria 1 - Threshold Value = 5.00

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Region 1 Molarity

  • Criteria 2 - Threshold Value = 10.00

  • Use strict matching for Bioanalyzer results = No

TruSeq Methyl Capture EPIC
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Peak 2 Size - bp

  • Criteria 1 - Threshold Value = 100.00

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Peak 2 Size - bp

  • Criteria 2 - Threshold Value = 300.00

TruSeq Rapid Exome
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Peak 2 Size - bp

  • Criteria 1 - Threshold Value = 150.00

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Peak 2 Size - bp

  • Criteria 2 - Threshold Value = 1,000.00

  • Use strict matching for Bioanalyzer results = No

  • Step Data

    • Step Data Heading = Begin by uploading the required Bioanalyzer XML result file

    • Group of Defaults = Peak 2 Size Thresholds

    • Master Step Fields

  • Step File Placeholders

    • Bioanalyzer Driver File - Automatically attached

    • Bioanalyzer Driver File Generation Log File - Automatically attached

    • Bioanalyzer XML Result File (required) - Manually uploaded

    • Result File (optional) - Manually uploaded

    • PDF Summary File (optional) - Manually uploaded

    • Bioanalyzer XML Parsing Log File - Automatically attached

    • QC Assignment Log File - Automatically attached

    • QC Assignment Report - Automatically attached

  • Sample Table

    • Enable QC Flags = Yes

    • Sample Display Default = Expand

    • Well Sort Order = Row

    • File Column Options

      • File Column Display = Hide

      • File Attachment Method = Auto

    • Table Columns - Global Fields

Step: qPCR QC 5.1.2

  • Master Step Name = qPCR QC 5.1.2

  • Step Type = Standard QC

  • Measurement Generation = Fixed, 1

  • Naming Convention = {InputItemName} qPCR

  • Control Types

    • Endogenous Positive Control

    • Exogenous Positive Control

    • No Amplification Control

      • Supplier = In house

    • No Reverse Transcriptase Control

      • Supplier = In house

    • No Template Control

      • Supplier = In house

Automations

Assign QC flags
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -u {username} -p {password} \
      script:assignQC \
        -i {processURI:v2} \
        -log {compoundOutputFileLuid1} \
        -qcResult {compoundOutputFileLuid2}"

Queue/Ice Bucket

  • Defaults

    • Sample Grouping = Group by Previous Steps

    • Well Sort Order = Row

  • Sample Table

    • Column Headers

    • Expanded View Fields

Placement = Enabled

  • Defaults

    • Sample Grouping = Group by Containers

    • Well Sort Order = Row

    • Placement Pattern = Column

  • Destination Containers

    • 96 well plate

    • 384 well plate

Record Details

Group of Defaults

Concentration Thresholds
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Concentration

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Concentration

  • Step Data

    • Step Data Heading = Begin by completing the Sample Details table

    • Group of Defaults = Concentration Thresholds

    • Master Step Fields

  • Step File Placeholders

    • qPCR Result File - Manually uploaded

    • QC Assignment Log File - Automatically attached

    • QC Assignment Report - Automatically attached

  • Sample Table

    • Enable QC Flags = Yes

    • Sample Display Default = Collapse

    • Well Sort Order = Row

    • File Column Options

      • File Column Display = Hide

      • File Attachment Method = Auto

    • Table Columns - Global Fields

Step: Tapestation QC (DNA) 5.1.2

  • Master Step Name = Tapestation QC (DNA) 5.1.2

  • Step Type = Standard QC

  • Measurement Generation = Fixed, 1

  • Naming Convention = {InputItemName} Tapestation

Automations

Generate Tapestation Input Sampletable CSV
  • Trigger Location = Record Details

  • Trigger Style = Automatic upon entry

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/DriverFileGenerator.jar -u {username} -p {password} \
      script:driver_file_generator \
        -i {processURI:v2} \
        -t /opt/gls/clarity/extensions/ngs-common/v5/EPP/conf/readonly/tapestation_driver_file_template.csv \
        -o {compoundOutputFileLuid0}.csv \
        -l {compoundOutputFileLuid1}"
Parse Tapestation XML and assign QC flags
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/XmlSampleNameParser.jar -u {username} -p {password} \
      script:parseXmlBySampleName \
        -i {processURI:v2} \
        -inputFile {compoundOutputFileLuid2} \
        -log {compoundOutputFileLuid3}.html \
        -configFile /opt/gls/clarity/extensions/conf/v5/tapestation/defaultTapeStationDNAConfig.groovy \
      && /opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -u {username} -p {password} \
      script:assignQC \
        -i {processURI:v2} \
        -log {compoundOutputFileLuid4} \
        -qcResult {compoundOutputFileLuid5}"

Queue/Ice Bucket

  • Defaults

    • Sample Grouping = Group by Previous Steps

    • Well Sort Order = Row

  • Sample Table

    • Column Headers

    • Expanded View Fields

Record Details

Group of Defaults

Peak 2 Size Thresholds
  • Criteria 1 - Operator = >=

  • Criteria 1 - Source Data Field = Peak 2 MW

  • Criteria 1 - Threshold Value = 100

  • Criteria 2 - Operator = <=

  • Criteria 2 - Source Data Field = Peak 2 MW

  • Criteria 2 - Threshold Value = 1,000

  • Step Data

    • Group of Defaults = Peak 2 Size Thresholds

    • Master Step Fields

  • Step File Placeholders

    • TapeStation Input SampleTable - Automatically attached

    • Sample Table Generation Log - Automatically attached

    • Tapestation Output XML (required) - Manually uploaded

    • Tapestation XML Parsing Log - Automatically attached

    • QC Assignment Log - Automatically attached

    • QC Assignment Report - Automatically attached

  • Sample Table

    • Enable QC Flags = Yes

    • Sample Display Default = Collapse

    • Well Sort Order = Row

    • File Column Options

      • File Column Display = Hide

      • File Attachment Method = Auto

    • Table Columns - Global Fields

Step: Aggregate QC (Library Validation) 5.1.2

  • Master Step Name = Aggregate QC (Library Validation) 5.1.2

  • Step Type = No Outputs

Automations

Aggregate QC Flags and Copy Fields
  • Trigger Location = Record Details

  • Trigger Style = Manual button

bash -l -c "/opt/gls/clarity/bin/java -jar /opt/gls/clarity/extensions/ngs-common/v5/EPP/ngs-extensions.jar -u {username} -p {password} \
      script:setUDF \
        -i {processURI:v2} \
        -f 'Progress' \
        -t '//input/@uri->//sample/@uri' \
        -v 'Library preparation and QC validation complete' \
      script:aggregateQC \
        -i {stepURI:v2} \
        -c 'true' \
        -a 'true' \
        -log {compoundOutputFileLuid0} \
        -aggregatelog {compoundOutputFileLuid1} \
        -copylog {compoundOutputFileLuid2}"

Queue/Ice Bucket

  • Defaults

    • Sample Grouping = Group by Previous Steps

    • Well Sort Order = Row

  • Sample Table

    • Column Headers

    • Expanded View Fields

Record Details

Group of Defaults

Tapestation Values
  • Bioanalzyer QC (DNA) 5.1.2 = Use if available (Priority 5)

  • Copy task 1 - Source Field = Concentration

  • Copy task 1 - Source Step = Tapestation QC (DNA) 5.1.2

  • Copy task 2 - Source Field = Conc. Units

  • Copy task 2 - Source Step = Tapestation QC (DNA) 5.1.2

  • NanoDrop QC (DNA) 5.1.2 = Use if available (Priority 5)

  • PicoGreen QC (DNA) 5.1.2 = Use if available (Priority 5)

  • qPCR QC 5.1.2 = Use if available (Priority 5)

  • Qubit QC (DNA) 5.1.2 = Use if available (Priority 5)

  • Tapestation QC (DNA) 5.1.2 = Use if available (Priority 5)

  • Step Data

    • Step Data Heading = Begin by verifying copy tasks and aggregation priorities

    • Group of Defaults = Tapestation Values

    • Master Step Fields

  • Step File Placeholders

    • Aggregation Script Log - Automatically attached

    • QC Flag Aggregation Log - Automatically attached

    • QC UDF Copy Log - Automatically attached

  • Sample Table

    • Enable QC Flags = Yes

    • Sample Display Default = Collapse

    • Well Sort Order = Row

    • Table Columns - Global Fields

Last updated