' Licensed under the Apache License, Version 2.0 (the "License");
' You may not use this file except in compliance with the License.
' You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
' Unless required by  applicable law or agreed to in writing, software distributed under the License is distributed
' on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
' See the License for the specific language governing permissions and limitations under the License.

@startuml

hide empty members

directive_group "1" *-- txn_box

directive_list <|-- directive_group
directive <|-- directive_group
directive "+" *-- directive_list

selection <|-- directive
action  <|-- directive

extractor "1" *-- selection
selection_switch "1" *-- selection
case_list <|-- selection_switch
case <|-- selection_switch
case "+" *-- case_list
directive_group "1" *-- case
comparison "1" *-- case

extraction_string <|-- extractor
extraction_with_modifiers <|-- extractor

extraction_string "1" *-- extraction_with_modifiers
extraction_modifier "+" *-- extraction_with_modifiers

@enduml
