Web Analytics Made Easy - Statcounter
Skip to content

Node attributes#

Node attributes, defined in the node attribute space (short name: n), correspond to attributes defined in each node of the data graph or to other properties of nodes. For example, the selection flag is a node attribute, since each node has a selection flag. Hence, the NSL expression node.selectionFlag true may match any node whose selection flag is true, regardless of its node type (atom, bond, etc.).

The following node attributes are available in NSL:

Attribute name Short name Possible values Examples
category c See Structure categories,
Visual model categories
n.c lig
n.c lip, gly
hasMaterial hm true, false n.hm
not n.hm
hidden h true, false n.h
n.v false
locked l true, false n.l
not n.l
lockedFlag lf true, false n.lf true
name n strings in quotes n.n "A"
n.n "L*"
ownsMaterial om true, false n.om
selected s true, false n.s
not n.s
selectionFlag sf true, false n.sf false
n.sf
type t See node type n.t a
visibilityFlag vf true, false n.vf false
n.vf
visible v true, false n.v
not n.v

category#

SAMSON's NSL supports the following node categories that might describe categories of nodes and groups of nodes:

Structure categories#

The following structure categories are available:

Attribute name Short name
glycan gly
heavyAtomsWithLinkingBonds hawlb
hydrogensWithBonds hwb
ion ion
monatomicIon mIon
polyatomicIon pIon
ligand lig
lipid lip
dna
rna
receptor rec
water wat

Glycan#

The glycan attribute (short name: gly) matches glycan structural groups based on their names.

Examples:

  • node.category glycan (short version: n.c gly): matches glycans
  • node.type atom in node.category glycan (short version: n.t a in n.c gly): matches atoms in glycans

Heavy atoms with bonds between them#

The heavyAtomsWithLinkingBonds attribute (short name: hawlb) matches heavy atoms (non-hydrogen atoms) with bonds between them.

Examples:

  • node.category heavyAtomsWithLinkingBonds (short version: n.c hawlb): matches heavy atoms (non-hydrogen atoms) with bonds between them
  • node.category heavyAtomsWithLinkingBonds in node.category ligand (short version: n.c hawlb in n.c lig): matches heavy atoms with bonds between them in ligands

Hydrogens with bonds#

The hydrogensWithBonds attribute (short name: hwb) matches hydrogens with bonds to them.

Examples:

  • node.category hydrogensWithBonds (short version: n.c hwb): matches hydrogens with bonds to them
  • node.category hydrogensWithBonds in node.category ligand (short version: n.c hwb in n.c lig): matches hydrogens with bonds to them in ligands

Ion#

The ion attribute matches ions based on their names.

Examples:

  • node.category ion: matches ions based on their names

Monatomic ion#

The monatomicIon attribute (short name: mIon) matches monatomic ions.

Examples:

  • node.category monatomicIon (short version: n.c mIon): matches monatomic ions

Polyatomic ion#

The polyatomicIon attribute (short name: pIon) matches polyatomic ions based on their valence.

Examples:

  • node.category polyatomicIon (short version: n.c pIon): matches polyatomic ions based on their valence

Ligand#

The ligand attribute (short name: lig) matches ligands based on their structure.

Examples:

  • node.category ligand (short version: n.c lig): matches ligands
  • atom.symbol N in node.category ligand (short version: a.s N in n.c lig): matches nitrogens in ligands

Lipid#

The lipid attribute (short name: lip) matches lipid structural groups based on their names.

Examples:

  • node.category lipid (short version: n.c lip): matches lipids
  • atom.symbol C in node.category lipid (short version: a.s C in n.c lip): matches carbons in lipids

Receptor#

The receptor attribute (short name: rec, alias: protein) matches receptors.

Examples:

  • node.category receptor (short version: n.c rec): matches receptors
  • "CA" in node.category receptor (short version: "CA" in n.c rec): matches "CA" nodes (e.g., alpha carbons) in receptors

DNA#

The dna attribute matches DNA residues.

RNA#

The rna attribute matches RNA residues.

Water#

The water attribute (alias: solvent, short names: wat, sol) matches water structures.

Examples:

  • node.category water (short version: n.c wat): matches water structures
  • atom.symbol O in node.category water (short version: a.s O in n.c wat): matches oxygens in water structures

Visual model categories#

The following visual models categories are available:

  • ballAndStick (short name: bas) - matches ball-and-stick visual models
  • licorice (short name: lic) - matches licorice visual models
  • vanDerWaals (short name: vdw) - matches van der Waals visual models
  • cartoon (short name: car) - matches cartoon style secondary structure visual models
  • ribbon (short name: rib) - matches ribbon style secondary structure visual models
  • tube (short name: tub) - matches tube style secondary structure visual models
  • gaussianSurface (short name: gau) - matches gaussian surface visual models
  • solventAccessibleSurface (short name: sas) - matches solvent accessible surface visual models
  • solventExcludedSurface (short name: ses) - matches solvent excluded surface visual models
  • surface (short name: sur) - matches surface visual models

