PML_A.mak - Miscellaneous macros for the analytic layer of Prague Dependency Treebank (PDT) 2.0.
This function is only available in TrEd (i.e. in GUI). After a
previous call to AnalyticalTree
, it switches current view back to
a tectogrammatical tree which refers to the current analytical tree.
If the given node is coordination or apposition (i.e. its afun
is Coord
or Apos
) return a list of the corresponding coordination members
(nodes with is_member
flag set). Otherwise return the node itself.
Unless $no_recurse
is true, the function is recursively applied to
those members that are themselves Coord
or Apos
.
This function differs from ExpandCoord in handling coordination
members below AuxP
and AuxC
. While this function returns the
nodes with the is_member
flag (i.e. the nodes below AuxP
and
AuxC
), ExpandCoord returns the AuxP
and AuxC
nodes above
them.
This is a helper function used to identify and reach the actual
coordination or apposition members (carrying is_member
flag) from
child nodes of a Coord
or Apos
.
Given a node, return it if its is_member
attribute is 1.
If its afun
is AuxC
or AuxP
, recurse to the child nodes.
In all other cases return an empty list.
If the given node is coordination or apposition (according to its
Analytical function - attribute afun
) expand it to a list of
coordinated nodes. Otherwise return the node itself. If the argument
keep
is true, include the coordination/apposition node in the list
as well.
This function differs from GetCoordMembers in handling coordination
members below AuxP
and AuxC
. Unlike the latter, it returns the
AuxP
and AuxC
nodes above the actual coordination members.
This is a helper function used to identify coordination or apposition
members among child nodes of a Coord or Apos. It returns 1 if the
given node has is_member
=1 or if it has afun
=AuxC
or AuxP
and a child node for which IsMember (recursively called) returns 1. If
neither of these two conditions is met, the function returns 0.
Return string representation of the given tree (suitable for Analytical trees).
You can use this function as a through
argument to GetEParents and
GetEChildren. It skips all the prepositions and conjunctions when
looking for nodes which is what you usually want.
Return linguistic parent of a given node as appears in an analytic
tree. The argument $through
should supply a function accepting one
node as an argument and returning true if the node should be skipped
on the way to parent or 0 otherwise. The most common DiveAuxCP
is
provided in this package.
Return a list of nodes linguistically dependant on a given
node. $dive
is a function which is called to test whether a given
node should be used as a terminal node (in which case it should return
false) or whether it should be skipped and its children processed
instead (in which case it should return true). Most usual treatment is
provided in DiveAuxCP
. If $dive
is skipped, a function returning 0
for all arguments is used.
Adds given a-node's id
to a/lex.rf
of the given t-node and
adjusts t_lemma
of the t-node accordingly. The third argument
t_file specifies the Treex::PML::Document
object to which the given t-node
belongs.
Appends given a-node's id
to a/aux.rf
of the given t-node. The
third argument t_file specifies the Treex::PML::Document
object to which the
given t-node belongs.
Creates default stylesheet for PML analytical files unless already
defined. Most of the colors it uses can be redefined in the tred
config file .tredrc
by adding a line of the form
CustomColorsomething = ...
The stylesheet is named PML_A
and it has the following display
features:
sentence is displayed in CustomColorsentence
. If the form was
changed (e.g. because of a typo), the original form is displayed in
CustomColorspell
with overstrike.
analytical function is displayed in CustomColorafun
. If the
node's is_member
is set to 1, the type of the structure is
indicated by Co
(coordination) or Ap
(apposition) in
CustomColorcoappa
. For is_parenthesis_root
, Pa
is displayed
in the same color.