Difference between revisions of "Cross Model Elements"
Jump to navigation
Jump to search
Values for
Line 81: | Line 81: | ||
== Values for <code><s></code> element == |
== Values for <code><s></code> element == |
||
⚫ | |||
<!-- |
|||
⚫ | |||
<e> |
|||
* Constants are elements in lower-case. For example, <code>m</code>, <code>adj</code>, etc. |
|||
<p> |
|||
<r>$lemmaA<s n="adj"/></l> |
|||
<r>$lemmaB<s n="adj"/></r> |
|||
</p> |
|||
</e> |
|||
Use literals (as in <code><s n="adj"/></code>) to match exactly that element. |
|||
=== Variables === |
=== Variables === |
||
Line 90: | Line 96: | ||
There are two types of variables: |
There are two types of variables: |
||
* '''<code>$</code>-elements''': one <code><s></code> element. For example, <code><s n="$cat"/></code> can refer to <code><s n="adj"/></code>. |
|||
* '''<code>@</code>-elements''': are used to indicate a sequence of <code><s></code> elements. In this case, <code><s n="@tail"/></code>, can refer to the sequence <code><s n="n"/><s n="m"/><s n="sg"/></code> |
|||
--> |
|||
Example: |
|||
<e> |
|||
<p> |
|||
<l>$lemmaA<s n="'''$cat'''"/><s n="'''@tailA'''"/></l> |
|||
<r>$lemmaB<s n="$cat"/><s n="*"/></r> |
|||
</p> |
|||
</e> |
|||
If you are not interested in storing the value to use it afterwards, there are 2 other symbols available: <code>?</code> and <code>*</code>: |
|||
* '''<code>?</code>''': same pattern as in <code>$</code>-elements. |
|||
* '''<code>*</code>''': same pattern as in <code>@</code>-elements. |
|||
Example: |
|||
<e> |
|||
<p> |
|||
<l>$lemmaA<s n="n"/>'''<s n="?"/>'''<s n="sg"/></l> |
|||
<r>$lemmaB<s n="n"/>'''<s n="*"/>'''</r> |
|||
</p> |
|||
</e> |
|||
In the example above, <code><s n="?"/></code> might be either <code><s n="m"/></code>, <code><s n="f"/></code>, etc, but the value is not stored in a variable because it's not used in any other place in the cross action. |
|||
[[Category:Documentation]] |
[[Category:Documentation]] |
Revision as of 10:57, 8 February 2008
- Main article: Cross Model
Contents
cross-model
element
cross-model
element is a set of cross actions (cross-action
elements).
<!DOCTYPE cross-model SYSTEM "crossmodel.dtd"> <cross-model> <cross-action id="pattern-1" a="author"> ... </cross-action> <cross-action id="pattern-2" a="author"> ... </cross-action> ... <cross-action id="pattern-n" a="author"> ... </cross-action> </cross-model>
cross-action
element
Each cross actions consists of a pair (pattern,action-set).
<cross-action id="pattern-1" a="author"> <description>Cross action 1</description> <pattern> ... </pattern> <action-set> <action> ... </action> ... <action> ... </action> </action-set> </cross-action>
pattern
element
<pattern> <!-- Element in bilingual dictionary AB--> <e> <p> <l>$lemmaA...</l> <r>$lemmaB...</r>
</e> <!-- Element in bilingual dictionary BC--> <e r="RL"> <p> <l>$lemmaB...</l> <r>$lemmaC...</r>
</e> </pattern>
action-set
element
The action-set
element is a list of actions to be performed when a pair of candidate elements matches the pattern.
<action-set> <action> <e> <p> <l>$lemmaA...</l> <r>$lemmaC...</r>
</e> </action> <action> ... </action> </action-set>
Values for <s>
element
Literals
<e> <p> <r>$lemmaA</l> <r>$lemmaB</r>
</e>
Use literals (as in
) to match exactly that element.
Variables
There are two types of variables:
$
-elements: one<s>
element. For example,<s n="$cat"/>
can refer to<s n="adj"/>
.@
-elements: are used to indicate a sequence of<s>
elements. In this case,<s n="@tail"/>
, can refer to the sequence
Example:
<e> <p> <l>$lemmaA</l> <r>$lemmaB</r>
</e>
If you are not interested in storing the value to use it afterwards, there are 2 other symbols available: ?
and *
:
?
: same pattern as in$
-elements.*
: same pattern as in@
-elements.
Example:
<e> <p> <l>$lemmaA</l> <r>$lemmaB</r>
</e>
In the example above,
might be either
,
, etc, but the value is not stored in a variable because it's not used in any other place in the cross action.