From b477da97d43883592d420883f20d137d06e8e2cd Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Mon, 1 Mar 2021 19:01:30 -0500 Subject: [PATCH] Translator refactor (#1473) * Refactor _groupTerms and add doc comment * Update where expression/reading is acquired from * Add doc comment * Add isPrimary field * Update test data * Add definition which has "isPrimary": false definitions --- ext/js/language/translator.js | 25 +- test/data/test-translator-data.json | 3558 +++++++++++++++++++++++++++ 2 files changed, 3578 insertions(+), 5 deletions(-) diff --git a/ext/js/language/translator.js b/ext/js/language/translator.js index e530811b..f5885c05 100644 --- a/ext/js/language/translator.js +++ b/ext/js/language/translator.js @@ -244,7 +244,7 @@ class Translator { if (databaseDefinitions.length === 0) { continue; } maxLength = Math.max(maxLength, rawSource.length); for (const databaseDefinition of databaseDefinitions) { - const definition = await this._createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, rawSource, term, reasons, enabledDictionaryMap); + const definition = await this._createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, rawSource, term, reasons, true, enabledDictionaryMap); definitions.push(definition); } } @@ -358,6 +358,11 @@ class Translator { return deinflections; } + /** + * @param definitions An array of 'term' definitions. + * @param mainDictionary The name of the main dictionary. + * @param enabledDictionaryMap The map of enabled dictionaries and their settings. + */ async _getSequencedDefinitions(definitions, mainDictionary, enabledDictionaryMap) { const sequenceList = []; const sequencedDefinitionMap = new Map(); @@ -393,7 +398,7 @@ class Translator { if (relatedDefinitionIds.has(id)) { continue; } const {source, rawSource, sourceTerm} = relatedDefinitions[0]; - const definition = await this._createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, rawSource, sourceTerm, [], enabledDictionaryMap); + const definition = await this._createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, rawSource, sourceTerm, [], false, enabledDictionaryMap); relatedDefinitions.push(definition); } } @@ -425,7 +430,7 @@ class Translator { const definitions = []; for (const databaseDefinition of databaseDefinitions) { const source = expressionList[databaseDefinition.index]; - const definition = await this._createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, source, source, [], secondarySearchDictionaryMap); + const definition = await this._createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, source, source, [], false, secondarySearchDictionaryMap); definitions.push(definition); } @@ -565,10 +570,16 @@ class Translator { } } + /** + * Groups definitions with the same [source, expression, reading, reasons]. + * @param definitions An array of 'term' definitions. + * @returns An array of 'termGrouped' definitions. + */ _groupTerms(definitions) { const groups = new Map(); for (const definition of definitions) { - const key = this._createMapKey([definition.source, definition.expression, definition.reading, ...definition.reasons]); + const {source, reasons, expressions: [{expression, reading}]} = definition; + const key = this._createMapKey([source, expression, reading, ...reasons]); let groupDefinitions = groups.get(key); if (typeof groupDefinitions === 'undefined') { groupDefinitions = []; @@ -1080,7 +1091,7 @@ class Translator { }; } - async _createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, rawSource, sourceTerm, reasons, enabledDictionaryMap) { + async _createTermDefinitionFromDatabaseDefinition(databaseDefinition, source, rawSource, sourceTerm, reasons, isPrimary, enabledDictionaryMap) { const {expression, reading, definitionTags, termTags, glossary, score, dictionary, id, sequence} = databaseDefinition; const dictionaryOrder = this._getDictionaryOrder(dictionary, enabledDictionaryMap); const termTagsExpanded = await this._expandTags(termTags, dictionary); @@ -1101,6 +1112,7 @@ class Translator { sourceTerm, reasons, score, + isPrimary, sequence, dictionary, dictionaryOrder, @@ -1136,6 +1148,7 @@ class Translator { sourceTerm, reasons: [...reasons], score, + // isPrimary // sequence dictionary: dictionaryNames[0], dictionaryOrder, @@ -1167,6 +1180,7 @@ class Translator { // sourceTerm reasons, score, + // isPrimary // sequence dictionary: dictionaryNames[0], dictionaryOrder, @@ -1216,6 +1230,7 @@ class Translator { // sourceTerm reasons: [], score, + // isPrimary // sequence dictionary: dictionaryNames[0], dictionaryOrder, diff --git a/test/data/test-translator-data.json b/test/data/test-translator-data.json index a4036d61..64bc082c 100644 --- a/test/data/test-translator-data.json +++ b/test/data/test-translator-data.json @@ -294,6 +294,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -460,6 +461,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -638,6 +640,7 @@ "sourceTerm": "打つ", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -812,6 +815,7 @@ "sourceTerm": "打つ", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -986,6 +990,7 @@ "sourceTerm": "打つ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -1160,6 +1165,7 @@ "sourceTerm": "打つ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -1334,6 +1340,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -1500,6 +1507,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -1678,6 +1686,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -1906,6 +1915,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -2134,6 +2144,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -2362,6 +2373,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -2592,6 +2604,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -2768,6 +2781,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -2944,6 +2958,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -3120,6 +3135,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -3294,6 +3310,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -3460,6 +3477,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -3638,6 +3656,7 @@ "sourceTerm": "画像", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 5, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -3783,6 +3802,7 @@ "sourceTerm": "だ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -3961,6 +3981,7 @@ "sourceTerm": "ダース", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -4139,6 +4160,7 @@ "sourceTerm": "うつ", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -4313,6 +4335,7 @@ "sourceTerm": "うつ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -4499,6 +4522,7 @@ "sourceTerm": "ぶつ", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -4673,6 +4697,7 @@ "sourceTerm": "ぶつ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -4859,6 +4884,7 @@ "sourceTerm": "うちこむ", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -5087,6 +5113,7 @@ "sourceTerm": "うちこむ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -5317,6 +5344,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -5493,6 +5521,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -5679,6 +5708,7 @@ "sourceTerm": "ぶちこむ", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -5907,6 +5937,7 @@ "sourceTerm": "ぶちこむ", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -6137,6 +6168,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -6313,6 +6345,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -6499,6 +6532,7 @@ "sourceTerm": "がぞう", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 5, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -6666,6 +6700,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -6814,6 +6849,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -6962,6 +6998,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7110,6 +7147,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7260,6 +7298,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7394,6 +7433,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7528,6 +7568,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7662,6 +7703,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7794,6 +7836,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -7918,6 +7961,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -8249,6 +8293,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -8477,6 +8522,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -8909,6 +8955,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -9137,6 +9184,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -9538,6 +9586,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -9714,6 +9763,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -10042,6 +10092,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -10218,6 +10269,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -10534,6 +10586,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -10842,6 +10895,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -11414,6 +11468,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -11829,6 +11884,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -12244,6 +12300,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -12659,6 +12716,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -13291,6 +13349,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -13608,6 +13667,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -13925,6 +13985,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -14242,6 +14303,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -14683,6 +14745,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -15094,6 +15157,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -15329,6 +15393,7 @@ "polite past negative" ], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -15561,6 +15626,7 @@ "polite past negative" ], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -15793,6 +15859,7 @@ "polite past negative" ], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -16025,6 +16092,7 @@ "polite past negative" ], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -16255,6 +16323,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -16431,6 +16500,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -16607,6 +16677,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -16783,6 +16854,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -16957,6 +17029,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -17123,6 +17196,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -17316,6 +17390,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -17544,6 +17619,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -17772,6 +17848,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -18000,6 +18077,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -18230,6 +18308,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -18406,6 +18485,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -18582,6 +18662,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -18758,6 +18839,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -18932,6 +19014,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -19098,6 +19181,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -19291,6 +19375,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -19519,6 +19604,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 10, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -19747,6 +19833,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -19975,6 +20062,7 @@ "sourceTerm": "打ち込む", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 4, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -20205,6 +20293,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -20381,6 +20470,7 @@ "masu stem" ], "score": 10, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -20557,6 +20647,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -20733,6 +20824,7 @@ "masu stem" ], "score": 1, + "isPrimary": true, "sequence": 3, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -20907,6 +20999,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 1, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -21073,6 +21166,7 @@ "sourceTerm": "打", "reasons": [], "score": 1, + "isPrimary": true, "sequence": 2, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -21268,6 +21362,7 @@ "masu stem" ], "score": 100, + "isPrimary": true, "sequence": 6, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -21381,6 +21476,7 @@ "sourceTerm": "つよみ", "reasons": [], "score": 90, + "isPrimary": true, "sequence": 7, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -21476,6 +21572,7 @@ "polite past" ], "score": 100, + "isPrimary": true, "sequence": 6, "dictionary": "Test Dictionary 2", "dictionaryOrder": 0, @@ -21556,6 +21653,3467 @@ } ] } + }, + { + "comment": "Search merged mode with non-primary definitions", + "func": "findTerms", + "mode": "merge", + "text": "うちこむ", + "options": "default", + "expected": { + "length": 4, + "definitions": [ + { + "type": "termMerged", + "source": "うちこむ", + "rawSource": "うちこむ", + "reasons": [], + "score": 10, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打ち込む" + ], + "reading": [ + "うちこむ", + "ぶちこむ" + ], + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "うちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag6", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag7", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + }, + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "ぶちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "definitions": [ + { + "type": "termMergedByGlossary", + "source": "うちこむ", + "rawSource": "うちこむ", + "reasons": [], + "score": 10, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打ち込む" + ], + "reading": [ + "うちこむ" + ], + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "うちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "glossary": [ + "definition13", + "definition14" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 7, + "source": "うちこむ", + "rawSource": "うちこむ", + "sourceTerm": "うちこむ", + "reasons": [], + "score": 10, + "isPrimary": true, + "sequence": 4, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打ち込む", + "reading": "うちこむ", + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "うちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "glossary": [ + "definition13", + "definition14" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "only": [ + "うちこむ" + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMergedByGlossary", + "source": "うちこむ", + "rawSource": "うちこむ", + "reasons": [], + "score": 10, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打ち込む" + ], + "reading": [ + "ぶちこむ" + ], + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "ぶちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "glossary": [ + "definition17", + "definition18" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 9, + "source": "うちこむ", + "rawSource": "うちこむ", + "sourceTerm": "うちこむ", + "reasons": [], + "score": 10, + "isPrimary": false, + "sequence": 4, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打ち込む", + "reading": "ぶちこむ", + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "ぶちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "glossary": [ + "definition17", + "definition18" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "only": [ + "ぶちこむ" + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMergedByGlossary", + "source": "うちこむ", + "rawSource": "うちこむ", + "reasons": [], + "score": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打ち込む" + ], + "reading": [ + "うちこむ" + ], + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "うちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag6", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag7", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "glossary": [ + "definition15", + "definition16" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 8, + "source": "うちこむ", + "rawSource": "うちこむ", + "sourceTerm": "うちこむ", + "reasons": [], + "score": 1, + "isPrimary": true, + "sequence": 4, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打ち込む", + "reading": "うちこむ", + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "うちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag6", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag7", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "glossary": [ + "definition15", + "definition16" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag6", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag7", + "category": "default", + "notes": "", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "only": [ + "うちこむ" + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMergedByGlossary", + "source": "うちこむ", + "rawSource": "うちこむ", + "reasons": [], + "score": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打ち込む" + ], + "reading": [ + "ぶちこむ" + ], + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "ぶちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "glossary": [ + "definition19", + "definition20" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 10, + "source": "うちこむ", + "rawSource": "うちこむ", + "sourceTerm": "うちこむ", + "reasons": [], + "score": 1, + "isPrimary": false, + "sequence": 4, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打ち込む", + "reading": "ぶちこむ", + "expressions": [ + { + "sourceTerm": "うちこむ", + "expression": "打ち込む", + "reading": "ぶちこむ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "ち", + "furigana": "" + }, + { + "text": "込", + "furigana": "こ" + }, + { + "text": "む", + "furigana": "" + } + ], + "glossary": [ + "definition19", + "definition20" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "only": [ + "ぶちこむ" + ], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 2, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "hasReading": true, + "frequency": 8 + }, + { + "index": 1, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": false, + "frequency": 3 + }, + { + "index": 3, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "hasReading": true, + "frequency": 9 + } + ], + "pitches": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "うちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + }, + { + "index": 1, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打ち込む", + "reading": "ぶちこむ", + "pitches": [ + { + "position": 0, + "tags": [] + }, + { + "position": 3, + "tags": [] + } + ] + } + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMerged", + "source": "うち", + "rawSource": "うち", + "reasons": [ + "masu stem" + ], + "score": 10, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打つ" + ], + "reading": [ + "うつ", + "ぶつ" + ], + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "うつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [] + }, + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "ぶつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [] + } + ], + "definitions": [ + { + "type": "termMergedByGlossary", + "source": "うち", + "rawSource": "うち", + "reasons": [], + "score": 10, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打つ" + ], + "reading": [ + "うつ" + ], + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "うつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [] + } + ], + "glossary": [ + "definition5", + "definition6" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 3, + "source": "うち", + "rawSource": "うち", + "sourceTerm": "うつ", + "reasons": [ + "masu stem" + ], + "score": 10, + "isPrimary": true, + "sequence": 3, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打つ", + "reading": "うつ", + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "うつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "glossary": [ + "definition5", + "definition6" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [], + "only": [ + "うつ" + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMergedByGlossary", + "source": "うち", + "rawSource": "うち", + "reasons": [], + "score": 10, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打つ" + ], + "reading": [ + "ぶつ" + ], + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "ぶつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [] + } + ], + "glossary": [ + "definition9", + "definition10" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 5, + "source": "うち", + "rawSource": "うち", + "sourceTerm": "うつ", + "reasons": [], + "score": 10, + "isPrimary": false, + "sequence": 3, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打つ", + "reading": "ぶつ", + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "ぶつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "glossary": [ + "definition9", + "definition10" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [], + "only": [ + "ぶつ" + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMergedByGlossary", + "source": "うち", + "rawSource": "うち", + "reasons": [], + "score": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打つ" + ], + "reading": [ + "うつ" + ], + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "うつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [] + } + ], + "glossary": [ + "definition7", + "definition8" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 4, + "source": "うち", + "rawSource": "うち", + "sourceTerm": "うつ", + "reasons": [ + "masu stem" + ], + "score": 1, + "isPrimary": true, + "sequence": 3, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打つ", + "reading": "うつ", + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "うつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "う" + }, + { + "text": "つ", + "furigana": "" + } + ], + "glossary": [ + "definition7", + "definition8" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + } + ], + "pitches": [], + "only": [ + "うつ" + ], + "sourceTermExactMatchCount": 0 + }, + { + "type": "termMergedByGlossary", + "source": "うち", + "rawSource": "うち", + "reasons": [], + "score": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": [ + "打つ" + ], + "reading": [ + "ぶつ" + ], + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "ぶつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [] + } + ], + "glossary": [ + "definition11", + "definition12" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "definitions": [ + { + "type": "term", + "id": 6, + "source": "うち", + "rawSource": "うち", + "sourceTerm": "うつ", + "reasons": [], + "score": 1, + "isPrimary": false, + "sequence": 3, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "dictionaryNames": [ + "Test Dictionary 2" + ], + "expression": "打つ", + "reading": "ぶつ", + "expressions": [ + { + "sourceTerm": "うつ", + "expression": "打つ", + "reading": "ぶつ", + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termFrequency": "normal", + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [] + } + ], + "furiganaSegments": [ + { + "text": "打", + "furigana": "ぶ" + }, + { + "text": "つ", + "furigana": "" + } + ], + "glossary": [ + "definition11", + "definition12" + ], + "definitionTags": [ + { + "name": "tag1", + "category": "category1", + "notes": "tag1 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag2", + "category": "category2", + "notes": "tag2 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "termTags": [ + { + "name": "tag3", + "category": "category3", + "notes": "tag3 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag4", + "category": "category4", + "notes": "tag4 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + }, + { + "name": "tag5", + "category": "category5", + "notes": "tag5 notes", + "order": 0, + "score": 0, + "dictionary": "Test Dictionary 2", + "redundant": false + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 1, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [], + "only": [ + "ぶつ" + ], + "sourceTermExactMatchCount": 0 + } + ], + "frequencies": [ + { + "index": 0, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 2, + "expressionIndex": 0, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "うつ", + "hasReading": true, + "frequency": 6 + }, + { + "index": 1, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": false, + "frequency": 2 + }, + { + "index": 3, + "expressionIndex": 1, + "dictionary": "Test Dictionary 2", + "dictionaryOrder": 0, + "expression": "打つ", + "reading": "ぶつ", + "hasReading": true, + "frequency": 7 + } + ], + "pitches": [], + "sourceTermExactMatchCount": 0 + } + ] + } } ] } \ No newline at end of file