Difference between revisions of "Syntactic labels"

From Apertium
Jump to navigation Jump to search
Line 35: Line 35:


{|class=wikitable
{|class=wikitable
! Tag !! Description
! Tag !! Description !! Examples
|-
|-
| <code>@←SUBJ</code> || Subject, head verb to the left
| <code>@←SUBJ</code> || Subject, head verb to the left ||
|-
|-
| <code>@SUBJ→</code> || Subject, head verb to the right
| <code>@SUBJ→</code> || Subject, head verb to the right ||
|-
|-
| <code>@←OBJ</code> || Direct object, head verb to the left
| <code>@←OBJ</code> || Direct object, head verb to the left ||
|-
|-
| <code>@OBJ→</code> || Direct object, head verb to the right
| <code>@OBJ→</code> || Direct object, head verb to the right ||
|-
|-
| <code>@←IOBJ</code> || Indirect object, head verb to the left
| <code>@←IOBJ</code> || Indirect object, head verb to the left ||
|-
|-
| <code>@IOBJ→</code> || Indirect object, head verb to the right
| <code>@IOBJ→</code> || Indirect object, head verb to the right ||
|-
|-
| <code>@→N</code> || Noun modifier, head noun to the right
| <code>@→N</code> || Noun modifier, head noun to the right ||
|-
|-
| <code>@N←</code> || Noun modifier, head noun to the left
| <code>@N←</code> || Noun modifier, head noun to the left ||
|-
|-
| <code>@→A</code> || Adjective modifier, head noun to the right
| <code>@→A</code> || Adjective modifier, head noun to the right ||
|-
|-
| <code>@A←</code> || Adjective modifier, head noun to the left
| <code>@A←</code> || Adjective modifier, head noun to the left ||
|-
|-
| <code>@IM</code> ||
| <code>@IM</code> || ||
|-
|-
| <code>@SPRED</code> || Subject predicate,
| <code>@SPRED</code> || Subject predicate, ||
|-
|-
| <code>@←SPRED</code> || Subject predicate,
| <code>@←SPRED</code> || Subject predicate, || She is my '''sister''', She is '''blue'''
|-
|-
| <code>@SPRED→</code> || Subject predicate,
| <code>@SPRED→</code> || Subject predicate, ||
|-
|-
| <code>@OPRED</code> || Object predicate,
| <code>@OPRED</code> || Object predicate, ||
|-
|-
| <code>@←OPRED</code> || Object predicate,
| <code>@←OPRED</code> || Object predicate, ||
|-
|-
| <code>@OPRED→</code> || Object predicate,
| <code>@OPRED→</code> || Object predicate, ||
|-
|-
| <code>@+FAUXV</code> || Finite auxiliary verb
| <code>@+FAUXV</code> || Finite auxiliary verb ||
|-
|-
| <code>@-FAUXV</code> || Non-finite auxiliary verb
| <code>@-FAUXV</code> || Non-finite auxiliary verb ||
|-
|-
| <code>@+FMAINV</code> || Finite main verb
| <code>@+FMAINV</code> || Finite main verb ||
|-
|-
| <code>@-FMAINV</code> || Non-finite main verb
| <code>@-FMAINV</code> || Non-finite main verb ||
|-
|-
|-
|-
| <code>@-FSUBJ→</code> || Subject of a non-finite verb
| <code>@-FSUBJ→</code> || Subject of a non-finite verb ||
|-
|-
| <code>@-F←OBJ</code> || Object of a non-finite verb
| <code>@-F←OBJ</code> || Object of a non-finite verb ||
|-
|-
| <code>@-FOBJ→</code> || Object of a non-finite verb
| <code>@-FOBJ→</code> || Object of a non-finite verb ||
|-
|-
| <code>@SPRED←OBJ</code> ||
| <code>@SPRED←OBJ</code> || ||
|-
| <code>@-FADVL</code> || ||
|-
|-
| <code>@-FADVL</code> ||
|-
|-
| <code>@←ADVL</code> || Adverbial modifier, head to the left ||
|-
|-
| <code>@←ADVL</code> || Adverbial modifier, head to the left
| <code>@ADVL→</code> || Adverbial modifier, head to the right ||
|-
|-
| <code>@ADVL→</code> || Adverbial modifier, head to the right
| <code>@ADVL</code> || Adverbial modifier ||
|-
|-
| <code>@ADVL</code> || Adverbial modifier
| <code>@P←</code> || Complement of a preposition ||
|-
|-
| <code>@P←</code> || Complement of a preposition
| <code>@CNP</code> || Local conjunction or subjunction ||
|-
|-
| <code>@CNP</code> || Local conjunction or subjunction
| <code>@CVP</code> || Conjunction or subjunction that joins finite-verb phrases ||
|-
|-
| <code>@CVP</code> || Conjunction or subjunction that joins finite-verb phrases
| <code>@→CS</code> || ||
|-
|-
| <code>@→CS</code> ||
| <code>@CNP-VP</code> || Ambiguous co-ordinator ||
|-
|-
| <code>@CNP-VP</code> || Ambiguous co-ordinator
| <code>@APP</code> || Apposition ||
|-
|-
|-
| <code>@APP</code> || Apposition
| <code>@ICL-ADVL</code> || Non-finite subclause ... ||
|-
| <code>@ICL-AUX←</code> || "right" argument of auxiliary (?) ||
|-
|-
| <code>@ICL-OBJ</code> || Non-finite subclause ... ||
|-
|-
| <code>@ICL-ADVL</code> || Non-finite subclause ...
| <code>@ICL-STA</code> || Non-finite subclause ... ||
|-
|-
| <code>@ICL-AUX←</code> || "right" argument of auxiliary (?)
| <code>@HNOUN</code> || Noun phrase fragment ||
|-
|-
| <code>@ICL-OBJ</code> || Non-finite subclause ...
|-
|-
| <code>@ICL-STA</code> || Non-finite subclause ...
| <code>@X</code> || No analysis ||
|-
| <code>@HNOUN</code> || Noun phrase fragment
|-
|-
| <code>@X</code> || No analysis
|-
|-
|}
|}

