Originally posted by: SystemAdmin
I'm not sure I understand enough about your type tree to say anything for sure, but if you have "Restart" only on Record, then when an invalid field8 is encountered, the Group2 will be invalid; since it's an optional occurrence, the invalid Group2 will probably be thrown away, and the Record that is found will not include any of the stuff that's in Group2. Depending on how the various types are defined, that may be the end of validation for this data (unless the Group2 stuff looks enough like a new Record).
With a "Restart" on Group2, you can have an invalid instance of Group2 in your Record: depending on how Group2 and the various "field"s are defined, you might keep all of Group2 (and recognize that the only thing in error is field8, and, because of it, Group2 itself), or you might not.
A lot of things matter in the type definition, in addition to whether the instance found is considered required or optional. A lot depends on whether the various objects are "known to exist" or not, for example. But the "Restart" attribute is only known within a component list. Since Record and Group2 are at different levels (Group2 is a component of Record), I'd expect the results to be completely different when Group2 has the "Restart" attribute, and I'd expect them to be different again if any of Group2's components had "Restart", too.
#IBM-Websphere-Transformation-Extender#IBMSterlingTransformationExtender#DataExchange