A conformant parameter is a syntax of a conformant array or a conformant VARYING parameter that represents a set of types that are identical except for their bounds. The bounds of a conformant parameter are determined each time a corresponding actual parameter is passed. The bounds of an actual parameter are available within the routine through identifiers declared in the schema. A conformant parameter can only appear within a formal parameter list. The form of a conformant array parameter is as follows: ARRAY [{lower-bound-id .. upper-bound-id : [[attribute-list]] index-type-id};...] OF [[attribute-list]] {type-id | conformant-parameter-syntax} PACKED ARRAY [lower-bound-id .. upper-bound-id : [[attribute-list]] index-type-id] OF [[attribute-list]] type-id The form of a conformant VARYING parameter is as follows: VARYING [upper-bound-id] OF [[attribute-list]] CHAR The 'lower-bound-id' is an identifier that represents the lower bound of the conformant array's index. The 'upper-bound-id' is an identifier that represents the upper bound of the conformant array's index. The 'attribute-list' is one or more optional identifiers that provide additional information about the conformant array. The 'index-type-id' is the type identifier of the index, which must denote an ordinal type. The 'type-id' is the type identifier of the array components, which can denote any type.