Test 2 : Localisable Text in Elements

Sample xml file describing a menu

Marked up with xlf Localisation Directives

<?xml version="1.0" encoding="UTF-8"?>

<window id="greeting-window" title="Greetings">
   
<menubar id="main-menubar">
            <!--
File menu -->
        <
menu id="fileMenu" value="File" accesskey="f">
            <
menupopup>
                <
menuitem id="fileOpen" oncommand="Open()">
                    <
caption>Open</caption>
                    <
accesskey type="Ctrl">o</accesskey>
                </
menuitem>
                <
menuitem id="fileClose" oncommand="Close()">
                    <
caption>Close</caption>
                    <
accesskey type="Ctrl">c</accesskey>
                </
menuitem>
            </
menupopup>
        </
menu>
            <!--
Edit menu -->
        <
menu id="editMenu" value="Edit" accesskey="e">
            <
menupopup>
                <
menuitem id="editUndo" oncommand="Undo()">
                    <
caption>Undo</caption>
                    <
accesskey type="Ctrl">z</accesskey>
                </
menuitem>
                <
menuitem id="editRedo" oncommand="Redo()">
                    <
caption>Redo</caption>
                    <
accesskey type="VIRTKEY">F4</accesskey>
                </
menuitem>
            </
menupopup>
        </
menu>
    </
menubar>
</
window>

 

<?xml version="1.0" encoding="UTF-8"?>

<window id="greeting-window" title="Greetings"
xmlns:xlf="http://www.open-oasis.org/xliff/1.1">
   
<menubar id="main-menubar

        xlf:path
="/menu/menupopup/menuitem/caption ; 
        /menu/menupopup/menuitem/accesskey ; 
        /menu/menupopup/menuitem/accesskey/@type
"
       
xlf:localise="yes"
>
            <!--
File menu -->
        <
menu id="fileMenu" value="File" accesskey="f">
            <
menupopup>
                <
menuitem id="fileOpen" oncommand="Open()">
                    <
caption>Open</caption>
                    <
accesskey type="Ctrl">o</accesskey>
                </
menuitem>
                <
menuitem id="fileClose" oncommand="Close()">
                    <
caption>Close</caption>
                    <
accesskey type="Ctrl">c</accesskey>
                </
menuitem>
            </
menupopup>
        </
menu>
            <!--
Edit menu -->
        <
menu id="editMenu" value="Edit" accesskey="e">
            <
menupopup>
                <
menuitem id="editUndo" oncommand="Undo()">
                    <
caption>Undo</caption>
                    <
accesskey type="Ctrl">z</accesskey>
                </
menuitem>
                <
menuitem id="editRedo" oncommand="Redo()">
                    <
caption>Redo</caption>
                    <
accesskey type="VIRTKEY">F4</accesskey>
                </
menuitem>
            </
menupopup>
        </
menu>
    </
menubar>
</
window>

 

Comments

Easy to identify which items are for localisation

How do you identify both elements and attributes

Maybe we could introduce the idea of specifying the id as xlf:id
This would necessitate all three xlf items being specified together in an element

Eg.

<xlf:localise localise="yes">
  
<
xlf:path="/menu/menupopup/menuitem/caption"
       xlf:unit-id="/menu/menupopup/menuitem/@id">
</
xlf:localise>

<xlf:localise localise="yes">
  
<
xlf:path="/menu/menupopup/menuitem/accesskey"
       xlf:unit-id="/menu/menupopup/menuitem/@id">
</
xlf:localise>

<xlf:localise localise="yes">
  
<
xlf:path="/menu/menupopup/menuitem/accesskey/@type"
       xlf:unit-id="/menu/menupopup/menuitem/@id">
</
xlf:localise>