rule amalgam { pattern { X [form = "du", upos = "P+D"] } commands { add_node D :> X; % Create a new node called `D` and place it just after `X` X.form = "de"; % Change the form of `X` to `de` X.upos = ADP; % Set the `ADP` tag for the preposition "de" D.form = "le"; % Add the form feature of `D` to `le` D.upos = DET; % Set the `DET` tag for the determiner "le" } }