[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [cti] RE: i18n (RE: MVP Discussion)
Masuoka, Ryusuke wrote this message on Fri, Apr 15, 2016 at 02:20 +0000: > - Always give "text_id" and "lang" for every text field > (So that anyone can give translations to the field later, knowing > which language it is in.) > > - Always give "text_ref", "text_id" and "lang" for every translation > ("text_id" is for someone to provide translations to other than one in the original language. > Example: A CTI text field created in Japanese, then it is given an English translation. > Then German and French translations are produced based on the English translation.) A big issue with this is that now EVERY text field (that is translatable) will now have a UUID. For descriptions, this isn't a big issue, but when we are talking about titles and the like, it's possible that the UUID will be longer than the translation itself.. I much prefer to handle translations by pointing to the object id, and then the fields that you want to translate.. This is what I'm talking about: { "type": "package", ... "campaigns": [ { "type": "campaign", "id": "campaign--a1201df6-c352-4a81-9c7c-5a6f896a4e31", "lang": "en", "revision": 1, "spec_version": "stix-2.0", "created_at": "2015-12-03T13:13Z", "created_by_ref": "identity--69a17e1b-bb45-4657-9a9d-96db3faccdde", "title": "Dridex Campaign - Botnet 121", "descriptions": "Dridex-based campaign leveraging Botnet 121", "intended_effects": [ {"value": "theft-identity-theft"} ], "status": "Ongoing" } ], "translations": [ { "obj_ref": "campaign--a1201df6-c352-4a81-9c7c-5a6f896a4e31", "type": "translation" "lang": "ja", "text_id: "text-a1b2c3-ja-1", "title": "Dridex キャンペーン - ボットネット 121" "descriptions": "ボットネット 121 を活用する Dridex を元にしたキャンペーン" }, { "obj_ref": "campaign--a1201df6-c352-4a81-9c7c-5a6f896a4e31", "type": "translation" "lang": "de", "title": "Some German Title” "description": "Some German Description" } ] ... } This is much more simple, It can be more simply handled in code by overlaying objects by language preferences, etc... As Bret pointed out, this does mean you can't have a base object w/ mixed languages, but I don't see a strong value in that, as those other languages can be provided via translations... -- John-Mark
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]