# Open IdML Function Component

The Open IdML Function Component is used to define an IdML book.

## Configuration

Application Code
  The Application code of the MSS consisting of an acronym of the source application and the version number of the source application (10 characters max).
Refresh
  Signals "starting over" and providing a complete refresh of what is discovered in the environment.
Validate
  Run IdML validation on the book after it is closed and report results.
Directory Name
  Full path to the directory where the book will be stored.
Book Name
  Name of the book within the scope of the Assembly Line.
Manufacturer Name
  Manufacturer name of the MSS (e.g. IBM).
Product Name
  The actual product marketing full name of the MSS.
Host Name
  Fully qualified hostname associated with this MSS.
Detailed Log
  Enabling this will generate debug log messages.

## Function Component Input

Some of the parameters configured in the Configuration screen of the Open IdML FC can be provided as Attributes mapped from the work Entry in the Output Map. When present and non-empty, they take precedence over the parameters in the Configuration screen:

book.name
  This attribute, of type java.io.String, represents the name of the book in the context of the Assembly Line data flow and overrides the 'bookName' configuration parameter.

## Function Component Output

Once the Open IdML FC has executed, the FC makes the following attributes available for attribute mapping (read through the Input Map tab):

idml.bookName (String)
  The file name of the book, generated from the configuration parameters. The file name does not include the absolute path, only the name of the generated file.

## Using the FC

The Open IdML FC may be used within an AssemblyLine containing other TDI components such as Connectors and other Function Components. The FC can be called multiple times while looping through input without affecting the book. The book is created only on the first execution of the FC, nothing is done on subsequent executions. When the AssemblyLine terminates, the book will be finalized, closed (if not already explicitly closed by an optional CloseIdML FC), and possibly validated.