forked from GitHub/gf-rgl
134 lines
4.7 KiB
Plaintext
134 lines
4.7 KiB
Plaintext
Checking GF Translation Dictionaries
|
|
Aarne Ranta
|
|
May 2015
|
|
|
|
**News**
|
|
|
|
28/5/2015 minor corrections in the text
|
|
|
|
9/5 Link to the current status: https://docs.google.com/spreadsheets/d/1NuLRp86UPjd298LxjhCAGlHsoPypxKpcBJfDab0De90/edit#gid=0
|
|
|
|
9/5/2014 Removed many bogus subcat's revealed by dictionary authors and by FrameNet. Please upgrade your TopDictionary from darcs or github!
|
|
|
|
|
|
==Call for contributions: the generic translation dictionaries of GF==
|
|
|
|
**Wanted**: manual checking of TopDictionary???.gf files in
|
|
[this directory http://www.grammaticalframework.org/lib/src/translator/todo].
|
|
|
|
**Abstract syntax**: [TopDictionary ./TopDictionary.gf], the top-7000 English words from British National Corpus, as sorted by frequency
|
|
[here http://www.kilgarriff.co.uk/BNClists/lemma.num].
|
|
|
|
**Usage**: part of the general translation dictionaries, used for instance in the
|
|
[GF translation demo http://www.grammaticalframework.org/demos/translation.html]. The full dictionaties are the Dictionary* modules
|
|
in the [parent directory ../].
|
|
|
|
**Who**: anyone with good knowledge of the target language and with reasonable knowledge of the GF resource grammar paradigms for it.
|
|
|
|
|
|
==How to do it==
|
|
|
|
Follow these steps for your language. For instance, ToCheckFre.gf, with Fre substituted for any language in this directory.
|
|
+ Make sure to download the latest version of the file.
|
|
+ Make sure you can compile the original file:
|
|
```
|
|
gf ToCheckFre.gf +RTS -K64M
|
|
```
|
|
+ Edit the ``lin`` rules line by line, starting from the beginning. Follow the guidelines in the next section.
|
|
+ Mark the last rule you edit with "---- END edits by AR", where AR is your initials.
|
|
+ Put, as the first line of the file, a comment indicating your last edited rule:
|
|
```
|
|
---- checked by AR till once_Adv in the BNC order
|
|
```
|
|
+ Make sure the resulting file compiles again.
|
|
+ Perform ``diff`` with the old and the new file, just to make sure your changes look reasonable.
|
|
+ Commit your edits into darcs, if you have access to it, or to GF Contributions, or by email to Aarne Ranta. In the last case,
|
|
it is enough to send those lin rules that you have processed.
|
|
+ Inform the gf-dev list that you have done this.
|
|
|
|
|
|
A reasonable batch of revisions is 500 words or more, which should be doable in less than 2 hours. To avoid conflicts and overlapping work,
|
|
don't spend more than one day on a batch of work before submitting it.
|
|
|
|
The already split senses are explained [here ../senses-in-Dictionary.txt].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
==Guidelines==
|
|
|
|
When editing a lin rule, do one of the following:
|
|
- **accept the rule as it is**: remove the tail comment after the rule's terminating semicolon, if there is one. For example:
|
|
```
|
|
lin maintain_V2 = mkV2 (mkV I.entretenir_V2) | mkV2 (mkV I.maintenir_V2) ; -- tocheck
|
|
```
|
|
becomes
|
|
```
|
|
lin maintain_V2 = mkV2 (mkV I.entretenir_V2) | mkV2 (mkV I.maintenir_V2) ;
|
|
```
|
|
- change the linearization, and if the result is OK for you, also deleting the comment. For example,
|
|
```
|
|
lin obviously_Adv = variants{} ; --
|
|
```
|
|
becomes
|
|
```
|
|
lin obviously_Adv = mkAdv "évidemment" ;
|
|
```
|
|
- **suggest split of sense**: add a comment prefixed by "--- split" and more senses, explaining them. For example,
|
|
```
|
|
lin labour_N = mkN "accouchement" masculine | mkN "ouvrage" masculine ; -- tocheck
|
|
```
|
|
might become
|
|
```
|
|
lin labour_N = mkN "travail" "travaux" masculine ; --- split work, childbirth mkN "accouchement"
|
|
```
|
|
To check the meanings of senses that have already been split (by using numbers, e.g. ``time_1_N``), look up the explanations in
|
|
[Dictionary.gf ../Dictionary.gf].
|
|
|
|
- **report an anomaly**: change or leave the rule, and add a comment prefixed by "---- ". For example,
|
|
```
|
|
lin back_Adv = variants{} ;
|
|
```
|
|
might become
|
|
```
|
|
lin back_Adv = mkAdv "en retour" ; ---- no exact translation in Fre
|
|
```
|
|
|
|
- **report on bad subcategory instance** (a common special case of anomaly):
|
|
add a comment prefixed by "---- subcat" to say that the current verb subcat instance
|
|
doesn't make sense to you. This may happen since the subcategories have partly been automatically extracted. It is still good to
|
|
put a suitable verb in place. For example,
|
|
```
|
|
lin come_VS = variants {} ;
|
|
```
|
|
might become
|
|
```
|
|
lin come_VS = mkVS I.venir_V ; ---- subcat
|
|
```
|
|
|
|
|
|
As general guidelines,
|
|
- **Don't just do nothing**, but do one of the things above, until the point where you quit checking.
|
|
- **Maintain the format** of one rule per line, prefixed by ``lin``.
|
|
- **Put the most standard translation as the first variant**, deprecated and slang words later.
|
|
- **Make sure that the morphology comes out correct**.
|
|
- **Make sure to return correct verb subcategorization**.
|
|
- **Don't split senses** if the difference is very small, e.g. one in stylistic rather than semantic value.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|