File: errors.py

package info (click to toggle)
python-xml 0.8.4-10.1%2Blenny1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 4,972 kB
  • ctags: 10,628
  • sloc: python: 46,730; ansic: 14,354; xml: 968; makefile: 201; sh: 20
file content (722 lines) | stat: -rw-r--r-- 33,805 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
# -*- coding: iso-8859-1 -*-
# This file contains the lists of error messages used by xmlproc

import string

# The interface to the outside world

# Todo:
# - 3047 needed in Swedish, Norwegian and French
# - 2024 ditto
# - 2025 ditto
# - 2004 must be retranslated

error_lists={}  # The hash of errors

def add_error_list(language,list):
    error_lists[string.lower(language)]=list

def get_error_list(language):
    return error_lists[string.lower(language)]

def get_language_list():
    return error_lists.keys()

# Errors in English

english={

    # --- Warnings: 1000-1999
    1000: "Undeclared namespace prefix '%s'",
    1002: "Unsupported encoding '%s'",
    1003: "Obsolete namespace syntax",
    1005: "Unsupported character number '%d' in character reference",
    1006: "Element '%s' has attribute list, but no element declaration",
    1007: "Attribute '%s' defined more than once",
    1008: "Ambiguous content model",

    # --- Namespace warnings
    1900: "Namespace prefix names cannot contain ':'s.",
    1901: "Namespace URI cannot be empty",
    1902: "Namespace prefix not declared",
    1903: "Attribute names not unique after namespace processing",

    # --- Validity errors: 2000-2999
    2000: "Actual value of attribute '%s' does not match fixed value",
    2001: "Element '%s' not allowed here",
    2002: "Document root element '%s' does not match declared root element",
    2003: "Element '%s' not declared",
    2004: "Element '%s' ended before required elements found (%s)",
    2005: "Character data not allowed in the content of this element",
    2006: "Attribute '%s' not declared",
    2007: "ID '%s' appears more than once in document",
    2008: "Only unparsed entities allowed as the values of ENTITY attributes",
    2009: "Notation '%s' not declared",
    2010: "Required attribute '%s' not present",
    2011: "IDREF referred to non-existent ID '%s'",
    2012: "Element '%s' declared more than once",
    2013: "Only one ID attribute allowed on each element type",
    2014: "ID attributes cannot be #FIXED or defaulted",
    2015: "xml:space must be declared an enumeration type",
    2016: "xml:space must have exactly one or both of the values 'default' and 'preserve'",
    2017: "'%s' is not an allowed value for the '%s' attribute",
    2018: "Value of '%s' attribute must be a valid name",
    2019: "Value of '%s' attribute not a valid name token",
    2020: "Value of '%s' attribute not a valid name token sequence",
    2021: "Token '%s' in the value of the '%s' attribute is not a valid name",
    2022: "Notation attribute '%s' uses undeclared notation '%s'",
    2023: "Unparsed entity '%s' uses undeclared notation '%s'",
    2024: "Cannot resolve relative URI '%s' when document URI unknown",
    2025: "Element '%s' missing before element '%s'",

    # --- Well-formedness errors: 3000-3999
    # From xmlutils
    3000: "Couldn't open resource '%s'",
    3001: "Construct started, but never completed",
    3002: "Whitespace expected here",
    3003: "Didn't match '%s'",   ## FIXME: This must be redone
    3004: "One of %s or '%s' expected",
    3005: "'%s' expected",
    3047: "encoding '%s' conflicts with autodetected encoding",
    3048: "character set conversion problem: %s",

    # From xmlproc.XMLCommonParser
    3006: "SYSTEM or PUBLIC expected",
    3007: "Text declaration must appear first in entity",
    3008: "XML declaration must appear first in document",
    3009: "Multiple text declarations in a single entity",
    3010: "Multiple XML declarations in a single document",
    3011: "XML version missing on XML declaration",
    3012: "Standalone declaration on text declaration not allowed",
    3045: "Processing instruction target names beginning with 'xml' are reserved",
    3046: "Unsupported XML version",

    # From xmlproc.XMLProcessor
    3013: "Illegal construct",
    3014: "Premature document end, element '%s' not closed",
    3015: "Premature document end, no root element",
    3016: "Attribute '%s' occurs twice",
    3017: "Elements not allowed outside root element",
    3018: "Illegal character number '%d' in character reference",
    3019: "Entity recursion detected",
    3020: "External entity references not allowed in attribute values",
    3021: "Undeclared entity '%s'",
    3022: "'<' not allowed in attribute values",
    3023: "End tag for '%s' seen, but '%s' expected",
    3024: "Element '%s' not open",
    3025: "']]>' must not occur in character data",
    3027: "Not a valid character number",
    3028: "Character references not allowed outside root element",
    3029: "Character data not allowed outside root element",
    3030: "Entity references not allowed outside root element",
    3031: "References to unparsed entities not allowed in element content",
    3032: "Multiple document type declarations",
    3033: "Document type declaration not allowed inside root element",
    3034: "Premature end of internal DTD subset",
    3042: "Element crossed entity boundary",

    # From xmlproc.DTDParser
    3035: "Parameter entities cannot be unparsed",
    3036: "Parameter entity references not allowed in internal subset declarations",
    3037: "External entity references not allowed in entity replacement text",
    3038: "Unknown parameter entity '%s'",
    3039: "Expected type or alternative list",
    3040: "Choice and sequence lists cannot be mixed",
    3041: "Conditional sections not allowed in internal subset",
    3043: "Conditional section not closed",
    3044: "Token '%s' defined more than once",
    # next: 3049

    # From regular expressions that were not matched
    3900: "Not a valid name",
    3901: "Not a valid version number (%s)",
    3902: "Not a valid encoding name",
    3903: "Not a valid comment",
    3905: "Not a valid hexadecimal number",
    3906: "Not a valid number",
    3907: "Not a valid parameter reference",
    3908: "Not a valid attribute type",
    3909: "Not a valid attribute default definition",
    3910: "Not a valid enumerated attribute value",
    3911: "Not a valid standalone declaration",

    # --- Internal errors: 4000-4999
    4000: "Internal error: Entity stack broken",
    4001: "Internal error: Entity reference expected.",
    4002: "Internal error: Unknown error number %d.",
    4003: "Internal error: External PE references not allowed in declarations",

    # --- XCatalog errors: 5000-5099
    5000: "Uknown XCatalog element: %s.",
    5001: "Required XCatalog attribute %s on %s missing.",

    # --- SOCatalog errors: 5100-5199
    5100: "Invalid or unsupported construct: %s.",
    }

