Package asd version 1.09 changes from version 1.08: ASDParser's (version 1.06) method of checking for uniquely parsed subphrases has been extended so that it does NOT consider a subphrase to be uniquely parsed if the initial grammar node for the subphrase has one or more edges coming into it in the grammar. (In that case, there may be another path to that node in the grammar, via a non- initial advance along that incoming edge.) Class ASDGrammar has been modified to provide supporting methods for this change. In particular, when loading an ASDGrammar from a file, it marks all nodes that have one or more incoming edges. At the same time it also checks for any invalid edges in the grammar -- i.e., edges to non-existent nodes -- and writes corresponding error messages to System.out. ASDParser's bracketPhrase method has been changed to produce fewer unnecessary parentheses. Specifically, it does not put parentheses around a subphrase if the subphrase has only one non-dummy node in it. An ASDCheck utility has been added that uses ASDGrammar to load an ASDGrammar file as a grammar network. It then checks the network for the following errors: * edges to non-existent nodes (These are detected by ASDGrammar when loading the grammar), * words or phrase types with no instances (nodes), * non-initial nodes with no incoming edges (predecessors), * non-final nodes with no outgoing edges (successors), Then it reports the following totals: * the number of words and phrase types in the grammar, * the number of nodes in the grammar network, * the number of valid edges in the grammar network. Command-line usage: java asd/ASDCheck grammarFileName A MergeGrammars utility has been added that permits merging of ASD grammar files according to a "build" list of grammar file names. When many files are to be merged, this is faster than merging them one at a time with ASDEditor. Command-line usage: java asd/MergeGrammars < buildList.txt where buildList.txt contains a list of file names, one per grammar, on separate lines. The first name in the list is for the file to contain the resulting merged grammar. The remaining names in the list are for the grammar files to be merged, in the order in which they are to be merged. Example: If buildList.txt contains the names result.grm grammar1.grm grammar2.grm then MergeGrammars will merge grammar2.grm into grammar1.grm and save the merged grammar as result.grm. Neither grammar1.grm nor grammar2.grm will be changed. ------------------------------------------------------------------- Package asdx version 1.06 changes from version 1.05: ASDTester (version 1.06) has been modified to permit a command-line parameter to specify the maximum number of parse steps to be permitted before the parser pauses, when it is trying to find a complete parse of a phrase or all remaining parses of a phrase. The default maximum number of steps between pauses is 10000. To specify a different number of steps between pauses, include the number in the command line that invokes ASDTester. Example: java asdx/ASDTester 5000 More menu items have been added to the Action and pane menus, to permit display of the bracketed phrase or of the phrase structure tree at any time -- for example when the parser has paused by reaching the maximum number of steps between pauses. ASDTester now displays numbers of backup steps in addition to numbers of advance steps taken by the parser to reach a given point in a parse.