Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Grammar: det er forskjeller mellom trace-mode og divvun-checker #38

Closed
ilm024 opened this issue Nov 27, 2023 · 35 comments
Closed

Grammar: det er forskjeller mellom trace-mode og divvun-checker #38

ilm024 opened this issue Nov 27, 2023 · 35 comments
Assignees

Comments

@ilm024
Copy link
Contributor

ilm024 commented Nov 27, 2023

echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. " | modes/trace-smjgram.mode
"<Gájka>"
	"gájkka" Pron <smj> <smj> Indef Sg Gen <W:0.0> SELECT:3003 SUBSTITUTE:4189 SUBSTITUTE:4188 #1->1
;	"gájkka" Pron Indef Pl Nom <W:0.0> SELECT:3003
: 
"<dajs>"
	"dat" Pron <smj> <smj> Dem Pl Ela <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &COERROR #2->2 ADD:3726:xmsyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem Pl Ela <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &msyn-numerals-with-demopron #2->2 ADD:3726:xmsyn-numerals-with-demopron COPY:3826:msyn-numerals-with-demopron
msyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 Sg Ela Attr &SUGGEST #2->2 ADD:3726:xmsyn-numerals-with-demopron COPY:3826:msyn-numerals-with-demopron
dat+Pron+Dem+Sg+Ela+Attr	dat
	"dat" Pron <smj> <smj> Dem Pl Ela Attr <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &COERROR #2->2 ADD:3726:xmsyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem Pl Ela Attr <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &msyn-numerals-with-demopron #2->2 ADD:3726:xmsyn-numerals-with-demopron COPY:3826:msyn-numerals-with-demopron
msyn-numerals-with-demopron
: 
"<gietjav>"
	"giehtja" Num Sg Nom <W:0.0> &msyn-numeral-parcasecongr #3->3 ADD:3659:xmsyn-numeral-parcasecongr COPY:3667:msyn-numeral-parcasecongr
msyn-numeral-parcasecongr
	"giehtja" Num <W:0.0> Sg Par &SUGGEST #3->3 ADD:3659:xmsyn-numeral-parcasecongr COPY:3667:msyn-numeral-parcasecongr
giehtja+Num+Sg+Par	gietjat,gietjat
;	"giehtja" Num Sg Acc <W:0.0> REMOVE:2814
: 

men så....

echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. " | divvun-checker -a smj.zcheck -n smjgram | jq .
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in any xml:lang
{
  "errs": [
    [
      "gietjav",
      11,
      18,
      "msyn-numeral-parcasecongr",
      "msyn-numeral-parcasecongr",
      [
        "gietjat"
      ],
      "msyn-numeral-parcasecongr"
    ]
  ],
  "text": "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "
@unhammer
Copy link
Contributor

Siktar du til at det står to forslag i trace-output? I så fall er det berre det at divvun-checker i json-mode vil fjerna duplikat frå lista (ser ut som generatoren gav to strengar for giehtja+Num+Sg+Par)

@albbas
Copy link
Contributor

albbas commented Nov 28, 2023

divvun-checker får ikke med seg dajs-feilen

@unhammer
Copy link
Contributor

Åh, hehe :) Kan du visa output før divvun-suggest-steget? Viss du køyrer ls modes/smjgram[0-9]* så er det vel den med høgast nummer, t.d. modes/smjgram10-cg.mode eller noko slikt.

@albbas
Copy link
Contributor

albbas commented Nov 29, 2023

❯ echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. " | modes/trace-smjgram10-cg.mode 
"<Gájka>"
	"gájkka" Pron <smj> <smj> Indef Sg Gen <W:0.0> SELECT:3003 SUBSTITUTE:4189 SUBSTITUTE:4188 #1->1
;	"gájkka" Pron Indef Pl Nom <W:0.0> SELECT:3003
: 
"<dajs>"
	"dat" Pron <smj> <smj> Dem Pl Ela <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &COERROR #2->2 ADD:3726:xmsyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem Pl Ela <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &msyn-numerals-with-demopron #2->2 ADD:3726:xmsyn-numerals-with-demopron COPY:3826:msyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 Sg Ela Attr &SUGGEST #2->2 ADD:3726:xmsyn-numerals-with-demopron COPY:3826:msyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem Pl Ela Attr <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &COERROR #2->2 ADD:3726:xmsyn-numerals-with-demopron
	"dat" Pron <smj> <smj> Dem Pl Ela Attr <W:0.0> SUBSTITUTE:4189 SUBSTITUTE:4188 &msyn-numerals-with-demopron #2->2 ADD:3726:xmsyn-numerals-with-demopron COPY:3826:msyn-numerals-with-demopron
