Way cool new feature: you can now link gates' vertex coordinates to a summary stat of another gate!
Documentation for FJML construction and commands.
FJML Construction.
Any text stream may be parsed for FJML commands. A valid FJML command starts with an unquoted (not doubled) "<" followed by a valid FJML command string (which may be abbreviated). A valid FJML command ends with an unquoted ">". Within an FJML command, any "<" should not be quoted, but any ">" that do not terminate the command must be quoted (doubled).
There are three FJML command types: Keyword, Statistic, and Property. "Keyword" returns the value of an FCS keyword for the sample referenced by the FJML command. "Statistic" returns the value of a statisic for a given subset. Finally, "Property" returns an attribute of a given subset.
All Keyword commands and most Property commands do not require any computations. The only exception is a Property command which refers to the vertices of a gate which is magnetic, or which refers to the vertices of a gate that depends on a statistic (i.e., is referential).
Currently, most statistic commands must be resolved by referring to a statstics node that exists for the particular subset. The exceptions are any count or frequency statistics.
FJML commands comprise four parts: (1) Command; (2) Sample_ID; (3) Path; (4) Parameters. The general format of an FJML command is:
<Command Sample_ID:Path:Parameters>
COMMAND is one of "Keyword", "Statistic", or "Property" and may be abbreviated.
SAMPLE_ID is required in most contexts. Currently, the only places where Sample_ID is not included are FJML commands that are sample-specific. These include: (1) FJML gate annotations, and (2) FJML gate vertex definitions. In all other contexts, the Sample_ID must be included. Sample_ID currently takes on the format:
[*]a.b.c
Preceding the numerical ID with an asterisk indicates that the sample_ID should not be replaced during FJML evaluation (during batch operations); i.e., the FJML command refers to an invariant sample. (Future extension may allow for the asterisk to indicate that the sample_ID will be comprised of a complex "Iterator/Discriminator" type of specification to allow any command to refer to a "relatively" unique sample -- e.g., to identify the control sample for any given experimental sample).
The numerical ID is comprised of three numbers. Currently, "a" is always zero. "b" indicates the relative batch position of the original sample in the current workspace group when the FJML command was created. In other words, it indicates the discriminator value when iterating "by nth" -- if Iterating over every three samples and the second sample was used to base the FJML command, then "b" is set to a value of 2 ("b" is one-based; a value of zero indicates that it was not calculable and is functionally equivalent to a value of 1). "c" is a unique sample identifier in the workspace that has a value of 1 for the first sample ever added to the workspace and increments for each new sample added to the workspace.
PATH is a standard flowjo gating specification. It is blank for the top level sample node, and uses a forward-slash delimited structure to refer to any lower gate (and begins with a forward slash). Any colon or ">" within the path name MUST be quoted in order for parsing to function. Thus, a subset "abc:def" of the gate "ghi>jkl" will be encoded as "/ghi>>jkl/abc::def".
PARAMETERS detail the specific command and are listed below for each type.
KEYWORD Commands
The Keyword command will ignore any path specification. The Parameter for a Keyword command is the name of the keyword to look up. The FJML command is replaced in the stream by the Keyword value.
The cytometery used was <Keyword 0.0.1:$Cyt>.
STATISTIC Commands
The parameter to these commands indicate the name of the statistic to return and additional information needed by the statistic command (all delimited by colons). Valid statistic commands are:
Frequency
Freq. of Total
Freq. of Parent
Freq. of Grandparent
Count
Returns the frequency or count for the gate. Frequency is the same as “Freq. of Total”.
<Stat 0.0.1/Lymphocytes:Frequency>
<Stat 0.0.1/Lymphocytes/T cells/CD4 T cells:Freq. of Grandparent>
X[y] %ile:Parm
X is an integer, 0-100; y is an optional ordinal suffix. Returns the “xth” percentile of the parameter Parm.
<Stat 0.0.1/Lymphocytes:35th %ile:FL1-H>
Freq. of:Subset
Subset is the name of a (parent) subset. The first gate named “Subset” in the parentage is used as the denominator.
<Stat 0.0.1/Lymphocytes/T Cells/CD4:Freq. of:T cells>
Median:Parm
Mean:Parm
Geom. Mean:Parm
Robust CV:Parm
CV:Parm
Mode:Parm
SD:Parm
Median Abs Dev (%):Parm
Returns the specific statistic of the parameter Parm.
<Stat 0.0.1/Lymphocytes:Median:FL1-H>
<Stat 0.0.1/Lymphocytes:CV:FL1-H>
Cell Cycle, Kinetics, and Proliferation Statistics
For cell cycle and Proliferation statistics, the command is formulated as:
Statistic Name:Model Name
For Kinetics, it is simply formulated as a standard statistic.
Model name specifies which model to derive the statistic from. Statistic name can be one of many different statistics; some are unique to a given model. To get a full range of possible statistic names, drag any platform into the Table Editor and, and then drag the Table into the Layout Editor; or, with the Platform Preference “Dragging Platforms to Layout Auto-Creates Stats Table” set to on, drag the platform directly into the layout editor.
PROPERTY Command.
There are a number of property commands that access information about a given subset. Hence, the Path is usually required for a property command (exceptions include the compensation matrix information). The following property commands are valid:
COMMENT
Returns the user-defined text in the workspace “Comment” column.
PATH
Returns the full path name for the node itself
GATENAME
INDENTEDGATENAME
Returns only the name of the node (no path information). The “Indented” form precedes the name with 3 spaces for every level deep that a node is – i.e., for formatting a node list similar to how it appears in the Workspace display.
SAMPLENAME
Returns the name of the sample as it appears in the workspace. Thus, the current Preferences settings affect the value of this command.
GATECOORDINATES
GATEPARAMETERS
Returns a list of coordinates or the names of the parameters that defines the node. The coordinates are in Scale units.
GATEOFFSETVECTOR
For Magnetic gates, returns the offset in pixels (256-channel units) for the computed offset of the magnetic gate. Requesting this value does not force a gate computation. This value may thus be incorrect until computation is done.
COMPENSATIONMATRIXNAME
Returns the name of the compensation matrix for the sample.
COMPENSATIONMATRIX
Returns a string containing the entire compensation matrix.
COMPMATRIXVALUE_XX_YY
Returns a single element of the compensation matrix, specified row “XX” and column “YY”.
<Property 0.0.1:CompMatrixValue_1_4>
COMPMATRIXNAME_XX
Returns the “XX”th parameter name of the compensation matrix.
<Property 0.0.1:CompMatrixName_1>
GATEVERTEX_XX_YY
Returns the “XX”th vertex value for parameter “YY”. Only valid for polygon gates currently. “”XX” ranges from 1 to the number of vertices in the polygon, and YY has one of two values (the parameter names of the two axes the gate was created on).
<Property 0.0.1/Lymphocytes:GateVertex_2_FL1-H>
Comments