You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
2.6 KiB

From text to speech: The MITalk system
3.Nouns are very often compounded into classifier strings (e.g.
cathode ray tube cleaning fluid).
The local level merely interprets the ATN grammar.
The global parsing strategy proceeds as follows: it looks for the longest noun
group (a noun phrase up to the head noun, possibly including an initial preposition)
that it can find beginning with the first word in the sentence. If it locates one, then
a “node” representing that constituent is constructed, the “current word” pointer is
advanced to the word after that constituent and the process begins again at that
point. If no noun group is found, the parsing logic attempts to find the longest
verb group starting at the word pointer. If it is successful, then a “node” is built,
the pointer is incremented, and the process begins again. If neither type of group
can be found at a certain point in the sentence, no node is created and the pointer is
simply moved to the next word in the sentence and the process begins again.
At the local level, the parser uses the ATN to find a constituent. There are
two pointers, one pointing to the word in the sentence currently being examined
and one pointing to the current state in the net, which begins at the initial state for
noun groups or verb groups. The parser tries each arc leading from the current
state in the order in which they appear in the net. This net is shown in Tables 4-1
(noun group) and 4-2 (verb group).
Testing an arc is done as follows:
1. If the arc label is JUMP or POP, then the exit routine associated with
that arc is tested. If it is successful, then for JUMP the state pointer
is advanced to the destination state (the word pointer is not
incremented), and the process begins again at that state. For POP, a
node is built if the popped constituent is longer than any found so far,
and the process continues with the next arc leaving the state. (That
is, parsing is exhaustive.) If the tests are unsuccessful, then the par-
ser simply checks the next arc leaving the state.
2. If the arc label is a part of speech and the current word does not have
this part of speech, the parser continues with the next arc. If the cur-
rent word does have this part of speech, the exit routine is tested. If
successful, the word pointer is incremented and the state pointer is
advanced to the destination state of the arc. If it fails, the next arc is
attempted. If the parser is to test the next arc for some state and no
arcs remain, then the state pointer is reset to the state from which the
arc led which brought the process to the current state, and the process
begins again with the next arc in the new state.
46