imports:
  metadata: commons/metadata.yml
types:
  Node:
    properties:
      id: string
      label: optional<string>
      metadata: optional<metadata.Metadata>
    examples:
      - name: Left
        value:
          id: node-8dvgfja2
          label: left
          metadata:
            id: metadata-kjasf923
            data:
              foo: bar
              baz: qux
      - name: Right
        value:
          id: node-cwda9fi2x
          label: right
          metadata:
            id: metadata-lkasdfv9j
            data:
              one: two
              three: four

  Tree:
    properties:
      nodes: optional<list<Node>>
    examples:
      - name: Root
        value:
          nodes:
            - $Node.Left
            - $Node.Right