# Errors in Norwegian
norsk = english.copy()
norsk.update({

    # --- Warnings: 1000-1999
    1000: "Navneroms-prefikset '%s' er ikke deklarert",
    1002: "Tegn-kodingen '%s' er ikke stttet",
    1003: "Denne navnerom-syntaksen er foreldet",
    1005: "Tegn nummer '%d' i tegn-referansen er ikke stttet",
    1006: "Element '%s' har attributt-liste, men er ikke deklarert",
    1007: "Attributt '%s' deklarert flere ganger",
    1008: "Tvetydig innholds-modell",

    # --- Namespace warnings: 1900-1999
    1900: "Navnerommets prefiks-navn kan ikke inneholde kolon",
    1901: "Navnerommets URI kan ikke vre tomt",
    1902: "Navnerommets prefiks er ikke deklarert",
    1903: "Attributt-navn ikke unike etter navneroms-prosessering",

    # --- Validity errors: 2000-2999
    2000: "Faktisk verdi til attributtet '%s' er ikke lik #FIXED-verdien",
    2001: "Elementet '%s' er ikke tillatt her",
    2002: "Dokumentets rot-element '%s' er ikke det samme som det deklarerte",
    2003: "Element-typen '%s' er ikke deklarert",
    2004: "Elementet '%s' avsluttet, men innholdet ikke ferdig",
    2005: "Tekst-data er ikke tillatt i dette elementets innhold",
    2006: "Attributtet '%s' er ikke deklarert",
    2007: "ID-en '%s' brukt mer enn en gang",
    2008: "Bare uparserte entiteter er tillatt som verdier til ENTITY-attributter",
    2009: "Notasjonen '%s' er ikke deklarert",
    2010: "Pkrevd attributt '%s' mangler",
    2011: "IDREF viste til ikke-eksisterende ID '%s'",
    2012: "Elementet '%s' deklarert mer enn en gang",
    2013: "Bare ett ID-attributt er tillatt pr element-type",
    2014: "ID-attributter kan ikke vre #FIXED eller ha standard-verdier",
    2015: "xml:space m deklareres som en oppramstype",
    2016: "xml:space m ha en eller begge av verdiene 'default' og 'preserve'",
    2017: "'%s' er ikke en gyldig verdi for '%s'-attributtet",
    2018: "Verdien til '%s'-attributtet m vre et gyldig navn",
    2019: "Verdien til '%s'-attributtet er ikke et gyldig NMTOKEN",
    2020: "Verdien til '%s'-attributtet er ikke et gyldig NMTOKENS",
    2021: "Symbolet '%s' i verdien til '%s'-attributtet er ikke et gyldig navn",
    2022: "Notasjons-attributtet '%s' bruker en notasjon '%s' som ikke er deklarert",
    2023: "Uparsert entitet '%s' bruker en notasjon '%s' som ikke er deklarert",

    # --- Well-formedness errors: 3000-3999
    # From xmlutils
    3000: "Kunne ikke pne '%s'",
    3001: "For tidlig slutt p entiteten",
    3002: "Blanke forventet her",
    3003: "Matchet ikke '%s'",   ## FIXME: This must be redone
    3004: "En av %s eller '%s' forventet",
    3005: "'%s' forventet",

    # From xmlproc.XMLCommonParser
    3006: "SYSTEM eller PUBLIC forventet",
    3007: "Tekst-deklarasjonen m st frst i entiteten",
    3008: "XML-deklarasjonen m st frst i dokumentet",
    3009: "Flere tekst-deklarasjoner i samme entitet",
    3010: "Flere tekst-deklarasjoner i samme dokument",
    3011: "XML-versjonen mangler p XML-deklarasjonen",
    3012: "'Standalone'-deklarasjon p tekst-deklarasjon ikke tillatt",

    # From xmlproc.XMLProcessor
    3013: "Syntaksfeil",
    3014: "Dokumentet slutter for tidlig, elementet '%s' er ikke lukket",
    3015: "Dokumentet slutter for tidlig, rot-elementet mangler",
    3016: "Attributtet '%s' gjentatt",
    3017: "Kun ett rot-element er tillatt",
    3018: "Ulovlig tegn nummer '%d' i tegn-referanse",
    3019: "Entitets-rekursjon oppdaget",
    3020: "Eksterne entitets-referanser ikke tillatt i attributt-verdier",
    3021: "Entiteten '%s' er ikke deklarert",
    3022: "'<' er ikke tillatt i attributt-verdier",
    3023: "Slutt-tagg for '%s', men '%s' forventet",
    3024: "Elementet '%s' lukket, men ikke pent",
    3025: "']]>' ikke tillatt i tekst-data",
    3027: "Ikke et gyldig tegn-nummer",
    3028: "Tegn-referanser ikke tillatt utenfor rot-elementet",
    3029: "Tekst-data ikke tillatt utenfor rot-elementet",
    3030: "Entitets-referanser ikke tillatt utenfor rot-elementet",
    3031: "Referanser til uparserte entiteter er ikke tillatt i element-innhold",
    3032: "Mer enn en dokument-type-deklarasjon",
    3033: "Dokument-type-deklarasjon kun tillatt fr rot-elementet",
    3034: "Det interne DTD-subsettet slutter for tidlig",
    3042: "Element krysset entitets-grense",
    3045: "Processing instruction navn som begynner med 'xml' er reservert",
    3046: "Denne XML-versjonen er ikke stttet",

    # From xmlproc.DTDParser
    3035: "Parameter-entiteter kan ikke vre uparserte",
    3036: "Parameter-entitets-referanser ikke tillatt inne i deklarasjoner i det interne DTD-subsettet",
    3037: "Eksterne entitets-referanser ikke tillatt i entitetsdeklarasjoner",
    3038: "Parameter-entiteten '%s' ikke deklarert",
    3039: "Forventet attributt-type eller liste av alternativer",
    3040: "Valg- og sekvens-lister kan ikke blandes",
    3041: "'Conditional sections' er ikke tillatt i det interne DTD-subsettet",
    3043: "'Conditional section' ikke lukket",
    3044: "Symbolet '%s' er definert mer enn en gang",

    # From regular expressions that were not matched
    3900: "Ikke et gyldig navn",
    3901: "Ikke et gyldig versjonsnummer (%s)",
    3902: "Ikke et gyldig tegnkodings-navn",
    3903: "Ikke en gyldig kommentar",
    3905: "Ikke et gyldig heksadesimalt tall",
    3906: "Ikke et gyldig tall",
    3907: "Ikke en gyldig parameter-entitets-referanse",
    3908: "Ikke en gyldig attributt-type",
    3909: "Ikke en gyldig attributt-standard-verdi",
    3910: "Ikke en gyldig verdi for opprams-attributter",
    3911: "Ikke en gyldig verdi for 'standalone'",

    # --- Internal errors: 4000-4999
    4000: "Intern feil: Entitets-stakken korrupt.",
    4001: "Intern feil: Entitets-referanse forventet.",
    4002: "Intern feil: Ukjent feilmelding %d.",
    4003: "Intern feil: Eksterne parameter-entiteter ikke tillatt i deklarasjoner",
    # --- XCatalog errors: 5000-5099
    5000: "Ukjent XCatalog-element: %s.",
    5001: "Pkrevd XCatalog-attributt %s p %s mangler.",

    # --- SOCatalog errors: 5100-5199
    5100: "Ugyldig eller ikke stttet konstruksjon: %s.",
    })