Revision as of 13:48, 3 March 2010

In some language pairs, syntactic function labels are used to improve disambiguation, or allow tighter transfer rules to be written. For example, disambiguating verb phrase co-ordinators from noun phrase co-ordinators lets you write transfer rules to merge two co-ordinated NPs.

Apertium processes left-to-right longest match, so if we have the following sentence,

  • John kicked the ball and Mary caught it.

And we have a rule for noun cc noun, then we will get the following analysis,

  • John kicked the [ball] and [Mary]

But if we can tag the conjunction as being a global conjunction, then we can avoid lumping the subject of the second sentence with the object of the first sentence.

  • [John kicked the ball] and [Mary caught it]

Example

$ echo "Gud talaði øll hesi orð og segði Hann:" | lt-proc fo-is.automorf.bin | cg-proc fo-is.rlx.bin 
  ^Gud/Gud<np><al><m><sg><acc><@OBJ→>/Gud<np><al><m><sg><nom><@SUBJ→>$ 
  ^talaði/tala<vblex><past><p2><sg><@+FMAINV>/tala<vblex><past><p3><sg><@+FMAINV>$ 
  ^øll/allur<prn><qnt><nt><pl><acc><@←OBJ>$ 
  ^hesi/hesin<prn><dem><nt><pl><acc><@←OBJ>$ 
  ^orð/orð<n><nt><sg><acc><ind><@←OBJ>/orð<n><nt><pl><acc><ind><@←OBJ>$ 
  ^og/og<cnjcoo><@CNP>/og<cnjsub><@CVP>$ 
  ^segði/siga<vblex><past><p3><sg><@+FMAINV>$ 
  ^Hann/Prnpers<prn><p3><m><sg><nom><@←SUBJ>$^:/:<sent>$

Here, we could for example have a rule that moves subjects of a finite main verb that are to the right, to the left. e.g. @+FMAINV @←SUBJ to @→SUBJ @+FMAINV as is the order in English.

Standard syntax tags

These are the uniform tags used in many Giellatekno projects. It isn't necessary to implement all of the analysis, even implementing part of it can prove useful in writing transfer or lexical selection rules.

Tag Description Examples
@←SUBJ Subject, head verb to the left
@SUBJ→ Subject, head verb to the right
@←OBJ Direct object, head verb to the left
@OBJ→ Direct object, head verb to the right
@←IOBJ Indirect object, head verb to the left
@IOBJ→ Indirect object, head verb to the right
@→N Noun modifier, head noun to the right
@N← Noun modifier, head noun to the left
@→A Adjective modifier, head noun to the right
@A← Adjective modifier, head noun to the left
@IM
@SPRED Subject predicate,
@←SPRED Subject predicate, She is my sister, She is blue
@SPRED→ Subject predicate,
@OPRED Object predicate,
@←OPRED Object predicate,
@OPRED→ Object predicate,
@+FAUXV Finite auxiliary verb
@-FAUXV Non-finite auxiliary verb
@+FMAINV Finite main verb
@-FMAINV Non-finite main verb
@-FSUBJ→ Subject of a non-finite verb
@-F←OBJ Object of a non-finite verb
@-FOBJ→ Object of a non-finite verb
@SPRED←OBJ
@-FADVL
@←ADVL Adverbial modifier, head to the left
@ADVL→ Adverbial modifier, head to the right
@ADVL Adverbial modifier
@P← Complement of a preposition
@CNP Local conjunction or subjunction
@CVP Conjunction or subjunction that joins finite-verb phrases
@→CS
@CNP-VP Ambiguous co-ordinator
@APP Apposition
@ICL-ADVL Non-finite subclause ...
@ICL-AUX← "right" argument of auxiliary (?)
@ICL-OBJ Non-finite subclause ...
@ICL-STA Non-finite subclause ...
@HNOUN Noun phrase fragment
@X No analysis

External links