Das ist zwar tatsächlich der Standard, aber ich wünschte die Übersetzer würden endlich mal in der Lage sein XML zu importieren...
Ich finde XML sollte man eher Verwenden wenn man Objekthirarchien oder Datenstrukturen definieren möchte.
Das hat wenig mit "möchten" zu tun. Manche Frameworks wie in C# oder Android verwenden XML für die Übersetzung. Das hin- und her zu konvertieren ist da wenig hilfreich, weil die Einträge gewisse Meta-Informationen tragen können, die sonst verloren gehen. Es ist nämlich oft nicht einfach nur eine Key-Value-Zuordnung, wenn zum Beispiel ein Text eine gewisse Pluralität enthält. Zum Beispiel Russisch unterscheidet zwischen Singular, Plural und Plural mit gewissen Mengen (wie etwa mehr als 5 oder mehr als 10). Wenn der Text also eine Variable enthält, muss er auch für diverse Pluralitäten übersetzt werden. Da reicht key-Value nicht, weil du das ganz sicher nicht an jeder Stelle in deinem eigenen Code zusammenschustern willst und kannst für jede Sprache, um dort die richtigen Keys zu verwenden. Das wäre grauenvoll. Folglich hat ein und derselbe Key in diesen Frameworks andere Übersetzungen, je nach geforderter Pluralität der Variable.
Auch kannst du in XML Dinge übergeben wie Kommentare oder Kontext-Beispiele, die für eine Übersetzung massiv wichtig sind. Oder wie willst du z.B. folgendes richtig übersetzen:
my_key = Lade Daten
Ist das jetzt "Loading data" oder "Load data"? Es ist völlig unklar, ob es Infinitiv oder Imperativ ist.
Reine Key-Value-Files sind für professionelle Übersetzung schlicht unzulänglich.