# Errors in Swedish
# Contributed by Marus Brisenfeldt, <marcusb@infotek.no>

svenska = english.copy()
svenska.update({

    # --- Warnings: 1000-1999
    1000: "Namnrymds-prefixet '%s' r inte deklarerat",
    1002: "Systemet stder inte teckenuppsttningen '%s'",
    1003: "Denna namnrymds-syntax r frlegad",
    1005: "Teckennummer '%d' i teckenreferansen stds inte",
    1006: "Ett attribut mste deklareras fr elementet '%s'",
    1007: "Attributet '%s' r deklarerat flera gnger",
    1008: "Tvetydig innhllsmodell",

    # --- Namespace warnings: 1900-1999
    1900: "Namnrymdens prefixnamn kan inte innehlla kolon",
    1901: "Namnrymdens URI fr inte vara tom (mste deklareras)",
    1902: "Namnrymdsprefixet r inte deklarerat",
    1903: "Attribut-namn inte unika efter namnrymds-prosessering",

    # --- Validity errors: 2000-2999
    2000: "Attributet '%s' faktiska vrde r inte likt #FIXED-vrdet",
    2001: "Elementet '%s' tillts inte hr",
    2002: "Dokumentets rot-element '%s' r inte det samma som deklarerat",
    2003: "Elementtypen '%s' r inte deklarerad",
    2004: "Elementet '%s' r avslutat, men innhllet r inte fullstndigt",
    2005: "Textdata (PCDATA) r inte tilltet som innehll i elementet",
    2006: "Attributet '%s' r inte deklarerat",
    2007: "ID't '%s' anvnds mer n en gng",
    2008: "Endast icke 'parsade' entiteter r tilltna som vrden till ENTITY-attribut",
    2009: "Notationen '%s' r inte deklarerad",
    2010: "Erfordligt attribut '%s' saknas",
    2011: "IDREF hnvisar till ett icke existerande ID ('%s')",
    2012: "Elementet '%s' har deklarerats mer n en gng",
    2013: "Endast ett ID-attribut er tilltet per elementtyp",
    2014: "ID-attribut kan inte vara '#FIXED' eller ha ett standardvrde",
    2015: "xml:space mste deklareras som en listtyp",
    2016: "xml:space mste ha en eller bda av vrdena 'default' och 'preserve'",
    2017: "'%s' r inte ett giltigt vrde p attributet '%s'",
    2018: "Vrdet p attributet '%s' mste vara ett giltigt namn",
    2019: "Vrdet p attributet '%s' r inte ett giltigt NMTOKEN",
    2020: "Vrdet p attributet '%s' r inte ett giltigt NMTOKENS",
    2021: "Symbolen '%s' i vrdet p attributet '%s' r inte ett giltigt namn",
    2022: "Notations-attributet '%s' anvnder en notation ('%s') som inte r deklarerad",
    2023: "Icke 'parsad' entitet anvnder en notation ('%s') som inte r deklarerad",

    # --- Well-formedness errors: 3000-3999
    # From xmlutils
    3000: "Systemet kunde inte ppna '%s'",
    3001: "Entitet pbrjad, men inte avslutad",
    3002: "Mellanslag frvntat hr",
    3003: "Matchar inte '%s'",   ## FIXME: This must be redone
    3004: "Antingen %s eller '%s' frvntad",
    3005: "'%s' frvntad",

    # From xmlproc.XMLCommonParser
    3006: "Antingen SYSTEM eller PUBLIC frvntad",
    3007: "Textdeklarationen mste st frst i entiteten",
    3008: "XML-deklarationen mste st frst i dokumentet",
    3009: "Flera textdeklarationer i samma entitet",
    3010: "Flera textdeklarationer i samma dokument",
    3011: "XML-version saknas i XML-deklarationen",
    3012: "'Standalone'-deklaration i textdeklarationen r inte tilltet",

    # From xmlproc.XMLProcessor
    3013: "Syntaxfel",
    3014: "Fr tidigt dokumentslut, elementet '%s' r inte stngt",
    3015: "Fr tidigt dokumentslut, rotelement saknas",
    3016: "Attributet '%s' anvnt tv gnger",
    3017: "Endast ett rotelement r tilltet",
    3018: "Olovlig teckennummer ('%d') i teckenreferansen",
    3019: "Entitets-upprepning upptckt",
    3020: "Externa entitets-referanser r inte tilltna i attributvrden",
    3021: "Entiteten '%s' r inte deklarerad",
    3022: "'<' er inte tilltet i attributvrdet",
    3023: "Sluttagg fr '%s' istllet fr frvntad '%s'",
    3024: "Finner elementet '%s' sluttagg, men inte dess starttagg",
    3025: "']]>' inte tilltet i textdata",
    3027: "Inget giltigt teckennummer",
    3028: "Teckenreferanser r inte tilltna utanfr rotelementet",
    3029: "Textdata r inte tilltet utanfr rotelementet",
    3030: "Entitetsreferanser r inte tilltna utanfr rotelementet",
    3031: "Referanser till icke 'parsade' entiteter tillts inte i elementinnhllet",
    3032: "Multipla dokumenttypsdeklarationer",
    3033: "Dokumenttypsdeklarationer tillts inte i rotelementet",
    3034: "Det interna DTD-subsettet avslutas fr tidigt",
    3042: "Element verskrider entitetsgrns",

    # From xmlproc.DTDParser
    3035: "Parameterentiteter kan inte vara 'oparsade'",
    3036: "Parameterentitetsreferanser tillts inte inne i deklarationer i det interna DTD-subsettet",
    3037: "Externa entitetsreferanser tillts inte i entitetsdeklarationer",
    3038: "Parameterentiteten '%s' r inte deklarerad",
    3039: "Frvntat attributtyp eller lista av alternativ",
    3040: "Val- och sekvenslistor kan inte blandas",
    3041: "'Villkorssektioner' r inte tilltna i den interna DTD-delmngden (subsetet)",
    3043: "'Villkorssektionen' r inte stngd",
    3044: "Symbolen '%s' har definerats mer n en gng",
    3045: "Processinstruktionsnamn som brjar med 'xml' r reserverade",
    3046: "Systemet stder inte anvnd XML-versjon",

    # From regular expressions that were not matched
    3900: "Inget giltigt namn",
    3901: "Inget giltigt versionsnummer",
    3902: "Inget giltigt teckenkodsnamn",
    3903: "Ingen giltig kommentar",
    3905: "Inget giltigt hexadecimalt tal",
    3906: "Inget giltigt tal",
    3907: "Ingen giltig parameterentitetsreferans",
    3908: "Ingen giltig attributtyp",
    3909: "Inge giltigt attributstandardvrde",
    3910: "Ikke en gyldig attributt-standard-verdi",
    3911: "Ikke en gyldig verdi for 'standalone'",

    # --- Internal errors: 4000-4999
    4000: "Internt fel: Entitetsstacken korrupt.",
    4001: "Internt fel: Entitetsreferans frvntad.",
    4002: "Internt fel: Oknt felmeddelande %d.",
    4003: "Internt fel: Externa parameterentiteter tillts inte i deklarationer.",
    # --- XCatalog errors: 5000-5099
    5000: "Oknt XCatalog-element: %s.",
    5001: "Ndvndigt XCatalog-attribut %s p %s saknas.",

    # --- SOCatalog errors: 5100-5199
    5100: "Konstruktionen: %s r ogiltig eller saknar std.",
    })

