
Enzymes
enzyme.RdThree types of enzymes are represented: glycosyltransferases (GTs), glycoside hydrolases (GHs), and sulfotransferases (STs).
GTs catalyze the transfer of a sugar residue from a donor to an acceptor, thus building up glycan structures.
GHs catalyze the removal of a sugar residue from a substrate, thus breaking down glycan structures.
STs add a sulfate substituent to an existing glycan residue.
One special subtype of GTs are starter GTs (or initiating GTs), which catalyze the addition of the first sugar residue onto a non-glycan substrate, thus initiating glycosylation.
Use enzyme() with a gene symbol to load a predefined enzyme.
For example, use enzyme("ST3GAL3") to load the enzyme ST3GAL3.
Throughout the package, you can use enzyme()s for any enzyme argument,
or just use the gene symbol directly.
For example, involve("Neu5Ac(a2-3)Gal(b1-3)GalNAc(a1-", "ST3GAL3") and
involve("Neu5Ac(a2-3)Gal(b1-3)GalNAc(a1-", enzyme("ST3GAL3")) are equivalent.
Explanation about glyenzy_enzyme
An enzyme() is a list with the following elements:
name: the name of the enzyme, usually the gene symbol.rules: a list ofglyenzy_enzyme_ruleobjects. Each rule is a list with the following fields:acceptor: the motif that the enzyme recognizesacceptor_alignment: the alignment of theacceptorrejects: the motifs that the enzyme rejects to act onrequires: optional OR-valued context motifs. When present, at least one requirement must match.product: the product generated by the enzymeacceptor_idx: the node index of the acceptor where the enzyme acts on. For GTs, this is the node new residue is attached to. For GHs, this is the node that is removed. For starter GTs,acceptor_idxis 0.product_idx: the node index of the product residue in the product structure. For GTs, this is the index of the newly added residue in the product. For STs, this is the product node corresponding to the modified acceptor residue. For GHs, this isNULL.new_residue: the new residue added by a GT. For GHs and STs, this isNULL.new_linkage: the linkage of the new residue added by a GT. For GHs and STs, this isNULL.new_substituent: for STs, the sulfate token added by the rule, such as"6S". This field is absent for other enzyme types.product_sub: for STs, the canonical complete substituent state of the modified product residue, such as"3S,6S". This field is absent for other enzyme types.
type: the broad type of the enzyme,"GT"for glycosyltransferase,"GH"for glycoside hydrolase, or"ST"for sulfotransferase. Starter GTs are encoded astype = "GT".species: the species of the enzyme, e.g. "human" or "mouse".glycan_type:NULLfor enzymes that can act on all glycan classes, or one or more of"N","O","lipid", and"free"for class-specific enzymes. Structures ending in Glc or Gal without a represented carrier are compatible with both"lipid"and"free".
You can see all these information by printing the enzyme object.
Examples
library(glyrepr)
enzyme("ST3GAL3")
#>
#> ── Enzyme: ST3GAL3 ─────────────────────────────────────────────────────────────
#> ℹ Type: "GT" (Glycosyltransferase)
#> ℹ Species: "human"
#> ℹ Glycan type: "lipid" and "free"
#>
#> ── Rules (4) ──
#>
#> → Rule 1: terminal alignment
#> Acceptor: "Gal(b1-3)GlcNAc(b1-"
#> Product: "Neu5Ac(a2-3)Gal(b1-3)GlcNAc(b1-"
#> Rejects:
#> "Gal(b1-3)[Fuc(a1-4)]GlcNAc(b1-"
#> → Rule 2: terminal alignment
#> Acceptor: "Gal(b1-4)GlcNAc(b1-"
#> Product: "Neu5Ac(a2-3)Gal(b1-4)GlcNAc(b1-"
#> Rejects:
#> "Fuc(a1-3)[Gal(b1-4)]GlcNAc(b1-"
#> → Rule 3: core alignment
#> Acceptor: "Gal(b1-3)GalNAc(a1-"
#> Product: "Neu5Ac(a2-3)Gal(b1-3)GalNAc(a1-"
#> → Rule 4: terminal alignment
#> Acceptor: "Gal(b1-4)Glc(b1-"
#> Product: "Neu5Ac(a2-3)Gal(b1-4)Glc(b1-"