W3C home > Mailing lists > Public > public-i18n-its@w3.org > April to June 2006

Re: Action Item: http://www.w3.org/2006/04/20-i18nits-minutes.html#action08 (process="no" flag)

From: Felix Sasaki <fsasaki@w3.org>
Date: Tue, 25 Apr 2006 14:16:42 +0900
Message-ID: <444DB0BA.3030109@w3.org>
To: "Lieske, Christian" <christian.lieske@sap.com>
Cc: public-i18n-its@w3.org
Hi Christian, all,

Lieske, Christian wrote:
> Hi there,
> 
> Here's my proposal (which could for example be added to the
> http://www.w3.org/International/its/itstagset/itstagset.html#introductio
> n).
> 
> Best regards,
> Christian
> 
> ---
> 
> In certain cases, it is necessary to attach ITS information to element
> nodes (as opposed to text nodes). 

I think this should not be "element nodes", but "element or attribute
nodes".

> An information architect may for
> example have to express that all images (which in his XML vocabulary are
> referenced via an "src" attribute on an "img" element) should not be
> translated.

This is only terminology, but saying "images should (not) be translated"
sounds strange to me. What do English native speakers think?

> 
>>From the point of view of ITS selection, this requirement poses a
> challenge since the default selection of the ITS data categories and the
> use of XPath do not cater for the attachment mechanism that is needed.
> ITS masters the challenge in a fashion which is similar to XSD


this is a very dangerous comparison! Using "processContents" in XML
Schema means that you don't validate elements or attributes.
"processContents", as you define it, means that *additional* information
is attached to elements and attributes, besides translatability
information.

: The
> introduction of a specific "its:processContents" attribute. A value
> of "no" for this attribute instructs ITS processors that no processing
> is necessary. 

that is not the case! The value "no" is a value *in addition* to
"translate yes" or "translate no". What you mention as processing is
beyond the scope of ITS, i.e. it is s.t. which happens *after* what we
define as ITS processing:
[[Processors need to compute the ITS information which pertains to a
node in an XML document. The ITS processing expectations define how the
computation has to be carried out. Correct computation involves support
for selection mechanism, defaults, and precedence. ]]
. We have to be very careful what we talk about.

> This way, ITS allows the declaration of information
> without enforcing its processing.

again, that s.t. is not processed, is not the scope of ITS processing.

> 
> The example below exemplies how "its:processContents" can be used with
> "its:translateRule" in order to attach ITS information to various
> aspects of graphics:
> 
> - The first two "its:translateRule" specify that the values/text of the
> "src" and the "alt" attributes have to be translated, and that the ITS
> processor needs to attach the ITS translate data category to the
> corresponding nodes. 
> - The third "its:translateRule" specifies that the graphics (the "img"
> element) has to be translated as well. The "its:processContents="no",
> however, tells the ITS processor that it does not need to attach the ITS
> translate data category to the corresponding nodes.

I'm confused by your example: I would have expected the third rule to be

<its:translateRule its:selector="/img/@src" its:translate="yes"
its:processContents="no"/>

with your selector attribute "/img": how does an application know that
the external object which should not be processed can be found via the
@src attribute?
Yves writes at http://www.w3.org/Bugs/Public/show_bug.cgi?id=3126 :
[[Nothing works for the objects associated the //img/@src]]
so I think the selector attribute should be "/img/@src".

> 
> <text>
>  <head></head>
>   <its:rules>
>    <its:translateRule its:selector="/img/@src" its:translate="yes"/>
>    <its:translateRule its:selector="/img/@alt" its:translate="yes"/>
>    <its:translateRule its:selector="/img" its:translate="yes"
> its:processContents="no"/>
>   </its:rules>
>  <body>
>   <img src="w3c_home.png" alt="W3C"/>
>  </body>
> </text>
> 

There are various concerns mentioned at
http://www.w3.org/Bugs/Public/show_bug.cgi?id=3126 :
[[Additional notes (with richard, after Christian had to leave the meeting):
Not sure such solution would work as it cannot be applied to muliple data
categories at the same time locally. May have to use specific new data
category
(e.g. translateObject). Note that using such mechanism locally does not work
for attributes (no selector) so this reduce the usability.]]

In addition, I am wondering how inheritance / precedence works. How about
a1) <its:translateRule its:selector="//img" its:translate="yes"
its:processContents="no"/>
a2) <its:translateRule its:selector="//div/descendant-or-self::*"
its:translate="yes"/>
if you imagine that <img> is part of <div>: do we assume that no
processContents attribute means "processable"? if the answer is yes:
would a2) have higher precedence than a1)? if "yes", I would need to
change the order of rules so that a1) wins, but that might to lead to
problems like:
b1) <its:translateRule its:selector="//div/descendant-or-self::*"
its:translate="yes"/>
b2) <its:translateRule its:selector="//img" its:translate="no"
its:processContents="no"/>
here, b2) has not only a different value for process content, but also
for translatability. If I don't want to give both a higher precedence
than b1), I am in trouble.

My current conclusion: I am very concerned that we will not be able to
think this all out in the next weeks. I see the value of this, but not
the time to design it clearly ... How about keeping it for ITS 1.1?

Regards, Felix.


Received on Tuesday, 25 April 2006 05:16:51 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:43:07 UTC