T-rule

From UNL Wiki
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
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]].
+
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.
  
 
== Syntax ==  
 
== Syntax ==  

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

Syntax

As describe in the UNL Grammar Specs, they 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

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