# Errors in French
# Contributed by Alexandre Fayolle, Logilab. Alexandre.Fayolle@logilab.fr

french = english.copy()
french.update({
    # Les termes franais utiliss sont tirs de l'ouvrage
    # XML, Langage et applications, Alain Michard, Eyrolles
    # ISBN 2-212-09052-8

    # --- Warnings: 1000-1999
    1000: "Prfixe de domaine nominal non dclar '%s'",
    1002: "Encodage non support '%s'",
    1003: "Syntaxe de domaine nominal obsolte",
    1005: "Caractre numro '%d' non support dans la rfrence de caractre",
    1006: "L'lment '%s' a une liste d'attributs mais pas de dclaration d'lment",
    1007: "L'attribute '%s' est dfini plus d'une fois",
    1008: "Modle de contenu ambigu",

    # --- Namespace warnings
    1900: "Les prfixes de domaines nominaux ne peuvent contenir le caractre ':'",
    1901: "L'URI du domaine nominal ne doit pas tre vide",
    1902: "Le prfixe du domaine nominal n'est pas dclar",
    1903: "Le nom d'attribut n'est pas unique aprs traitement des domaines nominaux",

    # --- Validity errors: 2000-2999
    2000: "La valeur de l'attribut '%s' ne correspond pas  la valeur impose",
    2001: "L'lment '%s' ne peut figurer  cet endroit",
    2002: "L'lment racine du document '%s' ne correspond pas  la racine dclare",
    2003: "L'lment '%s' n'a pas t dclar",
    2004: "L'lment '%s' est termin, mais il n'est pas complet",
    2005: "Les donnes ne sont pas autorises comme contenu de cet lment",
    2006: "L'attribut '%s' n'a pas t dclar",
    2007: "L'ID '%s' apparat plusieurs fois dans le document",
    2008: "Seules les entits non XML sont permises dans les attributs ENTITY",
    2009: "La notation '%s' n'a pas t dclare",
    2010: "L'attribut requis '%s' est absent",
    2011: "L'attribut IDREF point sur un ID inexistant '%s'",
    2012: "L'lment '%s' est dclar plus d'une fois",
    2013: "Un seul attribut ID par type d'lment",
    2014: "Les attributs ID nepeuvent tre #FIXED ou avoir de valeur par dfaut",
    2015: "xml:space doit tre de type numration",
    2016: "xml:space doit avoir comme valeurs possibles 'default' et 'preserve'",
    2017: "'%s' n'est pas une valeur autorise pour l'attribut '%s'",
    2018: "La valeur de l'attribut '%s' doit tre un nom valide",
    2019: "La valeur de l'attribut '%s' n'est pas un identifiant de nom valide",
    2020: "La valeur de l'attribut '%s' n'est pas une liste d'identifiants de noms valides",
    2021: "L'identifiant '%s' dans la valeur de l'attribut '%s' n'est pas valide",
    2022: "L'attribut notation '%s' utilise la notation non dclare '%s'",
    2023: "L'entit non XML '%s' utilise la notation non dclare '%s'",

    # --- Well-formedness errors: 3000-3999
    # From xmlutils
    3000: "Impossible d'ouvrir la ressource '%s'",
    3001: "Construction commence mais jamais acheve",
    3002: "Caractres d'espacement attendus  cet endroit",
    3003: "Impossible de faire correspondre '%s'",   ## FIXME: This must be redone
    3004: "'%s' ou '%s' tait attendu",
    3005: "'%s' tat attendu",

    # From xmlproc.XMLCommonParser
    3006: "SYSTEM ou PUBLIC tait attendu",
    3007: "La dclaration de texte doit apparatre en premier dans une entit",
    3008: "La dclaration XML doit apparatre en premier dans un document",
    3009: "Plusieurs dclarations de texte dans une seule entit",
    3010: "Plusieurs dclarations XML dans le document",
    3011: "Il manque la versin d'XML dans la dclaratino XML",
    3012: "Une dclaration indpendante de texte sont interdites",
    3045: "Les noms de cibles d'instruction de traitement commenant par 'xml' sont rservs",
    3046: "Version de XML non supporte",

    # From xmlproc.XMLProcessor
    3013: "Construction illgale",
    3014: "Fin de document prmature, l'lment '%s' n'est pas ferm",
    3015: "Fin de document prmature, pas d'lment racine",
    3016: "L'attribut '%s' apparit deux fois",
    3017: "Les lments ne peuvent apparatre  l'extrieur de l'lment racine",
    3018: "Caractre numro '%d' non support dans la rfrence de caractre",
    3019: "Une entit rcursive a t dtecte",
    3020: "Les rfrences  des entits externes sont interdites dans les valeurs d'attributs",
    3021: "L'entit '%s' n'a pas t dclare",
    3022: "'<' est interdit dans les valeurs d'attributs",
    3023: "La balise de fin pour '%s' a t vue, alors que '%s' tait attendu",
    3024: "L'lment'%s' n'a pas t ouvert",
    3025: "']]>' ne doit pas apparatre dans les sections littrales",
    3027: "Numro de caractre invalide",
    3028: "Les rfrences de caractres sont interdites en dehors de l'lment racine",
    3029: "Les sections littrales sont interdites en dehors de l'lment racine",
    3030: "Les rfrences  des entits sont interdites en dehors de l'lment racine",
    3031: "Les rfrences  des entits non XML sont interdites dans un lment",
    3032: "Il y a de multiples dclaratinos de type de document",
    3033: "La dclaration de type de document est interdite dans l'lment racine",
    3034: "Fin prmature de la DTD interne",
    3042: "Un lment chevauche les limites d'une entit",

    # From xmlproc.DTDParser
    3035: "Les entits paramtres ne peuvent pas tre drfrences",
    3036: "Les rfrences  des entits paramtres sont interdites dans la DTD interne",
    3037: "Les rfrences  des entits externes sont interdites dans le texte de remplacement",
    3038: "L'entit paramtre '%s' est inconnue",
    3039: "Un type une liste de valeurs possibles est attendu",
    3040: "Les liste de choix et les listes de squences ne peuvent tre mlanges",
    3041: "Les sections conditionnelles sont interdites dans la DTD interne",
    3043: "La section conditionnelle n'est pas ferme",
    3044: "Le marqueur '%s' est dfini plusieurs fois",
    # next: 3047

    # From regular expressions that were not matched
    3900: "Nom invalide",
    3901: "Numro de version invalide (%s)",
    3902: "Nom d'encodage invalide",
    3903: "Commentaire invalide",
    3905: "Nombre hexadcimal invalide",
    3906: "Nombre invalide",
    3907: "Rfrence  un paramtre invalide",
    3908: "Type d'attribut invalide",
    3909: "Dfinitionde valeur par dfaut d'attribut invalide",
    3910: "Valeur d'attribut numr invalide",
    3911: "Dclaration autonome invalide",

    # --- Internal errors: 4000-4999
    4000: "Erreur interne : pile dentits casse",
    4001: "Erreur interne : rfrence  une entit attendue.",
    4002: "Erreur interne : numro d'erreur inconnu.",
    4003: "Erreur interne : rfrence  un PE externe interdite dans la dclaration",

    # --- XCatalog errors: 5000-5099
    5000: "L'lment de XCatalog est inconnu : %s.",
    5001: "L'attribut de XCatalog  %s requis sur %s est manquant.",

    # --- SOCatalog errors: 5100-5199
    5100: "Construction invalide ou non supporte : %s.",
    })

