T-rule

From UNL Wiki
(Difference between revisions)
Jump to: navigation, search
(Syntax)
Line 12: Line 12:
 
*TN, or tree-to-networks, converts trees into networks
 
*TN, or tree-to-networks, converts trees into networks
 
*NT, or network-to-trees, converts networks into trees
 
*NT, or network-to-trees, converts networks into trees
 +
 +
== Types ==
 +
*T-rules may be divided 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).
 +
  
 
== Examples ==
 
== Examples ==

Revision as of 19:48, 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

  • T-rules may be divided 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).


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

Further information

For further information on t-rules, see the UNL Grammar Specs

Software