WAFasGBS YAML locale text trees

Ken Webb 2013-04-13T15:06:02Z

Web App Frameworks as Graph-Based Software - YAML Locales

Ruby on Rails apps (Rails 3) use locale files to provide text in one or more human languages. They typically use YAML, a standard way of representing tree structures. The leaf nodes in the tree are key/value pairs.

For example, see the adopt-a-tree locale files.

Here's what the Rails locale structure looks like when it's been read in by Xholon, using the Java Jackson YAML library:

The Xholon model can then be exported in a wide range of formats. The following is part of the French-language (fr) locale text, exported in JSON format:

{"buttons":{
 "Attribute_String":{
 "roleName":"abandon",
 "Text":"Abandonner cet %{thing}"
},
 "Attribute_String":{
 "roleName":"adopt",
 "Text":"Adopter!"
},
 "Attribute_String":{
 "roleName":"back",
 "Text":"Retour"
},
 "Attribute_String":{
 "roleName":"change_password",
 "Text":"Changer mon mot de passe"
},
 "Attribute_String":{
 "roleName":"close",
 "Text":"Fermer"
},
 "Attribute_String":{
 "roleName":"edit_profile",
 "Text":"Modifier le profil"
},
 "Attribute_String":{
 "roleName":"email_password",
 "Text":"Envoyez-moi mon mot de passe"
},
 "Attribute_String":{
 "roleName":"find",
 "Text":"Trouver %{thing}"
},
 "Attribute_String":{
 "roleName":"send_reminder",
 "Text":"Envoyer un rappel à l'eau"
},
 "Attribute_String":{
 "roleName":"sign_in",
 "Text":"Connexion"
},
 "Attribute_String":{
 "roleName":"sign_out",
 "Text":"Inscription sur"
},
 "Attribute_String":{
 "roleName":"sign_up",
 "Text":"S'inscrire"
},
 "Attribute_String":{
 "roleName":"update",
 "Text":"Mise à jour"}}}

Return to Web App Frameworks as Graph-Based Software.

return to main page