El tipo de datos ROW contiene una estructura en árbol. Una fila en una base de datos es un tipo específico de estructura en árbol, pero el tipo de datos ROW no está limitado a contener datos de las filas de base de datos.
Root Row PartNumber = 1 Description = 'Chocolatina' Price = 0,30 Row PartNumber = 2 Description = 'Magdalena' Price = 0,35 Row PartNumber = 3 Description = 'Fruta' Price = 0,42
En el ejemplo, Root contiene tres elementos, todos ellos denominados "Row". Cada uno de ellos. contiene tres elementos con distintos nombres y valores. Este diagrama también describe una instancia de un tipo de datos de fila ESQL (es decir, una estructura en árbol) o el contenido de una tabla de base de datos.
El tipo de datos ROW es un tipo de datos normal. Puede utilizar la sentencia DECLARE para crear variables ROW de la misma manera que crea variables INTEGER o CHARACTER. También hay un concepto más general de un tipo de datos ROW. En el ejemplo anterior, Root es el elemento raíz de una variable ROW. Cada uno de los elementos denominados "Row", no son el elemento raíz de las variables ROW, pero sí son los elementos raíz de las subestructuras. Muchas operaciones ESQL (y particularmente la función SELECT) trabajan con el concepto general de ROW y funcionarán igualmente en árboles completos o en fragmentos de los mismos.
También hay un concepto general de un tipo de datos LIST. El conjunto de elementos denominados "Row" puede considerarse como una lista. Algunas operaciones ESQL (particularmente SELECT) operan con el concepto general de lista.
InputRoot, OutputRoot, etc., son ejemplos de variables ROW que se declaran y conectan automáticamente a la estructura del intermediario, listas para utilizar.