: 
"<gietjav>"
	"giehtja" Num Sg Nom <W:0.0> &msyn-numeral-parcasecongr #3->3 ADD:3659:xmsyn-numeral-parcasecongr COPY:3667:msyn-numeral-parcasecongr
	"giehtja" Num <W:0.0> Sg Par &SUGGEST #3->3 ADD:3659:xmsyn-numeral-parcasecongr COPY:3667:msyn-numeral-parcasecongr
;	"giehtja" Num Sg Acc <W:0.0> REMOVE:2814
: 
"<rabdaguovlos>"
	"guovllo" N <smj> <smj> Sem/Plc Sg Ela <W:0.0> SUBSTITUTE:4182 SUBSTITUTE:4181 #4->4
		"rabdda" N Sem/Obj Cmp/SgGen Cmp <W:0.0> #4->4
;	"guovllo" N Sem/Plc Sg Acc PxSg3 <W:0.0> REMOVE:3977
;		"rabdda" N Sem/Obj Cmp/SgGen Cmp <W:0.0>
;	"guovllo" N Sem/Plc Sg Gen PxSg3 <W:0.0> REMOVE:3536
;		"rabdda" N Sem/Obj Cmp/SgGen Cmp <W:0.0>
: 
"<la>"
	"liehket" V <smj> <smj> IV Ind Prs Sg2 <W:0.0> MAP:3367 SUBSTITUTE:4184 @+FMAINV SUBSTITUTE:4183 #5->5
	"liehket" V <smj> <smj> IV Ind Prs Sg3 <W:0.0> MAP:3367 SUBSTITUTE:4184 @+FMAINV SUBSTITUTE:4183 #5->5
;	"liehket" V IV Ind Prs ConNeg <W:0.0> REMOVE:3096
: 
"<edna>"
	"ednak" A <smj> <smj> Attr <W:0.0> SELECT:2490 SUBSTITUTE:4181 SUBSTITUTE:4180 #6->7
;	"ednak" Pron Indef Attr <W:0.0> SELECT:2490
: 
"<jåhtålibme>"
	"jåhtålibme" N <smj> <smj> Sem/Act Gram/NomAct Sg Nom <W:0.0> SUBSTITUTE:4182 SUBSTITUTE:4181 #7->7 SETCHILD:3552
	"jåhtålit" Ex/V IV Gram/3syll Der/NomAct N <smj> <smj> Sg Nom <W:0.0> SUBSTITUTE:4182 SUBSTITUTE:4181 #7->7
;	"jåhtålit" V IV Gram/3syll Actio Nom <W:0.0> REMOVE:2761
: 
"<ålgus>"
	"ålgus" Adv <smj> <smj> <W:0.0> SUBSTITUTE:4183 SUBSTITUTE:4182 #8->8
	"ålgustit" V <smj> <smj> TV Gram/3syll Ind Prs Sg3 <W:0.0> MAP:3376 SUBSTITUTE:4184 @+FMAINV SUBSTITUTE:4183 #8->8
"<.>"
	"." CLB <W:0.0> #9->9
: \n

@unhammer
Copy link
Contributor

unhammer commented Dec 4, 2023

Det ser ut som det er lenge sidan giella-smj har fått pakke, så generatoren min er nok litt utdatert, men eg får likevel

$ cat gajka.cg |  divvun-suggest -j -g /usr/share/giella/smj/generator-gramcheck-gt-norm.hfstol |jq .
divvun-suggest WARNING: no errors.xml argument; tags used as error messages.
divvun-suggest: WARNING: No <description> for "msyn-numerals-with-demopron" in any xml:lang
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in any xml:lang
{
  "errs": [
    [
      "dajs",
      6,
      10,
      "msyn-numerals-with-demopron",
      "msyn-numerals-with-demopron",
      [
        "dat"
      ],
      "msyn-numerals-with-demopron"
    ],
    [
      "gietjav",
      11,
      18,
      "msyn-numeral-parcasecongr",
      "msyn-numeral-parcasecongr",
      [
        "gietjat"
      ],
      "msyn-numeral-parcasecongr"
    ]
  ],
  "text": "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. \n"
}

