; Meaningless token
;Drive the strawberry.
[
  (*OR*
    (
      (alternate-cats n)
      (capitalization-change capitalize)
      (concepts (
        (class ((direct-object theme) (subject agent)))
        (id *A-DRIVE)
        (valency transitive)))
      (head-root drive)
      (meaning v-drive-1)
      (ortho Drive)
      (pos v)
      (root drive)
      (tokens 1))
    (
      (alternate-cats v)
      (capitalization-change capitalize)
      (concepts ((id *O-DRIVE)))
      (head-root drive)
      (meaning n-drive-1)
      (ortho Drive)
      (pos n)
      (root drive)
      (tokens 1))),
  (
    (concepts ((id *SP-THE)))
    (head-root the)
    (meaning det-the-2)
    (ortho the)
    (pos det)
    (root the)
    (tokens 2)),
  (
    (head-root strawberry)
    (meaningless +)
    (ortho strawberry)
    (root strawberry)
    (tokens 3)),
  (*OR*
    (
      (concepts ((id *SYM-PERIOD)))
      (head-root ".")
      (kce -)
      (meaning "sym-.-4")
      (ortho ".")
      (pos sym)
      (root ".")
      (tokens 4))
      ((head-root ".") (ortho ".") (root ".") (tokens 4)))
]


; Special token, gets automatic addterm (test the $0 syntax)
;Drive the banana.
[
  (*OR*
    (
      (alternate-cats n)
      (capitalization-change capitalize)
      (concepts (
        (class ((direct-object theme) (subject agent)))
        (id *A-DRIVE)
        (valency transitive)))
      (head-root drive)
      (meaning v-drive-1)
      (ortho Drive)
      (pos v)
      (root drive)
      (tokens 1))
    (
      (alternate-cats v)
      (capitalization-change capitalize)
      (concepts ((id *O-DRIVE)))
      (head-root drive)
      (meaning n-drive-1)
      (ortho Drive)
      (pos n)
      (root drive)
      (tokens 1))),
  (
    (concepts ((id *SP-THE)))
    (head-root the)
    (meaning det-the-2)
    (ortho the)
    (pos det)
    (root the)
    (tokens 2)),
  (
    (head-root banana)
    (meaningless +)
    (ortho banana)
    (root banana)
    (tokens 3)),
  (*OR*
    (
      (concepts ((id *SYM-PERIOD)))
      (head-root ".")
      (kce -)
      (meaning "sym-.-4")
      (ortho ".")
      (pos sym)
      (root ".")
      (tokens 4))
      ((head-root ".") (ortho ".") (root ".") (tokens 4)))
]


; Sentence with no problems
;the printer
[
  (
    (concepts ((id *SP-THE)))
    (head-root the)
    (meaning det-the-1)
    (ortho the)
    (pos det)
    (root the)
    (tokens 1)),
  (
    (concepts ((id *O-PRINTER)))
    (head-root printer)
    (meaning n-printer-2)
    (ortho printer)
    (pos n)
    (root printer)
    (tokens 2))]

; Catch elipsis rule
;the printer...on
[
  (
    (concepts ((id *SP-THE)))
    (head-root the)
    (meaning det-the-1)
    (ortho the)
    (pos det)
    (root the)
    (tokens 1)),
  (
    (concepts ((id *O-PRINTER)))
    (head-root printer)
    (meaning n-printer-2)
    (ortho printer)
    (pos n)
    (root printer)
    (tokens 2)),
  (
    (concepts ((id *SYM-PERIOD)))
    (head-root ".")
    (kce -)
    (meaning "sym-.-3")
    (ortho ".")
    (pos sym)
    (root ".")
    (tokens 3)),
  (
    (concepts ((id *SYM-PERIOD)))
    (head-root ".")
    (kce -)
    (meaning "sym-.-4")
    (ortho ".")
    (pos sym)
    (root ".")
    (tokens 4)),
  (
    (concepts ((id *SYM-PERIOD)))
    (head-root ".")
    (kce -)
    (meaning "sym-.-5")
    (ortho ".")
    (pos sym)
    (root ".")
    (tokens 5)),
  (*OR*
    (
      (alternate-cats prep)
      (concepts ((id *P-ON)))
      (head-root on)
      (meaning adj-on-6)
      (morph-comp -)
      (morph-super -)
      (ortho on)
      (pos adj)
      (root on)
      (tokens 6))
    (
      (alternate-cats adj)
      (concepts ((id *K-ON)))
      (head-root on)
      (meaning prep-on-6)
      (ortho on)
      (pos prep)
      (root on)
      (tokens 6)))]
