open element is


Return type:
Returns true if the element or one of its ancestors is the specified element, and false otherwise. Replacing is with isnt reverses the result.
open element (of element-expression)? (is | isnt) namespace-modifier? (element-name | element-name-list)


open element is tests whether the element stack of the currently-active parse contains an instance of the element element-name, or one of the elements listed in element-name-list. element-name-list is a parenthesized list of elements, separated by |. Replacing is with isnt will reverse these results.

If element-expression is not specified, the test searches the element stack starting with the current element. If element-expression is specified, the search begins with the element specified by element-expression.

You can specify the name dynamically by using the identity operator (~) followed by a string expression: for example,

  define string function
     f ()
  element #implied when open element is ~f ()