Tests if the specified element has a sequence of predecessors that complies with the specified Element Types.
Element predecessors are other elements, through which the given element has been reached as it was retrieved from the data source (DSM). See also: What are element predecessors?
For example, this call:
checkPredecessorsByTypes (
  "xs:complexType",
  "xs:%restrictionType"
)
tests if the context element has a predecessor of type 'xs:complexType', which in turn has a predecessor of type 'xs:%restrictionType'.

Parameters:

element

The element whose predecessors are to be found.

If not specified, the generator context element is assumed, which is the same as the call:

checkPredecessorsByTypes (
  contextElement,
  ...
)
See Also: GOMContext.contextElement

Note: When this parameter is null, the function just returns false.

elementTypeSpecs
The variable list parameters, each of which specify target Element Type(s) for the corresponding predecessor (see Specifying Matching Element Types").

The first parameter specifies the matching type(s) of the closest required predecessor of the specified element (see parameter 'element' above). The next parameter specifies the type(s) of the closest predecessor of that predecessor and so on.

Note: When no target Element Type has been specified, the function just returns false.

Returns:
true if the predecessors corresponding all provided Element Type specifications have been found;
false otherwise (or in the case element == null or no target Element Types specified).
See Also:
GOMElement.predecessors, checkPredecessorByType()
${include ../../../refs/element_predecessors.htm} ${include ../../../refs/matching_ets_spec.htm} ${include ../../../refs/element_types.htm}