# Errors in Spanish
# Contributed by Ricardo Javier Cardenes (ricardo@conysis.com)

spanish = {

    # --- Warnings: 1000-1999
    1000: "Prefijo de espacio de nombres sin declarar '%s'",
    1002: "Codificacin no soportada '%s'",
    1003: "Sintaxis de espacio de nombres obsoleta",
    1005: "Caracter nmero '%d' no soportado en la referencia a caracter",
    1006: "El elemento '%s' tiene lista de atributos, pero no declaracin de elemento",
    1007: "El atributo '%s' est definido ms de una vez",
    1008: "Modelo de contenido ambiguo",

    # --- Namespace warnings
    1900: "Los prefijos de espacio de nombres no pueden contener ':'.",
    1901: "Las URI de los espacios de nombre no pueden estar vacas",
    1902: "Prefijo de espacio de nombres sin declarar",
    1903: "Nombres de atributo repetidos despus de procesar el espacio de nombres",

    # --- Validity errors: 2000-2999
    2000: "El valor real del atributo '%s' no se corresponde al valor fijado",
    2001: "No se permite aqu el elemento '%s'",
    2002: "El elemento '%s' raz del documento no es el mismo que se declar",
    2003: "El elemento '%s' no est declarado",
    2004: "El elemento '%s' termina antes de encontrar los elementos requeridos (%s)",
    2005: "No se permite texto en el contenido de este elemento",
    2006: "El atributo '%s' no ha sido declarado",
    2007: "El ID '%s' aparece ms de una vez en el documento",
    2008: "Slo se permiten entidades sin analizar como valores de los atributos ENTITY",
    2009: "No est declarada la notacin '%s'",
    2010: "No est presente el atributo '%s' necesario",
    2011: "IDREF referida a un ID '%s', que no existe",
    2012: "El elemento '%s' est declarado ms de una vez",
    2013: "Slo se permite un atributo ID por cada tipo de elemento",
    2014: "Los atributos ID no pueden ser #FIXED ni tener valor por defecto",
    2015: "xml:space debe ser declarado como tipo enumerado",
    2016: "xml:space debe tener exactamente los valores 'default' y 'preserve'",
    2017: "'%s' no es un tipo vlido para el atributo '%s'",
    2018: "El valor del atributo '%s' debe ser un nombre vlido",
    2019: "El valor del atributo '%s' no es un NMTOKEN vlido",
    2020: "El valor del atributo '%s' no es un NMTOKENS vlido",
    2021: "El smbolo '%s' en el valor del atributo '%s' no es un nombre vlido",
    2022: "El atributo de notacin '%s' usa la notacin '%s', que no est declarada",
    2023: "La entidad sin analizar '%s' usa la notacin '%s', que no est declarada",
    2024: "No se puede resolver la URI relativa '%s' si se desconoce la URI del documento",
    2025: "No se encuentra el elemento '%s' antes del '%s'",

    # --- Well-formedness errors: 3000-3999
    # From xmlutils
    3000: "No pude abrir el recurso '%s'",
    3001: "Se empez la construccin, pero no se pudo completar",
    3002: "Aqu se esperaba un espacio en blanco",
    3003: "'%s' no se corresponde",   ## FIXME: This must be redone
    3004: "Se esperaba %s o '%s'",
    3005: "Se esperaba '%s'",
    3047: "La codificacin '%s' es conflictiva con la autodetectada",
    3048: "Problema de conversin de conjunto de caracteres: %s",

    # From xmlproc.XMLCommonParser
    3006: "Se esperaba SYSTEM o PUBLIC",
    3007: "La declaracin de texto debe aparecer la primera en la entidad",
    3008: "La declaracin XML debe aparecer la primera en el documento",
    3009: "Varias declaraciones de texto en la misma entidad",
    3010: "Mltiples declaraciones XML en el mismo documento",
    3011: "Falta la versin en la declaracin XML",
    3012: "No se permite una declaracin 'standalone' en una declaracin de texto",
    3045: "Los nombres de PI que comienzan por 'xml' estn reservados",
    3046: "Versin XML no soportada",
    
    # From xmlproc.XMLProcessor
    3013: "Construccin ilegal",
    3014: "El documento acab prematuramente. No se cerr el elemento '%s'",
    3015: "Fin prematuro del documento. No hay elemento raz",
    3016: "El atributo '%s' est duplicado",
    3017: "No se permiten elementos fuera del raz",
    3018: "Caracter ilegal nmero '%d' en la referencia a caracter",
    3019: "Detectada recursividad de entidades",
    3020: "No se permiten referencias a entidades externas en los valores de los atributos",
    3021: "Entidad '%s' sin declarar",
    3022: "No se permite '<' en los valores de atributos",
    3023: "Se encontr la etiqueta de fin de '%s', pero se esperaba '%s'",
    3024: "Element '%s' not open",
    3025: "No debe aparecer ']]>' dentro de datos de texto",
    3027: "No es un nmero de caracter vlido",
    3028: "No se permite la referencia a caracteres fuera del elemento raz",
    3029: "No se admite texto fuera del elemento raz",
    3030: "No se admiten referencias a entidades fuera del elemento raz",
    3031: "No se admiten referencias a entidades sin analizar en el contenido de un elemento",
    3032: "Mltiples declaraciones de tipo de documento",
    3033: "No se admite una declaracin de tipo de documento dentro del elemento raz",
    3034: "Fin prematuro de un subconjunto interno de DTD",
    3042: "Un elemento cruza los lmites de la entidad",

    # From xmlproc.DTDParser
    3035: "Las entidades paramtricas no pueden ser de tipo 'unparsed'",
    3036: "No se permiten referencias a entidades paramtricas en un subconjunto interno de declaraciones",
    3037: "No se permiten referencias a entidades externas en texto de reemplazo de entidades",
    3038: "Entidad paramtrica desconocida '%s'",
    3039: "Se esperaba un tipo o una lista de alternativas",
    3040: "No se puede mezclar listas secuenciales con alternativas",
    3041: "No se admiten secciones condicionales en subconjuntos internos",
    3043: "Seccin condicional sin cerrar",
    3044: "Se defini el smbolo '%s' ms de una vez",
    # next: 3049
    
    # From regular expressions that were not matched
    3900: "No es un nombre vlido",
    3901: "No es un nmero de versin vlido (%s)",
    3902: "No es un nombre de codificacin vlido",
    3903: "No es un comentario vlido",
    3905: "No es un nmero hexadecimal vlido",
    3906: "No es un nmero vlido",
    3907: "No es una referencia a parmetro vlida",
    3908: "No es un tipo de atributo vlido",
    3909: "No es una definicin de atributo por defecto vlida",
    3910: "No es un valor de atributo enumerado vlido",
    3911: "No es una declaracin 'standalone' vlida",
    
    # --- Internal errors: 4000-4999
    4000: "Error interno: Pila de la entidad corrupta",
    4001: "Error interno: Se esperaba una referencia a entidad.",
    4002: "Error interno: Nmero de error desconocido.",
    4003: "Error interno: No se admiten refrencias PE externas en las declaraciones",

    # --- XCatalog errors: 5000-5099
    5000: "Elemento XCatalog desconocido: %s.",
    5001: "Falta el atributo XCatalog %s necesario en %s.",
     
    # --- SOCatalog errors: 5100-5199
    5100: "Construccin invlida o no soportada: %s.",
    }

# Updating the error hash

add_error_list("en", english)
add_error_list("no", norsk)
add_error_list("sv", svenska)
add_error_list("fr", french)
add_error_list("es", spanish)

# Checking

def _test():
    def compare(l1, l2):
        for key in l1:
            if not key in l2:
                print "l1:", key

        for key in l2:
            if not key in l1:
                print "l2:", key

    en = english.keys()
    no = norsk.keys()
    sv = svenska.keys()
    fr = french.keys()
    es = spanish.keys()

    en.sort()
    no.sort()
    sv.sort()
    fr.sort()
    es.sort()

    print "en == no"
    compare(en, no)

    print "en == sv"
    compare(en, sv)

    print "en == fr"
    compare(en, fr)

    print "en == es"
    compare(en, es)

if __name__ == "__main__":
    _test()