How to manage the Simple key-value based JSON format in Phrase.
File Extensions | .json |
API Extension | simple_json |
Import | Yes |
Export | Yes |
Pluralization supported? | Yes |
Descriptions supported? | No |
Format Options | enable_pluralization |
JSON is short for JavaScript Object Notation. Although originally designed only for JavaScript, it became a standard exchange file format in parallel with XML, YAML, Properties, etc. JSON consists of key-value pairs wrapped in curly brackets. A value can either be a string, a number, or an object (namely one or more key-value pairs wrapped in curly brackets). Simple JSON is just a JSON file with most of its values being plain strings except for pluralization purposes. In this case, strings placed as values will be the ones that end up being translated.
Code Sample
{
"boolean_key": "--- true\n",
"empty_string_translation": "",
"key_with_description": "Check it out! This key has a description! (At least in some formats)",
"key_with_line-break": "This translations contains\na line-break.",
"nested.deeply.key": "Wow, this key is nested even deeper.",
"nested.key": "This key is nested inside a namespace.",
"null_translation": null,
"pluralized_key": {
"one": "Only one pluralization found.",
"other": "Wow, you have %s pluralizations!",
"zero": "You have no pluralization."
},
"sample_collection": [
"first item",
"second item",
"third item"
],
"simple_key": "Just a simple key with a simple message.",
"unverified_key": "This translation is not yet verified and waits for it. (In some formats we also export this status)"
}
Format Options
Identifier | enable_pluralization |
Type | boolean |
Upload | Yes |
Download | No |
Default | true |
Description | Enables detection of pluralized keys. All matching keys will be persisted as pluralized keys. |
Pluralization
This format uses named categories to identify the different pluralizations of a key. The following categories are reserved for pluralization:
.zero | .one | .two | .few | .many | .other
Example key names:
inbox.messages.notification.one
inbox.messages.notification.other
This way pluralized keys can be identified, persisted and marked accordingly.
Learn more about pluralization