FTAM/9000 Programmer's Guide
124 Chapter 3
HP FTAM/9000 Data Structures
Ft_data_unit
Figure 3-10 Ft_node_descriptor Structure
NOTE Creating the Ft_data_unit linked lists for FTAM-2 document types
requires that you follow a few rules. First, familiarize yourself with the
Ft_node_descriptor structure. Then read the next section, which
describes the necessary rules.
Up to 14 struct Ft_data_unit per call
Ft_data_unit
*next
FT_NODE_DESC
*node
Ft_node_descriptor
fadu_name
arc_length
Ft_data_unit
*next
FT_DATA_UNIT
*data_element
Ft_data_element
prim_type
primitive
data_exists
fadu_name HP-UX responders accept, but ignore, the fadu_name field. HP
recommends you set the fadu_name.length to zero and
fadu_name.pointer to NULL.
arc_length You must set arc_length to 1 since FTAM-2 is confined by the
sequential flat constraint set (which has only one hierarchical level).
data_exists You must set data_exists to TRUE since all FADUs must contain data.
EXAMPLE: This example sets the node_descriptor for an FTAM-2 document type.
struct Ft_data_unit data_unit;
data_unit.next = NULL;
data_unit.structure_id = FT_NODE_DESC;
data_unit.data_node = (struct Ft_node_descriptor *)
malloc(sizeof (struct Ft_node_descriptor));
data_unit.data.node->fadu_name.length = 0;
data_unit.data.node->fadu_name.pointer = NULL;
data_unit.data.node->arc_length = 1;
data_unit.data.node->data_exists = TRUE;