Skip to contents

This function parses WURCS strings into a glyrepr::glycan_structure(). Currently, only WURCS 2.0 is supported. For more information about WURCS, see WURCS. Main reducing-end alditol residues retain their alditol status and use an unknown anomer configuration. Ambiguous alternative linkage groups are represented as floating glycan parts when their child residue or subtree is not localized to one parent. Candidate parents may belong to the main glycan or another floating component. Floating substituents preserve their chemistry, carbon-position ambiguity, and candidate parent residues across the complete structure.

Usage

parse_wurcs(x, on_failure = "error", progress = FALSE, validate = TRUE)

Arguments

x

A character vector of WURCS strings. NA values are allowed and will be returned as NA structures.

on_failure

How to handle parsing failures. "error" aborts when a structure cannot be parsed. "na" returns NA at invalid positions.

progress

Whether to show a progress bar while parsing.

validate

Whether to validate parsed glycan graphs before constructing the result.

Value

A glyrepr::glycan_structure() object.

Examples

wurcs <- paste0(
  "WURCS=2.0/3,5,4/",
  "[a2122h-1b_1-5_2*NCC/3=O][a1122h-1b_1-5][a1122h-1a_1-5]/",
  "1-1-2-3-3/a4-b1_b4-c1_c3-d1_c6-e1"
)
parse_wurcs(wurcs)
#> <glycan_structure[1]>
#> [1] Man(a1-3)[Man(a1-6)]Man(b1-4)GlcNAc(b1-4)GlcNAc(b1-
#> # Unique structures: 1