You can use them to select the corresponding types of visual models.

Examples:

  • node.category vanDerWaals (short version: n.c vdw): matches van der Waals visual models
  • node.category licorice, ribbon (short version: n.c lic, rib): matches licorice and ribbon visual models

hasMaterial#

The node.hasMaterial attribute (short name: n.hm) matches nodes that have a material, either because they own it (i.e. the material is applied to them) or because they inherit it (i.e. a material is applied to one of their ascendants).

Possible values: true, false.

Examples:

  • node.hasMaterial (short version: n.hm): matches nodes which have a material

hidden#

The node.hidden attribute (short name: n.h) matches nodes that are hidden, either because their visibility flag is false, or because the visibility flag of one of their ancestors is false.

Possible values: true, false.

Examples:

  • node.hidden (short version: n.h): matches hidden nodes

locked#

The node.locked attribute (short name: n.l) matches nodes that are locked, either because their locked flag is true, or because the locked flag of one of their ancestors is true.

Possible values: true, false.

Examples:

  • node.locked (short version: n.l): matches locked nodes

lockedFlag#

The node.lockedFlag attribute (short name: n.lf) matches nodes based on their locked flag.

Possible values: true or false.

Examples:

  • node.lockedFlag true (short version: n.lf true): matches nodes with a locked flag set to true

name#

The node.name attribute (short name: n.n) matches nodes based on their names.

Possible values: names, you can use wildcard character (*).

Examples:

  • node.name "A" (short version: n.n "A"): matches nodes with their names equal to A
  • node.name "L*" (short version: n.n "L*"): matches nodes with their names starting with L

ownsMaterial#

The node.ownsMaterial attribute (short name: n.om) matches nodes that own a material (i.e. the material is applied to them).

Possible values: true, false.

Examples:

  • node.ownsMaterial (short version: n.om): matches nodes which own a material

selected#

The node.selected attribute (short name: n.s) matches nodes that are selected, either because their selection flag is true, or because the selection flag of one of their ancestors is true.

Possible values: true, false.

Examples:

  • node.selected (short version: n.s): matches selected nodes

selectionFlag#

The node.selectionFlag attribute (short name: n.sf) matches nodes based on their selection flag.

Possible values: true or false.

Examples:

  • node.selectionFlag true (short version: n.sf true): matches nodes with the selection flag set to true

type#

The node.type attribute (short name: n.t) matches nodes by type.

Possible values:

  • animation (short name: an)
  • asset (short name: as)
  • atom (short name: a)
  • backbone (short name: bb)
  • bond (short name: b)
  • camera (short name: ca)
  • chain (short name: c)
  • conformation (short name: co)
  • document (short name: d)
  • dynamicalModelParticleSystem (short name: dmps)
  • file (short name: fi)
  • folder (short name: f)
  • hydrogenBondGroup (short name: hbg)
  • interactionModelParticleSystem (short name: imps)
  • label (short name: la)
  • light (short name: li)
  • mesh (short name: me)
  • molecule (short name: m)
  • nodeGroup (short name: ng)
  • note (short name: nt)
  • path (short name: p)
  • presentation (short name: pr)
  • propertyModel (short name: pm)
  • renderPreset (short name: rp)
  • residue (short name: r)
  • segment (short name: s)
  • sidechain (short name: sc)
  • simulatorParticleSystem (short name: sps)
  • stateUpdaterParticleSystem (short name: sups)
  • structuralGroup (short name: sg)
  • structuralModel (short name: sm)
  • visualModel (short name: vm)

Examples:

  • node.type atom (short version: n.t a): matches atoms
  • node.type sidechain (short version: n.t sc): matches side chain nodes
  • node.type visualModel, mesh (short version: n.t vm, mesh): matches visual models and meshes
  • node.type atom, bond (short version: n.t a, b): matches atoms and bonds

visibilityFlag#

The node.visibilityFlag attribute (short name: n.vf) matches nodes based on their visibility flag.

Possible values: true or false.

Examples:

  • node.visibilityFlag true (short version: n.vf true): matches nodes with the visibility flag set to true

visible#

The node.visible attribute (short name: n.v) matches nodes that are visible, i.e. the nodes whose visibility flag is true and whose ancestors are visible.

Possible values: true, false.

Examples:

  • node.visible (short version: n.v): selects all visible nodes