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:
c
)hm
)h
)l
)lf
)om
)s
)sf
)t
)vf
)v
)Attribute name | Short name | Possible values | Examples |
category | c | See Structure categories, Visual model categories | n.c lig |
hasMaterial | hm | n.hm | |
hidden | h | n.h | |
locked | l | n.l | |
lockedFlag | lf | true or false | n.lf true |
ownsMaterial | om | n.om | |
selected | s | n.s | |
selectionFlag | sf | true or false | n.sf true |
type | t | See node type | n.t a |
visibilityFlag | vf | true or false | n.vf false |
visible | v | n.v |
SAMSON's NSL supports the following node categories that might describe categories of nodes and groups of nodes:
The following structure categories are available:
glycan
(short name gly
), see GlycanheavyAtomsWithLinkingBonds
(short name hawlb
), see Heavy atoms with bonds between themhydrogensWithBonds
(short name hwb
), see Hydrogens with bondsion
, see IonmonatomicIon
(short name mIon
), see Monatomic ionpolyatomicIon
(short name pIon
), see Polyatomic ionligand
(short name lig
), see Ligandlipid
(short name lip
), see Lipidreceptor
(short name rec
), see Receptorwater
(short name wat
), see WaterThe glycan
attribute (short name gly
) matches glycan structural groups based on their names.
Examples:
node.category glycan
(short version: n.c gly
): matches all glycansnode.type atom in node.category glycan
(short version: n.t a in n.c gly
): matches atoms in glycansThe 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 all heavy atoms (non-hydrogen atoms) with bonds between themnode.category heavyAtomsWithLinkingBonds in node.category ligand
(short version: n.c hawlb in n.c lig
): matches heavy atoms with bonds between them in ligandsThe hydrogensWithBonds
attribute (short name hwb
) matches hydrogens with bonds to them.
Examples:
node.category hydrogensWithBonds
(short version: n.c hwb
): matches all hydrogens with bonds to themnode.category hydrogensWithBonds in node.category ligand
(short version: n.c hwb in n.c lig
): matches hydrogens with bonds to them in ligandsThe ion
attribute matches ions based on their names.
Examples:
node.category ion
: matches all ions based on their namesThe monatomicIon
attribute (short name mIon
) matches monatomic ions.
Examples:
node.category monatomicIon
(short version: n.c mIon
): matches all monatomic ionsThe polyatomicIon
attribute (short name pIon
) matches polyatomic ions based on their valence.
Examples:
node.category polyatomicIon
(short version: n.c pIon
): matches all polyatomic ions based on their valenceThe ligand
attribute (short name lig
) matches ligands based on their structure.
Examples:
node.category ligand
(short version: n.c lig
): matches all ligandsatom.symbol N in node.category ligand
(short version: a.s N in n.c lig
): matches all nitrogens in ligandsThe lipid
attribute (short name lip
) matches lipid structural groups based on their names.
Examples:
node.category lipid
(short version: n.c lip
): matches all lipidsatom.symbol C in node.category lipid
(short version: a.s C in n.c lip
): matches all carbons in lipidsThe receptor
attribute (short name rec
) matches receptors.
Examples:
node.category receptor
(short version: n.c rec
): matches all receptors"CA" in node.category receptor
(short version: "CA" in n.c rec
): matches all "CA" nodes (e.g., alpha carbons) in receptorsThe water
attribute (short names wat
, sol
) matches water structures.
Examples:
node.category water
(short version: n.c wat
): matches water structuresatom.symbol O in node.category water
(short version: a.s O in n.c wat
): matches all oxygens in water structuresThe following visual models categories are available:
ballAndStick
(short name bas
) - matches all ball-and-stick visual modelslicorice
(short name lic
) - matches all licorice visual modelsvanDerWaals
(short name vdw
) - matches all van der Waals visual modelscartoon
(short name car
) - matches all cartoon style secondary structure visual modelsribbon
(short name rib
) - matches all ribbon style secondary structure visual modelstube
(short name tub
) - matches all tube style secondary structure visual modelsgaussianSurface
(short name gau
) - matches all gaussian surface visual modelssolventAccessibleSurface
(short name sas
) - matches all solvent accessible surface visual modelssolventExcludedSurface
(short name ses
) - matches all solvent excluded surface visual modelssurface
(short name sur
) - matches all surface visual modelsYou can use them to select the corresponding types of visual models.
Examples:
node.category vanDerWaals
(short version: n.c vdw
): matches all van der Waals visual modelsnode.category licorice and node.category ribbon
(short version: n.c lic and n.c rib
): matches all licorice and ribbon visual modelsThe 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: none.
Examples:
node.hasMaterial
(short version: n.hm
): matches all nodes which have a materialThe 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: none.
Examples:
node.hidden
(short version: n.h
): matches all hidden nodesThe 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: none.
Examples:
node.locked
(short version: n.l
): matches all locked nodesThe 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 all nodes with a locked flag set to true
The node.ownsMaterial
attribute (short name n.om
) matches nodes that own a material (i.e. the material is applied to them).
Possible values: none.
Examples:
node.ownsMaterial
(short version: n.om
): matches all nodes which own a materialThe 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: none.
Examples:
node.selected
(short version: n.s
): matches all selected nodesThe 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 all nodes with a selection flag set to true
The node.type
attribute (short name n.t
) matches nodes by type.
Possible values:
animation
(short name an
)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
)mesh
(short name me
)molecule
(short name m
)nodeGroup
(short name ng
)note
(short name nt
)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
)structuralParticle
(short name sp
)visualModel
(short name vm
)Examples:
node.type atom
(short version: n.t a
): matches all atomsnode.type sidechain
(short version: n.t sc
): matches all side-chain nodesnode.type visualModel
(short version: n.t vm
): matches all visual modelsnode.type atom or node.type bond
(short version: n.t a or n.t b
): matches all atoms and bondsThe 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 all nodes with the visibility flag set to true
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: none.
Examples:
node.visible
(short version: n.v
): selects all visible nodes