// Rendered by UMod Pretty Printer at 2024-11-24_11h58m35
// See also the UMod user documentation online.

MODEL TPath =
  EXT Axis SOURCE FROM eu.bandm.tools.tpath.absy.Axis
  EXT Location FROM eu.bandm.tools.location.Location

  TOPLEVEL CLASS
  Item ABSTRACT
        location    OPT Location
  | Test ABSTRACT
  | | NameTest
        prefix      OPT string
        suffix      OPT string
  | | TypeTest ABSTRACT
  | | | Comment
  | | | Node
  | | | Text
  | | | ProcessingInstruction
        target      OPT string
  | Expr ABSTRACT
        forcing     bool
        forced      bool
  | | ValueExpr ABSTRACT
  | | | Literal
        text        string
  | | | Number
        value       float
  | | | VariableReference
        name        string
  | | PathExpr ABSTRACT
  | | | Root
  | | | Step
        base        OPT Expr
        axis        AxisSpecifier
        test        Test
        predicates  SEQ Expr
  | | UnaryExpr ABSTRACT
        arg         Expr
  | | | Neg
  | | | Paren
  | | BinaryExpr ABSTRACT
        left        Expr
        right       Expr
  | | | Filter
  | | | NumericExpr ABSTRACT
  | | | | Plus
  | | | | Minus
  | | | | Mod
  | | | | Mult
  | | | | Div
  | | | EqualityExpr ABSTRACT
  | | | | Eq
  | | | | Neq
  | | | LogicalExpr ABSTRACT
  | | | | And
  | | | | Or
  | | | ComparisonExpr ABSTRACT
  | | | | Lt
  | | | | Geq
  | | | | Gt
  | | | | Leq
  | | | Union
  | | FunctionCall
        name        string
        args        SEQ Expr
  | AxisSpecifier
        axis        Axis

END MODEL // TPath