T-rule
From UNL Wiki
(Difference between revisions)
Line 14: | Line 14: | ||
== Types == | == Types == | ||
− | + | According to their syntax and behavior, T-rules may be divided in: | |
− | * | + | *LL (list-to-list) rules: alter a list structure |
− | * | + | *TT (tree-to-tree) rules: alter a tree structure |
− | * | + | *NN (network-to-network) rules: alter a network structure |
+ | *LT (list-to-tree) rules: convert a list structure into a tree structure | ||
+ | *TL (tree-to-list) rules: convert a tree structure into a linear structure | ||
+ | *TN (tree-to-network) rules: convert a tree structure into a network structure | ||
+ | *NT (network-to-tree) rules: convert a network structure into a tree structure | ||
== Examples == | == Examples == | ||
Line 43: | Line 47: | ||
;NT rules | ;NT rules | ||
*agt(%a;%b):=XB(%a;%b); replaces the relation agt between two nodes %a and %b by a relation XB between the same nodes | *agt(%a;%b):=XB(%a;%b); replaces the relation agt between two nodes %a and %b by a relation XB between the same nodes | ||
+ | |||
+ | == Special types of T-rules == | ||
+ | According to their behavior, T-rules may also be classified in: | ||
+ | *[[A-rule]]s (affixation rules) apply over isolated word forms (as to generate possible inflections); | ||
+ | *[[L-rule]]s (linear rules) apply over lists of word forms (as to provide transformations in the surface structure); | ||
+ | *[[S-rule]]s (syntactic rules) apply over trees (as to modify the syntactic configuration). | ||
== Further information == | == Further information == | ||
For further information on t-rules, see the [[UNL Grammar Specs]] | For further information on t-rules, see the [[UNL Grammar Specs]] |
Revision as of 19:53, 17 September 2012
T-rules, or transformation rules, are rules that alter the state of the nodes. They are used for normalization, for syntactic analysis and for semantic interpretation. The set of the t-rules form the Transformation grammar, or T-Grammar.
Contents |
Syntax
As describe in the UNL Grammar Specs, T-rules follow the general formalism:
<INITIAL STATE>:=<FINAL STATE>;
And may be classified according to the type of modification that they promote:
- LL, or list-to-list, where the initial state and the final state are list structures
- TT, or tree-to-tree, where the initial state and the final state are tree structures
- NN, or network-to-network, where the initial state and the final state are network structures
- LT, or list-to-tree, converts lists into trees
- TL, or tree-to-list, converts trees into lists
- TN, or tree-to-networks, converts trees into networks
- NT, or network-to-trees, converts networks into trees
Types
According to their syntax and behavior, T-rules may be divided in:
- LL (list-to-list) rules: alter a list structure
- TT (tree-to-tree) rules: alter a tree structure
- NN (network-to-network) rules: alter a network structure
- LT (list-to-tree) rules: convert a list structure into a tree structure
- TL (tree-to-list) rules: convert a tree structure into a linear structure
- TN (tree-to-network) rules: convert a tree structure into a network structure
- NT (network-to-tree) rules: convert a network structure into a tree structure
Examples
- LL rules
- (BLK):=; deletes a node that has the feature BLK
- (A):=(+B); add the feature B to a node having the feature A
- (A):=(-A); remove the feature A from a node having the feature A
- (A):=(B)(C); replaces a node having the feature A by two nodes having the features B and C, respectively
- (A)(B):=(C); replaces two nodes having the features A and B, respectively, by a node having the feature C
- TT rules
- XB(A;B):=; deletes the relation XB between two nodes having the features A e B, respectively]
- XB(A;B):=XA(C;D); replaces the relation XB between two nodes having the features A and B, respectively, by a a relation XA between two nodes having the features C and D
- XB(A;B):=XB(+C;-B); adds the feature C to the source argument and removes the feature B from the target argument of a relation XB where the the source node has the feature A and the target node has the feature B
- XB(A;B):=+XC(C;D); adds the relation XC between two nodes having the features C and D, respectively, to the graph where exists a relation XB between two nodes having the feature A and B, respectively
- NN rules
- agt(A;B):=; deletes the relation agt between two nodes having the features A e B, respectively]
- agt(A;B):=obj(C;D); replaces the relation agt between two nodes having the features A and B, respectively, by a a relation obj between two nodes having the features C and D
- agt(A;B):=agt(+C;-B); adds the feature C to the source argument and removes the feature B from the target argument of a relation agt where the the source node has the feature A and the target node has the feature B
- LT rules
- (A)(B):=XB(C;D); replaces two nodes having the features A and B respectively by a relation XB between two nodes having the features C and D, respectively
- TL rules
- XB(C;D):=(A)(B); replaces the relation XB between two nodes having the features C and D, respectively, by two nodes having the features A and B, respectively
- TN rules
- XB(%a;%b):=agt(%a;%b); replaces the relation XB between two nodes %a and %b by a relation agt between the same nodes
- NT rules
- agt(%a;%b):=XB(%a;%b); replaces the relation agt between two nodes %a and %b by a relation XB between the same nodes
Special types of T-rules
According to their behavior, T-rules may also be classified in:
- A-rules (affixation rules) apply over isolated word forms (as to generate possible inflections);
- L-rules (linear rules) apply over lists of word forms (as to provide transformations in the surface structure);
- S-rules (syntactic rules) apply over trees (as to modify the syntactic configuration).
Further information
For further information on t-rules, see the UNL Grammar Specs