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)

for 

  "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. 

Regards,

Ryu

-----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...

--
John-Mark

---------------------------------------------------------------------
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:
https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php 




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