Beebox JSON Format

Beebox uses JSON in these places:

  • To export translation jobs to translation teams or translation management systems. 
  • To download selected segments from the translation editor.
  • When retrieving segments with the API.

Example

The following is a sample translation job containing one segment with a translation and one without.

{ "count" : 5,
  "hasmore" : false,
  "rows" : [ 
 
		{ "source" : { 
			"dt" : "2015-08-03T14:54:57.5306901Z",
            "fi" : "Machine Views\\RearView.png.xml",
            "fo" : "",
            "key" : "x-shape-bubble",
            "meta" : null,
            "rid" : null,
            "sindex" : 0,
            "tx" : "Rear Electronics Enclosure",
            "txa" : "Rear Viewer",
            "txb" : null,
			"fix": 0
          },
        "target" : { 
			"cm" : null,
            "ed" : "â—€Perfect previous version translationâ–¶",
            "lk" : false,
            "loc" : "es-419",
            "st" : 2,
            "tr" : 1,
            "tx" : "Caja trasera de componentes electrónicos",
            "txa" : "Visor Trasero",
            "txb" : null,
            "upd" : "0001-01-01T00:00:00",
            "val" : false
          }
      },

      { "source" : { "dt" : "2015-08-03T14:54:57.5306901Z",
            "fi" : "Machine Views\\RearView.png.xml",
            "fo" : "",
            "key" : "x-shape-bubble",
            "meta" : null,
            "rid" : null,
            "sindex" : 4,
            "tx" : "Air Filtration and Distribution",
            "txa" : null,
            "txb" : "Main Power CB",
			"fix": 0
          },
        "target" : { "cm" : null,
            "ed" : "",
            "lk" : false,
            "loc" : "fr-FR",
            "st" : 0,
            "tr" : 0,
            "tx" : null,
            "txa" : null,
            "txb" : null,
            "upd" : "2015-08-03T14:54:57.5306901Z",
            "val" : false
          }

      }
    ],
  "skip" : 0,
  "files": [
		{ "deadline": null, "meta": null }
	]
}

 

JSON Fields

When exporting content to JSON, the file is always for one specific target language. It is not possible to retrieve multilingual content.

The file has these root properties:

Field

Description

 

skip

The number of items skipped. Used for pagination. Always 0 except when using pagination in the API.

countTotal segments in file.
hasmore"true" if the list is not complete. Used for pagination. Always "false" except when using pagination in the API.
rows

Array of segments.

Each segment has two nodes:

source: Detailed information on the segment and the source text.

target: Information on the translation

 

The source node has these attributes:

Field

Description

 

dt

The date when this segment was extracted from the source file.

Typically, this is done once per source file unless reprocessing is explicitly triggered from the UI or API.

fiThe source file name including relative path.
foNot used.
key

Contextual information on the segment. Content is file format dependent.

In Word this may say "Heading 1", in XML this may be content extracted from a node attribute, etc.

meta

Any meta information that may have been extracted from the file or the instructions file.

If not null, then this is an array of segment-level properties included in the .beebox instructions file.

  • "k": The key of the property
  • "v": The value
  • "t": The optional print title of the property

Read about meta information.

rid

Used when content is from a translation memory (and not from project or job). Otherwise null.

Contains the alphanumeric ID of the translation memory.

sindexA sequential id assigned to the segment within the file.
txThe source text.
txa

The text right after the present segment inside the original file. This is the context.

txbThe text right before the present segment inside the original file. This is the context.
fix

A zero based index into the "files" array.

The "files" array contains meta-information attached to the source file (as a .beebox instructions file):

  • Optional deadline
  • Segment level meta information

See instruction files.

chminNull or the minimum allowed characters in the translation. This value can be assigned during reading the original file, refer to the text filter settings.
chmaxNull or the maximum allowed characters in the translation. This value can be assigned during reading the original file, refer to the text filter settings.

 

The target node has these attributes:

Field

Description

 

cm

The date when this segment was extracted from the source file.

Typically, this is done once per source file unless reprocessing is explicitly triggered from the UI or API.

edA code indicating the origin of a translation, if any.
lkThe translation is locked for editing by the user
loc

The target language code.

st

The Quality Assurance status:

0 = not set, 1 = QA Ok, 2 = QA Error

tr

Level of trust:

0 = no translation yet, 1 =Untrusted translation such as machine translation,

2 =Medium trusted translation, might require verification, 3 =Trusted translation  

txThe translation. Null is no translation.
txaThe translation of the source text right after the present segment inside the original file. This is the context.
txbThe translation of the source text right before the present segment inside the original file. This is the context.
updThe date when the translation or its properties were last updated.
valThe translation currently is approved or not

 

The files node is an array with information on all source files referred to by the JSON. Each array element contains:

Field

Description

 

deadline

Null or the deadline included in the source instructions file.

meta

If not null, then this is an array of file-level properties included in the .beebox instructions file.

  • "k": The key of the property
  • "v": The value
  • "t": The optional print title of the property

Read about meta information.

Note: Each "source" node has the "fix" property which is the index into this array.

Encoding of Markup

The tx, txa and txb fields may contain markup using UNICODE characters \1 and \2.

Example:

An html source file contains:

<p>Hello <strong>world</strong></p>

This will be stored in the Beebox like:

"tx": "Hello \u0001strong\u0002world\u0001/strong\u0002"

The markup names are still there but enclosed with the UNICODE special characters.

The sample applies to all formats such as Word, Excel, InDesign, XML, etc.

 

 

Copyright Wordbee - Buzzin' Outside the Box since 2008