Semantik der XML Dateien optimieren
Die Semantik einiger XML Dateien ist nicht optimal und daher nicht intuitiv verständlich (und nicht so einfach validierbar, siehe #1230).
Da es sich um eine große/weitreichende Änderung handelt, soll das Ticket primär als Erinnerung für die Zukunft (bspw. QUIQQER 2.0
) dienen.
Theoretisch sollten sich die alten Formate automatisch zu den neuen Formaten konvertieren lassen.
Am Beispiel der locale.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<locales>
<groups name="quiqqer/test" datatype="php">
<locale name="package.title">
<de><![CDATA[Suppe]]></de>
<en><![CDATA[Soup]]></en>
</locale>
</groups>
<groups name="quiqqer/test" datatype="js">
<locale name="package.description">
<de><![CDATA[Brot]]></de>
<en><![CDATA[Bread]]></en>
</locale>
</groups>
</locales>
Folgender beispielhafte Aufbau wäre semantisch richtig(er) und besser verständlich:
<?xml version="1.0" encoding="UTF-8"?>
<localization>
<group name="quiqqer/test">
<variables scope="js">
<variable name="package.title">
<translation language="de">Suppe</translation>
<translation language="en">Soup</translation>
</variable>
</variables>
<variables scope="php">
<variable name="package.description">
<translation language="de">Brot</translation>
<translation language="en">Bread</translation>
</variable>
</variables>
</group>
</localization>
Folgendes hat sich dabei geändert:
- Für besseres Verständnis root-Tag
locales
zulocalization
umbenannt - Für besseres Verständnis
type
zuscope
umbenannt -
scope
wird in eigenem Element angegeben und nicht mehr in dergroup
(alternativ auch provariable
denkbar) - Für besseres Verständnis
locale
umbenannt zuvariable
- Sprach-Tags (bspw.
de
,en
) zu allgemeinem Element mit Namentranslation
und Attributlanguage
umbenannt - Entfernen des nicht notwendigen
CDATA
-Abschnitts