- DB node types
- Table node types
- Table Grammar node types
- JSON node types
- HL7 node types
- X12 node types
- XML node types
- Generic node type
Introduction
Iguana stores messages internally using a node tree structure. Their purpose is to make it easier for us to locate, map, and manipulate message data. A node tree is a custom data type that organizes information like tables do, but they are enhanced by methods that add extra functionality. These methods that are defined in the Iguana Node module. Iguana uses various node trees: HL7, XML, DB (database query results), table (database data for updates), X12 (same as HL7), and Table Grammar (a historical format).
Tip: The node tree is actually a Lua userdata type that we created for the the Iguana Translator. For programmers who would like to know more, check out these links:
DB node types [top]
Returned from db.query() and db.execute() (read only)
Type | node.nodeType() return | Icon | Description |
---|---|---|---|
Result Set | result_set | DB result set | |
Row | row | DB row | |
Value String | string | DB string valueolder versions use | |
Value Integer | integer | DB integer value | |
Value Double | double | DB double value | |
Value Datetime | datetime | DB datetime value | |
Value Binary | binary | DB binary value |
Table node types [top]
Returned from db.tables() (writeable)
Type | node.nodeType() return | Icon | Description |
---|---|---|---|
Root or Table Collection | table_collection | Table root or collection of tables | |
Table | table | Table | |
Table Row | row | Table row | |
String | string | Table string value older versions use |
|
Integer | integer | Table integer value | |
Double | double | Table double value | |
Datetime | datetime | Table datetime value |
Table Grammar node types [top]
Returned from chm.parse() (writeable)
Type | node.nodeType() return | Icon | Description |
---|---|---|---|
Root | table_grammar_root | Table Group root | |
Table Group | table_group | Table Group group of tables | |
Table Group Row | table_group_row | Table Group row | |
Table | table | Table Group table | |
Table Row | row | Table Group row | |
String | string | Table Group string valueolder versions use | |
Integer | integer | Table Group integer value | |
Double | double | Table Group double value | |
Datetime | datetime | Table Group datetime value |
JSON node types [top]
Returned from json.parse() and json.createObject() (writeable)
JSON does not use an Iguana node tree instead it uses Lua tables.
Type | node.nodeType() return | Icon | Description |
---|---|---|---|
Object | function not available for Lua tables | Lua table | |
Array | function not available for Lua tables | Lua table with sequential integer indices | |
String | function not available for Lua tables | Lua string valueolder versions use | |
Integer | function not available for Lua tables | Lua number value | |
Double | function not available for Lua tables | Lua number value | |
Boolean | function not available for Lua tables | Lua boolean value | |
json.NULL | function not available for Lua tables | Lua special value indicating null in JSON |
HL7 node types [top]
Returned from hl7.parse() and hl7.message() (writeable)
Type | node.nodeType() return | Icon | Description |
---|---|---|---|
Message | message | HL7 message | |
Repeated Segment Group | segment_group_repeated | HL7 repeated segment group | |
Segment Group | segment_group | HL7 segment group | |
Repeated Segment | segment_repeated | HL7 repeated segment | |
Segment | segment | HL7 segment | |
Repeated Field | field_repeated | HL7 repeated field (or composite) | |
Field | field | HL7 field (or composite) | |
Sub Field | subfield | HL7 sub field (or composite) | |
Sub Sub Field | subsubfield | HL7 sub sub field (or composite) |
X12 node types [top]
Returned from x12.parse() and x12.message() (writeable)
X12 uses the HL7 node types above.
XML node types [top]
Returned from xml.parse()
Type | node.nodeType() return | Icon | Description |
---|---|---|---|
Document | document | XML Document | |
CDATA | cdata | XML CDATA | |
Element | element | XML Element | |
Text | text | XML Text | |
Attribute | attribute | XML Attribute |
Generic node type [top]
This is a node tree that represents any userdata type other than those above, for example: A file handle returned from io.open()
, database connection returned from db.connect{}
, and time returned from various time functions, and dateparse.
Note: The datatype “userdata” can be extended by anyone, including interfaceware developers, to be “anything”.