Before you discover the structure of your input file, you can choose one of the following options on the
Settings
tab:
Default output groups
Intelligent Structure Discovery
can generate normalized or denormalized output groups.
Intelligent Structure Discovery
also generates groups based on XSD compositors, such as choice groups, if the input file uses them.
Normalized hierarchy relationships
This method generates output groups for each repeating element. Using normalized hierarchy relationships is generally faster and uses less memory than using default output groups.
Entity relationships
This method generates output groups for each repeating element and for complex data types.
Using entity relationships creates the most compact representation of
complex data types. You can use entity relationships only for XML and XSD
files.
When
Intelligent Structure Discovery
generates entity relationships, it uses the following
rules:
Intelligent Structure Discovery
adds a primary key with the name
<group name>_PK
to every output
group.
Intelligent Structure Discovery
generates an output group for the
following global elements:
The root
element
Elements that
are part of a recursive reference
Repeated
elements with the indicator
maxOccurs =
"unbounded"
Intelligent Structure Discovery
adds foreign keys to output groups
based on global elements for each output group that refers to
the global element. The foreign keys use the name
<parent group name>_FK
. If there are
multiple parent groups that refer to the global element, the
output group for the global element has multiple foreign keys.
Intelligent Structure Discovery
generates an output group for every
complex type. The name of the output group is the name of the
complex type.
If a complex type has a
one-to-one relationship with its parent element,
Intelligent Structure Discovery
adds a foreign key with the name
<parent element name>_<type
name>_FK
to the output group of the complex
type.
If there is a
one-to-many or many-to-many relationship between a complex type
and its parent elements,
Intelligent Structure Discovery
generates a bridge table called
<group name 1>_<group name 2>
.
The bridge table includes only a primary key, a foreign key to
the first output group, and a foreign key to the second output
group.
In every output group, the first field is the generated primary key,
followed by any foreign keys, and then the fields present in the schema.