W3C home > Mailing lists > Public > public-multilingualweb-lt@w3.org > May 2012

RE: [ISSUE-15] target-pointer

From: Yves Savourel <ysavourel@enlaso.com>
Date: Sun, 13 May 2012 20:21:23 -0600
To: "'Shaun McCance'" <shaunm@gnome.org>, "'MultilingualWeb-LT Working Group'" <public-multilingualweb-lt@w3.org>
Message-ID: <assp.0481db8777.assp.0481131c58.00a401cd3178$421f8190$c65e84b0$@com>
Hi Shaun,

> ...
> The Best Practices for XML Internationalization 
> explicitly recommends not doing this:
> http://www.w3.org/TR/xml-i18n-bp/#DevMLDoc
> I agree with all the reasons, but disagree with the 
> conclusion. As far as I'm concerned, the only sane 
> way to deal with these kinds of formats is to write 
> the source XML as if it were monolingual, use 
> per-language XLIFF or PO files to manage translations,
> and automatically merge the translations into the 
> published file.

I'm probably not understanding this properly. You do seem to agree with the conclusion of the first note:

"It is admissible to store multilingual copies of a content in a single document before the document to send to localization, or after all localization tasks are done. For example, a final resource file could be constructed by collating the different language entries."

It seems to be what you are doing.
Or I'm missing something?

In any case, your example illustrates a good use case I didn't include so far: a set of multiple elements that normally are 'paragraph-level' rather than just one element per language:

  <license xml:lang="en">
    <p>This is the license.</p>
    <p>It has multiple paragraphs.</p>
  <license xml:lang="de">
    <p>Dies ist die Lizenz.</p>
    <p>Es verfügt über mehrere Absätze.</p>

> Unless I treat license as a unit (and thus, 
> paragraphs as within text), this doesn't work.

I agree, I don't see how we could have multiple extracted units merged back in a different location that is not the top-level node. It may be doable, but at a high cost of complexity.

And maybe it's ok to have such limitation as it's only a limitation on how to work around a bad practice.

As for your example, could something like the following be a solution:

<its:rules xmlns:its="http://www.w3.org/2005/11/its" version="2.0">
 <its:translateRule translate="no" selector="//application"/>
 <its:withinTextRule selector="//p" withinText="yes"/>
 <its:translateRule translate="yes" selector="//license[@xml:lang='en']>
  <its:targetPointer language="'de' selector="../license[@xml:lang='de']"/>

The merging back is still complicated, though. That is if there is more than one target.

Received on Monday, 14 May 2012 02:21:51 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:31:44 UTC