Kan du lasta opp zcheck-fila så eg kan samanlikna?

(Kva betyr forresten setninga? mt-testing via sme gav Alt de #sju kant # #område mye mobilitet ut., eg antar at det ikkje var 100% rett :))

@albbas
Copy link
Contributor

albbas commented Dec 5, 2023

Du finner en smj.zcheck der "dajs" ikke merkes opp her: https://www.dropbox.com/scl/fi/rzlkjqdzwce091f3rtra7/smj.zcheck.zip?rlkey=vb3d959i86lm3ir0r6qsj5vpm&dl=0

@albbas
Copy link
Contributor

albbas commented Dec 5, 2023

Betydning: I alle disse sju utkantsområdene er det mye utflytting

@unhammer
Copy link
Contributor

unhammer commented Dec 5, 2023

image

image

ahem.
anyway.

Eg får reprodusert feilen med divvun-checker, men så blir det rett når eg unzipper fila og køyrer pipelinen med json output

$ unzip smj.zcheck.zip 
$ cd smj.zcheck
$ mkdir -p modes; divvun-gen-sh  -d modes pipespec.xml 
…
$ sed 's/divvun-suggest/divvun-suggest -j/' modes/trace-smjgram.mode > modes/trace-smjgram-j.mode
$ echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "  | sh modes/trace-smjgram-j.mode |jq
divvun-suggest: WARNING: No <description> for "msyn-numerals-with-demopron" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-numerals-with-demopron" in any xml:lang
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in any xml:lang
{
  "errs": [
    [
      "dajs",
      6,
      10,
      "msyn-numerals-with-demopron",
      "msyn-numerals-with-demopron",
      [
        "dat"
      ],
      "msyn-numerals-with-demopron"
    ],
    [
      "gietjav",
      11,
      18,
      "msyn-numeral-parcasecongr",
      "msyn-numeral-parcasecongr",
      [
        "gietjat"
      ],
      "msyn-numeral-parcasecongr"
    ]
  ],
  "text": "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. \n"
}

# but then:

$ echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "  | divvun-checker -a ~/Nedlastingar/smj.zcheck.zip -n smjgram | jq
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in any xml:lang
{
  "errs": [
    [
      "gietjav",
      11,
      18,
      "msyn-numeral-parcasecongr",
      "msyn-numeral-parcasecongr",
      [
        "gietjat"
      ],
      "msyn-numeral-parcasecongr"
    ]
  ],
  "text": "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "
}

@unhammer
Copy link
Contributor

unhammer commented Dec 5, 2023

… forskjellen kjem av at CG-en køyrer i trace:

$ sed 's/divvun-suggest/divvun-suggest -j/' modes/smjgram.mode > modes/smjgram-j.mode

$ echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "  | sh modes/smjgram-j.mode|jq
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-numeral-parcasecongr" in any xml:lang
{
  "errs": [
    [
      "gietjav",
      11,
      18,
      "msyn-numeral-parcasecongr",
      "msyn-numeral-parcasecongr",
      [
        "gietjat"
      ],
      "msyn-numeral-parcasecongr"
    ]
  ],
  "text": "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. \n"
}

Nyaste libdivvun sender -t inn i CG, og då ser me same forskjellen:

$ echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "  |  src/divvun-checker -a ~/Nedlastingar/smj.zcheck.zip -n smjgram 2>/dev/null |grep -c dat
0
$ echo "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. "  |  src/divvun-checker -a ~/Nedlastingar/smj.zcheck.zip -n smjgram -t 2>/dev/null |grep -c dat
1

tippar suggest har ein bug med matching av feilkodar i CG-output

@unhammer
Copy link
Contributor

unhammer commented Dec 5, 2023

image
I --trace blir mapping-lesingane delt opp, mens utan trace er dei på same lesing. Så eigentleg er ikkje-trace-lesinga korrekt her. (Kanskje burde me fjerna &-symbolet frå COERROR så CG aldri finn på å dela opp lesingane slik.)

@unhammer
Copy link
Contributor

unhammer commented Dec 5, 2023

@ilm024 Den er markert &COERROR, men det finst ingen relasjon mot den. Viss du legg inn ein relasjon LEFT frå gietjav, så får du nok det du vil ha, sjølv om du køyrer med divvun-checker:

image

Med det sagt, så burde kanskje divvun-suggest oppdaga og varsla om slikt; eg er berre ikkje heilt sikker på korleis me best gjer det.

@ilm024
Copy link
Contributor Author

ilm024 commented Jan 19, 2024

Nå tar det av med samme problem igjen:

Test 78/78: Valla såjttij dat giergge báhtsám mij ij vuojnnum.

tools/grammarcheckers/tests/REL-msyn-soajtta-PASS.yaml
[78/78][PASS tp] såjttij:såjtij (, ()) => såjttij:[såjtij, sujttij, såttij, såjdij, såjådij, sujttit, såjij, sujttim, sujtti, låjtij] (typo)
tools/grammarcheckers/tests/REL-msyn-soajtta-PASS.yaml
[78/78][PASS tp] ij:ittjij (, ()) => ij:[ittjij] (msyn-sme_bastard_neg)
tools/grammarcheckers/tests/REL-msyn-soajtta-PASS.yaml
[78/78][FAIL fn2] vuojnnum:vuojnnu (, ()) => :[] ()
Test 78 - Passes: 2, Fails: 1, Total: 3

uit-mac-219:lang-smj ilm024$ echo "Valla såjttij dat giergge báhtsám mij ij vuojnnum." | tools/grammarcheckers/modes/trace-smjgram-dev.mode -R
divvun-suggest: WARNING: No for "msyn-sme_bastard_neg" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No for "msyn-sme_bastard_neg" in any xml:lang
divvun-suggest: WARNING: No for "msyn-sme_bastard_neg" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No for "msyn-sme_bastard_neg" in any xml:lang
""
"valla" CC <W:0.0> MAP:2012 SELECT:2046 SUBSTITUTE:4195 @cvp SUBSTITUTE:4194
:
"<såjttij>" såjttij 🖝 såjtij 🖝 sujttij 🖝 såttij 🖝 såjdij 🖝 såjådij 🖝 sujttit 🖝 såjij 🖝 sujttim 🖝 sujtti 🖝 låjtij
"soajttet" V IV Ind Prt Sg3 <W:21.3032> WA:11.3032 "såjtij"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FAUXV MAP:3348 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Ind Prt Sg3 <W:22.5909> WA:12.5909 "sujttij"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sådde" N Sem/Dummytag Pl Com <W:22.5909> WA:12.5909 "såttij"S PROTECT:1240 SELECT:1295 ADD:6:spelled SUBSTITUTE:4186 &SUGGESTWF &typo
typo
"såjdde" A Pl Com <W:26.5909> WA:12.5909 "såjdij"S PROTECT:1240 SELECT:1295 ADD:6:spelled SUBSTITUTE:4185 &SUGGESTWF &typo
typo
"såjådit" V TV Gram/3syll Ind Prt Sg3 <W:26.5909> WA:12.5909 "såjådij"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sådjåt" V IV Der/u/a/åd V Gram/3syll Ind Prt Sg3 <W:26.5909> WA:17.5909 "såjådij"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sådjåt" V IV Der/d V Gram/3syll Ind Prt Sg3 <W:26.5909> WA:17.5909 "såjådij"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Inf <W:31.3032> WA:11.3032 "sujttit"S PROTECT:1240 SELECT:1295 ADD:6:spelled @-FMAINV MAP:3397 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Der/d V Gram/3syll Ind Prs Sg3 <W:31.3032> WA:16.3032 "sujttit"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"soadje" N Sem/Body_Buildpart Pl Com <W:31.5909> WA:11.5909 "såjij"S PROTECT:1240 SELECT:1295 ADD:6:spelled SUBSTITUTE:4186 &SUGGESTWF &typo
typo
"sådje" N Sem/Dummytag Pl Com <W:31.5909> WA:11.5909 "såjij"S PROTECT:1240 SELECT:1295 ADD:6:spelled SUBSTITUTE:4186 &SUGGESTWF &typo
typo
"sujttit" V TV Actio Nom <W:31.5909> WA:11.5909 "sujttim"S PROTECT:1240 SELECT:1295 ADD:6:spelled @x MAP:3429 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV PrfPrc <W:31.5909> WA:11.5909 "sujttim"S PROTECT:1240 SELECT:1295 ADD:6:spelled @-FMAINV MAP:3420 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Der/NomAct N Sg Nom <W:31.5909> WA:16.5909 "sujttim"S PROTECT:1240 SELECT:1295 ADD:6:spelled SUBSTITUTE:4186 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Imprt Sg2 <W:31.5909> WA:11.5909 "sujtti"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Ind Prs Sg2 <W:31.5909> WA:11.5909 "sujtti"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"sujttit" V TV Ind Prs Sg3 <W:31.5909> WA:11.5909 "sujtti"S PROTECT:1240 SELECT:1295 ADD:6:spelled @+FMAINV MAP:3377 SUBSTITUTE:4188 &SUGGESTWF &typo
typo
"loajtte" N Sem/Dummytag Pl Com <W:32.5909> WA:12.5909 "låjtij"S PROTECT:1240 SELECT:1295 ADD:6:spelled SUBSTITUTE:4186 &SUGGESTWF &typo
typo
:
""
"dat" Pron Dem Sg Ela Attr <W:0.0> SUBSTITUTE:4194 SUBSTITUTE:4193
"dat" Pron Dem Sg Par <W:0.0> SUBSTITUTE:4194 SUBSTITUTE:4193
:
""
"giergge" N Sem/Mat_Obj Sg Nom <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4186
:
"<báhtsám>"
"báhtset" V IV PrfPrc <W:0.0> MAP:3385 SUBSTITUTE:4189 @-FMAINV SUBSTITUTE:4188
"báhttse" N Sem/Hum Err/Orth Gram/NomAg Sg Acc PxSg1 <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4186
:
""
"mij" Pron Rel Sg Nom <W:0.0> SELECT:2982 SUBSTITUTE:4194 SUBSTITUTE:4193
:
"" ij 🖝 ittjij
"ij" V IV Neg Ind Prs Sg3 <W:0.0> MAP:3341 SUBSTITUTE:4189 @+FAUXV SUBSTITUTE:4188 &msyn-sme_bastard_neg ID:7 ADD:1811:xmsyn-sme_bastard_neg COPY:1820:msyn-sme_bastard_neg
msyn-sme_bastard_neg
"ij" V IV Neg Ind Prt Sg3 <W:0.0> MAP:3341 SUBSTITUTE:4189 @+FAUXV SUBSTITUTE:4188 &msyn-sme_bastard_neg &SUGGEST ID:7 ADD:1811:xmsyn-sme_bastard_neg COPY:1820:msyn-sme_bastard_neg
ij+V+IV+Neg+Ind+Prt+Sg3 ittjij
:
"" vuojnnum 🖝 vuojnnu
"vuojnnet" Ex/V Ex/TV Der/PassS Ex/V IV Der/NomAct N Sg Nom <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4186 ID:8 R:$2:7
"vuojnnet" Ex/V Ex/TV Der/PassS V IV Actio Nom <W:0.0> SUBSTITUTE:1043 SUBSTITUTE:1048 SUBSTITUTE:1064 MAP:3430 SUBSTITUTE:4189 @x SUBSTITUTE:4188 ID:8 R:$2:7
"vuojnnet" Ex/V Ex/TV Der/PassS V IV PrfPrc <W:0.0> SUBSTITUTE:1043 SUBSTITUTE:1048 SUBSTITUTE:1064 MAP:3385 SUBSTITUTE:4189 @-FMAINV SUBSTITUTE:4188 &COERROR ID:8 R:$2:7 ADD:1829:xmsyn-sme_bastard_neg
"vuojnnet" Ex/V Ex/TV Der/PassS V IV PrfPrc <W:0.0> SUBSTITUTE:1043 SUBSTITUTE:1048 SUBSTITUTE:1064 MAP:3385 SUBSTITUTE:4189 @-FMAINV SUBSTITUTE:4188 &msyn-sme_bastard_neg ID:8 R:$2:7 ADD:1829:xmsyn-sme_bastard_neg ADDRELATION($2):1834 COPY:1840:msyn-sme_bastard_neg
msyn-sme_bastard_neg
"vuojnnet" Ex/V Ex/TV <W:0.0> SUBSTITUTE:1043 SUBSTITUTE:1048 SUBSTITUTE:1064 MAP:3385 SUBSTITUTE:4189 @-FMAINV SUBSTITUTE:4188 Der/PassS V IV Ind ConNeg &SUGGEST ID:8 R:$2:7 ADD:1829:xmsyn-sme_bastard_neg ADDRELATION($2):1834 COPY:1840:msyn-sme_bastard_neg
vuojnnet+Ex/V+Ex/TV+Der/PassS+V+IV+Ind+ConNeg vuojnnu
"vuojnnut" Ex/V IV Der/NomAct N Sg Nom <W:0.0> SUBSTITUTE:4187 SUBSTITUTE:4186 ID:8 R:$2:7
"vuojnnut" V IV Actio Nom <W:0.0> SUBSTITUTE:1078 MAP:3430 SUBSTITUTE:4189 @x SUBSTITUTE:4188 ID:8 R:$2:7
"vuojnnut" V IV PrfPrc <W:0.0> SUBSTITUTE:1078 MAP:3385 SUBSTITUTE:4189 @-FMAINV SUBSTITUTE:4188 &msyn-sme_bastard_neg &COERROR ID:8 R:$2:7 ADD:1829:xmsyn-sme_bastard_neg
msyn-sme_bastard_neg
"<.>"
"." CLB <W:0.0>

@unhammer
Copy link
Contributor

@ilm024 prøvde du å legga inn LEFT-relasjon på den opprinnelege setninga? Altså ein ADDRELATION LEFT frå gietjav til dajs

@ilm024
Copy link
Contributor Author

ilm024 commented Jan 22, 2024

Er det det som gjør at yaml failer selv om Gramchecker foreslår rett?

@unhammer
Copy link
Contributor

unhammer commented Jan 22, 2024

Veit ikkje kva som skjer i yaml-en, men etter det eg forstod blei det feil med divvun-checker òg på "Gájka dajs gietjav rabdaguovlos la edna jåhtålibme ålgus. ", mens i CG-output blei det generert former på to ulike kohortar der den eine var markert COERROR (ein COERROR kan berre gi ekstra info/former til eit anna retteforslag, det er ikkje eit retteforslag i seg sjølv)

@albbas
Copy link
Contributor

albbas commented Jan 25, 2024

Her er output fra divvun-checker:

echo "Valla såjttij dat giergge báhtsám mij ij vuojnnum." | divvun-checker -a tools/grammarcheckers/smj.zcheck -n smjgram |jq .
divvun-suggest: WARNING: No <description> for "msyn-sme_bastard_neg" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-sme_bastard_neg" in any xml:lang
{
  "errs": [
    [
      "såjttij",
      6,
      13,
      "typo",
      "Báhko \"såjttij\" la vuojnnet boasstot tjáleduvvam.",
      [
        "såjtij",
        "sujttij",
        "såttij",
        "såjdij",
        "såjådij",
        "sujttit",
        "såjij",
        "sujttim",
        "sujtti",
        "låjtij"
      ],
      "\"såjttij\" la vuojnnet boasstot tjáleduvvam"
    ],
    [
      "ij",
      38,
      40,
      "msyn-sme_bastard_neg",
      "msyn-sme_bastard_neg",
      [
        "ittjij"
      ],
      "msyn-sme_bastard_neg"
    ]
  ],
  "text": "Valla såjttij dat giergge báhtsám mij ij vuojnnum."
}

@albbas
Copy link
Contributor

albbas commented Jan 25, 2024

divvun-checker klarer av en eller grunn ikke vise den vuojnnum-feilen

@unhammer
Copy link
Contributor

Aha, same problem: vuojnnum er markert COERROR, så då skal ikkje dette ordet ha retteforslag, det gir info til eit anna ord sine forslag. Men det finst ingen andre ord som har relasjonar mot vuojnnum.

@unhammer
Copy link
Contributor

unhammer commented Jan 25, 2024

Eg la inn ei endring i libdivvun som gjer at du kan skriva COERROR i staden for &COERROR (kjem i nightly i morgon/overimorgon). CG-filene må endrast, men då vil me sleppa den forskjellen mellom trace-modus og ikkje-trace. Dette bør gjera det enklare å debugga når ting blir feil.

@ilm024
Copy link
Contributor Author

ilm024 commented Jan 25, 2024

Så må vi endre i yaml-testene? Slik at slike feil som gjelder flere ord bare markeres som en feil?

@unhammer
Copy link
Contributor

Eg veit ikkje korleis yaml-testane fungerer, men generelt er det slik at når fleire ord skal endrast som ein del av eitt retteforslag, så må ein velja éitt ord til å vera det «sentrale», og det må ha relasjon RIGHT/LEFT mot dei andre (som er tagga COERROR).

@albbas
Copy link
Contributor

albbas commented Jan 26, 2024

Eg veit ikkje korleis yaml-testane fungerer

En test er en setning der feilene er merket opp, med retteforslag. Den konverteres til json á la divvun-checker sitt format. Deretter sendes den originale, urettede versjonen av setningen gjennom divvun-checker, og testeprogrammet sammenligner om de oppmerkede feilene er på samme plass som divvun-checker mener de er. Om de er det, sjekker testeprogrammet om divvun-checker sitt forslag inneholder den korrekte formen som står i feiloppmerkingen i testen. Om alt stemmer blir det tommel opp.

@unhammer
Copy link
Contributor

Eg antar testane alltid plukkar «første» forslag, og ikkje bryr seg om ei retting er delt i to retteforslag vs. eitt som dekker fleire ord?

@albbas
Copy link
Contributor

albbas commented Jan 26, 2024

Tja, jo, kanskje … Men i alle fall, om vi tar eksemplet som Inga har her ovenfor:

Den oppmerkede setningen ser slik ut: Valla {såjttij}£{såjtij} dat giergge báhtsám mij {ij}£{ittjij} {vuojnnum}£{vuojnnu}.

For at det skal bli tommel opp, må svaret fra divvun-checker ha en flik som ser ut noe á la dette:

    [
      "vuojnnum",
      41,
      50,
      "co-error-kode",
      "co-error-kode",
      [
        "vuojnnu"
      ],
      "co-error-kode"
    ]

Og for å få blåstrek i LibreOffice, så må vel divvun-checker produsere noe slikt?

@unhammer
Copy link
Contributor

unhammer commented Jan 29, 2024

Ja, men den kan gi 1 blåstrek over heile ij vuojnnum eller 2 ulike blåstrekar, éin på ij og éin på vuojnnum slik at det er mogleg å retta dei uavhengig av kvarandre. Bryr yaml-testane seg om den forskjellen?

@lynnda-hill
Copy link
Contributor

@unhammer koffor må vi legge inn LEFT? Æ trudde LEFT og RIGHT brukes bare med ADDCOHORT, ihvertfall sier dokumentasjonen det. Vi laga ADDRELATION (ADDRELATION ($2) (PrfPrc &msyn-sme_interference_neg) TO (*-1 (Neg &msyn-sme_interference_neg));) Burde vi isteden skrive ADDRELATIONS?

@lynnda-hill
Copy link
Contributor

lynnda-hill commented Jan 29, 2024

If we write ADDRELATIONS ´($2)(LEFT) (Neg &msyn-sme_interference_neg) TO (*1 (PrfPrc &msyn-sme_interference_neg));´we get the following result:
Skjermbilde 2024-01-29 kl  13 41 49

@lynnda-hill
Copy link
Contributor

lynnda-hill commented Jan 29, 2024

Det samme skjer om vi skriv:

ADDRELATION ($2) (Neg &msyn-sme_interference_neg) TO (*1 (PrfPrc &msyn-sme_interference_neg));
ADDRELATION (LEFT) (PrfPrc &msyn-sme_interference_neg) TO (*-1 (Neg &msyn-sme_interference_neg));

Det er ikkje det vi vil ha, dvs. det som står etter "vuojnnum"-kohorten vil vi ha på "ij"-kohorten (bortsett fra at vi ikkje ønsker "ittjijojnnu"), og det som står etter "ij"-kohorten vil vi ikkje ha separat. Hvorfor går det galt @unhammer ?

@unhammer
Copy link
Contributor

i dette tilfellet skal det vel vera ADDRELATION (RIGHT) frå ij sidan du har COERROR på vuojnnum.

Alternativet er å ikkje ha COERROR på vuojnnum og behandla dei som to separate feil.

@snomos
Copy link
Member

snomos commented Jan 29, 2024

Ja, men den kan gi 1 blåstrek over heile ij vuojnnum eller 2 ulike blåstrekar, éin på ij og éin på vuojnnum slik at det er mogleg å retta dei uavhengig av kvarandre. Bryr yaml-testane seg om den forskjellen?

Etter mitt syn (men eg har ikkje vore så djupt involvert i dette, så kanskje eg legg for mykje i det), så burde denne strukturen i feiloppmerkinga: Valla {såjttij}£{såjtij} dat giergge báhtsám mij {ij}£{ittjij} {vuojnnum}£{vuojnnu}. gje to separate blåe strekar. For at det skal vera ein blå strek burde oppmerkinga vera:

Valla {såjttij}£{såjtij} dat giergge báhtsám mij {ij vuojnnum}£{ittjij vuojnnu}.

Men eg veit ikkje om det er logikken som andre har fylgt.

@albbas
Copy link
Contributor

albbas commented Jan 30, 2024

Oppmerking som følger @lynnda-hill sitt eksempel fra trace-smjegram her ovenfor ville være:

Valla {såjttij}£{såjtij} dat giergge báhtsám mij {{ij}£{ittjij} vuojnnum}£{ittjij vuojnnu}.

og det skal yaml-testen kunne håndtere om divvun-checker svarer med noe á la (i en blåstrek):

[
      "ij vuojnnum",
      38,
      50,
      "co-error-kode",
      "co-error-kode",
      [
        "ihttji vuojnnu"
      ],
      "co-error-kode"
]

@ilm024
Copy link
Contributor Author

ilm024 commented Jan 30, 2024

hvorfor skal "ij" markers som "egen" feil, men ikkje "vuojnnum"? (Ser altså scopinga, men hvorfor er det likevel bare ett ord som markeres selvstendig?)

@albbas
Copy link
Contributor

albbas commented Jan 30, 2024

Slik jeg forstår logikken, så er ij den første feilen som cg melder om. Den blir rettet opp, og da blir vuojnnum feil som en følge av den rettinga. Om jeg misforstår, så kan man gjerne skrive oppmerkingen på en måte som modellerer logikken bedre.

@albbas
Copy link
Contributor

albbas commented Jan 30, 2024

Poenget her er at det som er lengst til høyre i en oppmerkingssgruppe bør være det som kommer ut av divvun-checker som et av retteforslagene og at området feilen ligger i må samsvare både i oppmerkingen og svaret fra divvun-checker.

@unhammer
Copy link
Contributor

unhammer commented Apr 2, 2024

$ echo "Valla såjttij dat giergge báhtsám mij ij vuojnnum." | divvun-checker -a smj.zcheck -n smjgram |jq .
divvun-suggest: WARNING: No <description> for "msyn-sme_interference_neg" in xml:lang 'smj', trying 'en'
divvun-suggest: WARNING: No <description> for "msyn-sme_interference_neg" in any xml:lang
{
  "errs": [
    [
      "såjttij",
      6,
      13,
      "typo",
      "Báhko \"såjttij\" la vuojnnet boasstot tjáleduvvam.",
      [
        "såjtij",
        "sujttij",
        "såttij",
        "såjådij",
        "såjdij",
        "sujttit",
        "sujtti",
        "såjij",
        "sujttiji",
        "sujttim"
      ],
      "\"såjttij\" la vuojnnet boasstot tjáleduvvam"
    ],
    [
      "ij vuojnnum",
      38,
      49,
      "msyn-sme_interference_neg",
      "msyn-sme_interference_neg",
      [
        "ittjij vuojnnu"
      ],
      "msyn-sme_interference_neg"
    ]
  ],
  "text": "Valla såjttij dat giergge báhtsám mij ij vuojnnum."
}

Dette burde bli rett no?

@ilm024 ilm024 closed this as completed Sep 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants