Difference between revisions of "Cross-model ro"

From Apertium
Jump to navigation Jump to search
(Created page with '{{main|Crossdics}} == Cross Model == === Definirea acţiunilor de încrucişare (cross actions) === Acţiunile de încrucişare sunt necesare pentru încrucişarea corectă a p…')
 
Line 90: Line 90:


În exemplul de mai sus:
În exemplul de mai sus:
* <code><v n="cat"/></code> is a variable that can store just one element (for example, <code><s n="adj"/></code>). In this example we use a variable because we need to use the value in the <code>action</code> element. Besides that, we force the value of the first <code><s n="..."/></code> element to be the same. There is another symbol (<code><v/></code>) that can be used if we don't want to use the value afterwards.
* <code><v n="cat"/></code> este o variabilă care poate reţine doar un element (de exemplu, <code><s n="adj"/></code>). În acest exemplu am folosit o variabilă deoarece avem nevoie folosim valoarea în elementul <code>action</code>. Mai forţăm şi valoarea primului element <code><s n="..."/></code> fie identică. Acolo mai este un simbol (<code><v/></code>) care poate fi folosit dacă nu vrem folosim apoi valoarea.
* the tag <code><t/></code> is a sequence of 0 or more <code><s n="..."/></code> elements.
* Eticheta <code><t/></code> este o secvenţă de 0 sau mai multe elemente <code><s n="..."/></code>.
* <code><t n="tailA"/></code> and <code><t n="tailC"/></code> are also sequences of 0 or more <code><s n="..."/></code> elements, but, in this particular case, we store the value in a variable because we need to use it afterwards (in the <code>action</code> element).
* <code><t n="tailA"/></code> şi <code><t n="tailC"/></code> sunt de asemenea secvenţe de 0 sau mai multe elemente <code><s n="..."/></code>, dar, în acest caz particular, stocăm valoarea într-o variabilă pentru trebuie o folosim apoi (în elementul <code>action</code>).


These special tags are explained in the section [[Cross_Model_Elements#Values_for_.3Cs.3E_element|Cross Model Elements]]
These special tags are explained in the section [[Cross_Model_Elements#Values_for_.3Cs.3E_element|Cross Model Elements]]

Revision as of 16:56, 9 January 2011

Main article: Crossdics

Cross Model

Definirea acţiunilor de încrucişare (cross actions)

Acţiunile de încrucişare sunt necesare pentru încrucişarea corectă a perechilor de limbi.

Aceste tipare şi acţiuni sunt descrise în XML. De exemplu:

<!DOCTYPE cross-model SYSTEM "crossmodel.dtd">
<cross-model>
  <cross-action id="pattern-1" a="author">
    <pattern>...</pattern>
    <action-set>...</action-set>
  </cross-action>
  ...
  <cross-action id="pattern-n" a="author">
    <pattern>...</pattern>
    <action-set>...</action-set>
  </cross-action>
</cross-model>

Faceţi click pe oricare element din schema de mai sus sau citiţi mai mult despre elementele unui model de încrucişare.

Exemplu de acţiune-tipar (pattern-action)

Tipar

<cross-action id="pattern-1" a="ebenimeli">
  <description>Pattern 1</description>
  <pattern>
    <e>
      <p>
        <l>$lemmaA<v n="X"/></l>
        <r>$lemmaB<v n="Y"/></r>

    </e>
    <e r="RL">
      <p>
        <l>$lemmaB</l>
        <r>$lemmaC</r>

    </e>
  </pattern>
  <action-set>
    <action>
      <e>
        <p>
          <l>$lemmaA<v n="X"/></l>
          <r>$lemmaC<v n="Y"/></r>

      </e>
    </action>
  </action-set>
</cross-action>

Exemplu cum această acţiune de încrucişare ar putea fi aplicată.

Acţiune de încrucişare implicită

Implicit, unealta apertium-crossdics foloseşte un model de încrucişare simplu (schemas/cross-model.xml). Acesta defineşte o singură regulă pattern-action.

<cross-model>
  <cross-action id="default" a="ebenimeli">
    <description>Default pattern</description>
    <pattern>
      <e>
        <p>
          <l>$lemmaA<v n="cat"/><t n="tailA"/></l>
          <r>$lemmaB<v n="cat"/><t/></r>

      </e>
      <e>
        <p>
          <l>$lemmaB<v n="cat"/><t/></l>
          <r>$lemmaC<v n="cat"/><t n="tailC"/></r>

      </e>
    </pattern>
    <action-set>
      <action>
        <e>
          <p>
            <l>$lemmaA<v n="cat"/><t n="tailA"/></l>
            <r>$lemmaC<v n="cat"/><t n="tailC"/></r>

        </e>
      </action>
    </action-set>
  </cross-action>
</cross-model>

În exemplul de mai sus:

  • <v n="cat"/> este o variabilă care poate reţine doar un element (de exemplu, ). În acest exemplu am folosit o variabilă deoarece avem nevoie să folosim valoarea în elementul action. Mai forţăm şi valoarea primului element să fie identică. Acolo mai este un simbol (<v/>) care poate fi folosit dacă nu vrem să folosim apoi valoarea.
  • Eticheta <t/> este o secvenţă de 0 sau mai multe elemente .
  • <t n="tailA"/> şi <t n="tailC"/> sunt de asemenea secvenţe de 0 sau mai multe elemente , dar, în acest caz particular, stocăm valoarea într-o variabilă pentru că trebuie să o folosim apoi (în elementul action).

These special tags are explained in the section Cross Model Elements

See also

External links