OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

cti message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: RE: [cti] RE: i18n (RE: MVP Discussion)

Hi, John-Mark

The reason why I suggested "always text_id for text field" is 
that object reference can break if the object is updated 
and that time-consuming quality translation gets lost
even if the test field stays the same. 
I know there is a trade-off. 
For example, 16-byte MD5 hash value of the UTF-8 text
would be (I do not think that we need to standardize the
way how people give the text_id): 

  " 41cb32a0d74d5d07f5362b3e66f245c9" (Hexadecimal - 32 bytes )
  "QcsyoNdNXQf1Nis+ZvJFyQ==" (Base64 Encoding - 24 bytes)


  "Dridex Campaign - Botnet 121" (28 bytes)

It doubles the bytes needed for the title. 
(By the way, Japanese titles tend to get longer 
  "Dridex キャンペーン - ボットネット 121" (38 bytes)
If I spell out "Dridex", it would be
  "ドライデックス キャンペーン- ボットネット 121" (45 bytes)

Another way is for the CTI creator give a sequential number
for the text they produce. Example:

  "XYZ-Text-JP-987654" (18 bytes)

However, you do not have to change the code according
to whether it is a title or description. Single code for
every text. Simple. 



-----Original Message-----
From: cti@lists.oasis-open.org [mailto:cti@lists.oasis-open.org] On Behalf Of John-Mark Gurney
Sent: Saturday, April 16, 2016 7:31 AM
To: Masuoka, Ryusuke/益岡 竜介
Cc: Jordan, Bret; Jason Keirstead; cti@lists.oasis-open.org
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...


To unsubscribe from this mail list, you must leave the OASIS TC that generates this mail.  Follow this link to all your TCs in OASIS at:

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]