blob: 55587017585950d328c1d2ba6af0185d990ca91e [file] [log] [blame]
Daniel Veillard4a5a9642005-06-27 10:40:55 +00001SAX.setDocumentLocator()
2SAX.startDocument()
3SAX.internalSubset(kanjidic2, , )
4SAX.comment( Version 1.3
5 This is the DTD of the XML-format kanji file combining information from
6 the KANJIDIC and KANJD212 files. It is intended to be largely self-
7 documenting, with each field being accompanied by an explanatory
8 comment.
9
10 The file covers the following kanji:
11 (a) the 6,355 kanji from JIS X 0208;
12 (b) the 5,801 kanji from JIS X 0212;
13 (c) the 3,625 kanji from JIS X 0213 as follows:
14 (i) the 2,741 kanji which are also in JIS X 0212 have
15 JIS X 0213 code-points (kuten) added to the existing entry;
16 (ii) the 884 "new" kanji have new entries.
17
18 At the end of the explanation for a number of fields there is a tag
19 with the format [N]. This indicates the leading letter(s) of the
20 equivalent field in the KANJIDIC and KANJD212 files.
21
22 The KANJIDIC documentation should also be read for additional
23 information about the information in the file.
24 )
25SAX.elementDecl(kanjidic2, 4, ...)
26SAX.elementDecl(header, 4, ...)
27SAX.comment(
28 The single header element will contain identification information
29 about the version of the file
30 )
31SAX.elementDecl(file_version, 3, ...)
32SAX.comment(
33 This field denotes the version of kanjidic2 structure, as more
34 than one version may exist.
35 )
36SAX.elementDecl(database_version, 3, ...)
37SAX.comment(
38 The version of the file, in the format YYYY-NN, where NN will be
39 a number starting with 01 for the first version released in a
40 calendar year, then increasing for each version in that year.
41 )
42SAX.elementDecl(date_of_creation, 3, ...)
43SAX.comment(
44 The date the file was created in international format (YYYY-MM-DD).
45 )
46SAX.elementDecl(character, 4, ...)
47SAX.elementDecl(literal, 3, ...)
48SAX.comment(
49 The character itself in UTF8 coding.
50 )
51SAX.elementDecl(codepoint, 4, ...)
52SAX.comment(
53 The codepoint element states the code of the character in the various
54 character set standards.
55 )
56SAX.elementDecl(cp_value, 3, ...)
57SAX.comment(
58 The cp_value contains the codepoint of the character in a particular
59 standard. The standard will be identified in the cp_type attribute.
60 )
61SAX.attributeDecl(cp_value, cp_type, 1, 2, NULL, ...)
62SAX.comment(
63 The cp_type attribute states the coding standard applying to the
64 element. The values assigned so far are:
65 jis208 - JIS X 0208-1997 - kuten coding (nn-nn)
66 jis212 - JIS X 0212-1990 - kuten coding (nn-nn)
67 jis213 - JIS X 0213-2000 - kuten coding (p-nn-nn)
68 ucs - Unicode 4.0 - hex coding (4 or 5 hexadecimal digits)
69 )
70SAX.elementDecl(radical, 4, ...)
71SAX.elementDecl(rad_value, 3, ...)
72SAX.comment(
73 The radical number, in the range 1 to 214. The particular
74 classification type is stated in the rad_type attribute.
75 )
76SAX.attributeDecl(rad_value, rad_type, 1, 2, NULL, ...)
77SAX.comment(
78 The rad_type attribute states the type of radical classification.
79 classical - as recorded in the KangXi Zidian.
80 nelson - as used in the Nelson "Modern Japanese-English
81 Character Dictionary" (i.e. the Classic, not the New Nelson).
82 This will only be used where Nelson reclassified the kanji.
83 )
84SAX.elementDecl(misc, 4, ...)
85SAX.elementDecl(grade, 3, ...)
86SAX.comment(
87 The Jouyou Kanji grade level. 1 through 6 indicate the grade in which
88 the kanji is taught in Japanese schools. 8 indicates it is one of the
89 remaining Jouyou Kanji to be learned in junior high school, and 9
90 indicates it is a Jinmeiyou (for use in names) kanji. [G]
91 )
92SAX.elementDecl(stroke_count, 3, ...)
93SAX.comment(
94 The stroke count of the kanji, including the radical. If more than
95 one, the first is considered the accepted count, while subsequent ones
96 are common miscounts. (See Appendix E. of the KANJIDIC documentation
97 for some of the rules applied when counting strokes in some of the
98 radicals.) [S]
99 )
100SAX.elementDecl(variant, 3, ...)
101SAX.comment(
102 A cross-reference code to another kanji, usually regarded as a variant.
103 The type of cross-reference is given in the var_type attribute.
104 )
105SAX.attributeDecl(variant, var_type, 1, 2, NULL, ...)
106SAX.comment(
107 The var_type attribute indicates the type of variant code. The current
108 values are:
109 jis208 - in JIS X 0208 - kuten coding
110 jis212 - in JIS X 0212 - kuten coding
111 jis213 - in JIS X 0213 - kuten coding
112 deroo - De Roo number - numeric
113 njecd - Halpern NJECD index number - numeric
114 s_h - The Kanji Dictionary (Spahn & Hadamitzky) - descriptor
115 nelson - "Classic" Nelson - numeric
116 oneill - Japanese Names (O'Neill) - numeric
117 )
118SAX.elementDecl(freq, 3, ...)
119SAX.comment(
120 A frequency-of-use ranking. The 2,500 most-used characters have a
121 ranking; those characters that lack this field are not ranked. The
122 frequency is a number from 1 to 2,500 that expresses the relative
123 frequency of occurrence of a character in modern Japanese. This is
124 based on a survey in newspapers, so it is biassed towards kanji
125 used in newspaper articles. The discrimination between the less
126 frequently used kanji is not strong.
127 )
128SAX.elementDecl(rad_name, 3, ...)
129SAX.comment(
130 When the kanji is itself a radical and has a name, this element
131 contains the name (in hiragana.) [T2]
132 )
133SAX.elementDecl(dic_number, 4, ...)
134SAX.comment(
135 This element contains the index numbers and similar unstructured
136 information such as page numbers in a number of published dictionaries,
137 and instructional books on kanji.
138 )
139SAX.elementDecl(dic_ref, 3, ...)
140SAX.comment(
141 Each dic_ref contains an index number. The particular dictionary,
142 etc. is defined by the dr_type attribute.
143 )
144SAX.attributeDecl(dic_ref, dr_type, 1, 2, NULL, ...)
145SAX.comment(
146 The dr_type defines the dictionary or reference book, etc. to which
147 dic_ref element applies. The initial allocation is:
148 nelson_c - "Modern Reader's Japanese-English Character Dictionary",
149 edited by Andrew Nelson (now published as the "Classic"
150 Nelson).
151 nelson_n - "The New Nelson Japanese-English Character Dictionary",
152 edited by John Haig.
153 halpern_njecd - "New Japanese-English Character Dictionary",
154 edited by Jack Halpern.
155 halpern_kkld - "Kanji Learners Dictionary" (Kodansha) edited by
156 Jack Halpern.
157 heisig - "Remembering The Kanji" by James Heisig.
158 gakken - "A New Dictionary of Kanji Usage" (Gakken)
159 oneill_names - "Japanese Names", by P.G. O'Neill.
160 oneill_kk - "Essential Kanji" by P.G. O'Neill.
161 moro - "Daikanwajiten" compiled by Morohashi. For some kanji two
162 additional attributes are used: m_vol: the volume of the
163 dictionary in which the kanji is found, and m_page: the page
164 number in the volume.
165 henshall - "A Guide To Remembering Japanese Characters" by
166 Kenneth G. Henshall.
167 sh_kk - "Kanji and Kana" by Spahn and Hadamitzky.
168 sakade - "A Guide To Reading and Writing Japanese" edited by
169 Florence Sakade.
170 henshall3 - "A Guide To Reading and Writing Japanese" 3rd
171 edition, edited by Henshall, Seeley and De Groot.
172 tutt_cards - Tuttle Kanji Cards, compiled by Alexander Kask.
173 crowley - "The Kanji Way to Japanese Language Power" by
174 Dale Crowley.
175 kanji_in_context - "Kanji in Context" by Nishiguchi and Kono.
176 busy_people - "Japanese For Busy People" vols I-III, published
177 by the AJLT. The codes are the volume.chapter.
178 kodansha_compact - the "Kodansha Compact Kanji Guide".
179 )
180SAX.attributeDecl(dic_ref, m_vol, 1, 3, NULL, ...)
181SAX.comment(
182 See above under "moro".
183 )
184SAX.attributeDecl(dic_ref, m_page, 1, 3, NULL, ...)
185SAX.comment(
186 See above under "moro".
187 )
188SAX.elementDecl(query_code, 4, ...)
189SAX.comment(
190 These codes contain information relating to the glyph, and can be used
191 for finding a required kanji. The type of code is defined by the
192 qc_type attribute.
193 )
194SAX.elementDecl(q_code, 3, ...)
195SAX.comment(
196 The q_code contains the actual query-code value, according to the
197 qc_type attribute.
198 )
199SAX.attributeDecl(q_code, qc_type, 1, 2, NULL, ...)
200SAX.comment(
201 The q_code attribute defines the type of query code. The current values
202 are:
203 skip - Halpern's SKIP (System of Kanji Indexing by Patterns)
204 code. The format is n-nn-nn. See the KANJIDIC documentation
205 for a description of the code and restrictions on the
206 commercial use of this data. [P]
207
208 sh_desc - the descriptor codes for The Kanji Dictionary (Tuttle
209 1996) by Spahn and Hadamitzky. They are in the form nxnn.n,
210 e.g. 3k11.2, where the kanji has 3 strokes in the
211 identifying radical, it is radical "k" in the SH
212 classification system, there are 11 other strokes, and it is
213 the 2nd kanji in the 3k11 sequence. (I am very grateful to
214 Mark Spahn for providing the list of these descriptor codes
215 for the kanji in this file.) [I]
216 four_corner - the "Four Corner" code for the kanji. This is a code
217 invented by Wang Chen in 1928. See the KANJIDIC documentation
218 for an overview of the Four Corner System. [Q]
219
220 deroo - the codes developed by the late Father Joseph De Roo, and
221 published in his book "2001 Kanji" (Bojinsha). Fr De Roo
222 gave his permission for these codes to be included. [DR]
223 misclass - a possible misclassification of the kanji according
224 to one of the code types. (See the "Z" codes in the KANJIDIC
225 documentation for more details.)
226
227 )
228SAX.elementDecl(reading_meaning, 4, ...)
229SAX.comment(
230 The readings for the kanji in several languages, and the meanings, also
231 in several languages. The readings and meanings are grouped to enable
232 the handling of the situation where the meaning is differentiated by
233 reading. [T1]
234 )
235SAX.elementDecl(nanori, 3, ...)
236SAX.comment(
237 Japanese readings that are now only associated with names.
238 )
239SAX.elementDecl(rmgroup, 4, ...)
240SAX.elementDecl(reading, 3, ...)
241SAX.comment(
242 The reading element contains the reading or pronunciation
243 of the kanji.
244 )
245SAX.attributeDecl(reading, r_type, 1, 2, NULL, ...)
246SAX.comment(
247 The r_type attribute defines the type of reading in the reading
248 element. The current values are:
249 pinyin - the modern PinYin romanization of the Chinese reading
250 of the kanji. The tones are represented by a concluding
251 digit. [Y]
252 korean_r - the romanized form of the Korean reading(s) of the
253 kanji. The readings are in the (Republic of Korea) Ministry
254 of Education style of romanization. [W]
255 korean_h - the Korean reading(s) of the kanji in hangul.
256 ja_on - the "on" Japanese reading of the kanji, in katakana. A
257 second attribute r_status, if present, will indicate with
258 a value of "jy" whether the reading is approved for a
259 "Jouyou kanji".
260 ja_kun - the "kun" Japanese reading of the kanji, in hiragana.
261 Where relevant the okurigana is also included separated by a
262 ".". Readings associated with prefixes and suffixes are
263 marked with a "-". A second attribute r_status, if present,
264 will indicate with a value of "jy" whether the reading is
265 approved for a "Jouyou kanji".
266 )
267SAX.attributeDecl(reading, r_status, 1, 3, NULL, ...)
268SAX.comment(
269 See under ja_on and ja_kun above.
270 )
271SAX.elementDecl(meaning, 3, ...)
272SAX.comment(
273 The meaning associated with the kanji.
274 )
275SAX.attributeDecl(meaning, m_lang, 1, 3, NULL, ...)
276SAX.comment(
277 The m_lang attribute defines the target language of the meaning. It
278 will be coded using the two-letter language code from the ISO 639
279 standard. When absent, the value "en" (i.e. English) is implied. [{}]
280 )
281SAX.externalSubset(kanjidic2, , )
282SAX.startElementNs(kanjidic2, NULL, NULL, 0, 0, 0)
283SAX.characters(
284, 1)
285SAX.endElementNs(kanjidic2, NULL, NULL)
286SAX.endDocument()