Modeling Augmentation Elements

Augmentation container element

Name

The element name must correspond with the augmented type name, with the "Type" representation term being replaced by "Augmentation".

The Immigration domain augmentation container element for nc:PersonType is "im:PersonAugmentation".

Substitution group

The element must be declared to be substitutable for an augmentation point element.

im:PersonAugmentation (augmentation element) is substitutable for nc:PersonAugmentationPoint (augmentation point).

Augmentation Type

An augmentation container element must have a corresponding augmentation type.

Augmentation container type

Augmentation element im:PersonAugmentation has augmentation type im:PersonAugmentationType.

Name

The type name must correspond with the augmented container element name, with the addition of the "Type" representation term.

Augmentation element im:PersonAugmentation has an augmentation type with the name im:PersonAugmentationType.

Parent type

An augmentation type must extend structures:AugmentationType.

Augmentation type im:PersonAugmentationType extends type structures:AugmentationType.

No further augmentation points

Each augmentation element should replace the augmentation point of the original type. Augmentations of augmentations are not allowed.

  • Augmentation type im:PersonAugmentationType should not contain its own augmentation point element like im:PersonAugmentationPoint.
  • Any substitutions from other namespaces should be made directly on the original augmentation point element for nc:PersonType - nc:PersonAugmentationPoint.

References

Rule Applicability Title
NDR 10-32 INS Element within instance of augmentation type modifies base
NDR 10-33 REF, EXT Only an augmentation type name ends in AugmentationType
NDR 10-34 REF, EXT Schema component with name ending in AugmentationType is an augmentation type
NDR 10-35 REF, EXT Type derived from structures:AugmentationType is an augmentation type
NDR 10-36 REF, EXT Augmentation element type is an augmentation type
NDR 10-37 REF, SET Augmentation elements are not used directly
NDR 11-30 REF, EXT Standard opening phrase for augmentation element data definition
NDR 11-42 REF, EXT Standard opening phrase for augmentation type data definition