On Mon, Nov 30, 2009 at 3:41 PM, Robin Berjon <ro...@berjon.com> wrote:
> On Nov 27, 2009, at 20:55 , Marcos Caceres wrote:
>> On Thu, Nov 26, 2009 at 2:40 PM, Cyril Concolato
>> <cyril.concol...@enst.fr> wrote:
>>> I'm trying to implement the element-based localization and I found the spec
>>> unclear with regards to the inheritance of th xml:lang attribute and I would
>>> like to propose some improved text.
>>> First, this attribute is listed as an optional attribute of the widget
>>> element but the widget element is not localizable, so one does not
>>> understand why.
>>
>> D'oh! that should be a "localizable: yes". Thankfully, that's there
>> for author clarification.
>
> Really? I wouldn't have thought so. There's a difference between "you can 
> have xml:lang there" and "it is meaningful to have xml:lang there (or on its 
> ancestors)". You can have xml:lang on widget, but the widget element cannot 
> really be localised (you can't have two, choosing between them depending on 
> locale). It's not a huge difference, but putting "localisable: yes" on widget 
> would confuse me.
>

Agreed.

>> I've added this to the editor's draft:
>>
>> "As part of their definition, the XML elements of the configuration
>> document are marked as being localizable via xml:lang with either the
>> word "yes" or "no". An author can use the xml:lang attribute on any
>> XML element, including any element in the widget namespace. During
>> Step 7, the user agent will apply the standardized behavior of
>> xml:lang specified in the [XML] specification (i.e. inheritance and
>> propagation of the xml:lang attribute will occur on child elements on
>> which it was not explicitly used - see example below to see how this
>> inheritance and propagation works). Regardless of whether xml:lang was
>> inherited or explicitly used in an element, a user agent will only use
>> the value of an xml:lang attributes for the purpose of element-based
>> localization in Step 7 when that element was explicitly marked with
>> the text "Localizable via xml:lang: Yes" as part of that elements
>> definition."
>>
>> WDYT?
>
> I think that this is even more confused than the original :) To clarify, I 
> think you need to make the same distinction I made above re "can have 
> xml:lang" and "supports being localised". Otherwise you get sentences like 
> "elements of the configuration document are marked as being localizable via 
> xml:lang with either the word "yes" or "no". An author can use the xml:lang 
> attribute on any XML element", to which I can only reply "ebbeh?".
>
> How about:
>
> """
> The xml:lang attribute can be used on any element in order to indicate which 
> language is used in the content and attribute values of that element. Its 
> value is inherited, such that if an element has an xml:lang attribute, all of 
> its descendants are considered to be in that language as well, unless they 
> specify their own xml:lang attribute. Note that an element can indicate that 
> it is in no specific language by setting xml:lang to the empty string, 
> irrespective of whether any of its ancestors has an xml:lang attribute.
>
> Some of the elements in the widgets namespace are defined to be localisable. 
> This means that they will be processed in a specific manner if they have an 
> xml:lang value (directly or through inheritance), as described in detail in 
> Step 7.
> """
>
> WDYT?

I *really* like it; you never fail to impress Mr Berjon :) ... but the
first para should just be a "Note:" (we don't want to have that in as
normative text because it describes behavior specified in the XML
spec... hence, I would add "as specified in [XML], bla bla bla"). The
second paragraph can serve as a normative definition to which all
"localizable via xml:lang" link to. Can you live with that?

If you can, I have added the above to the spec. With that, we are
ready to go to CR so please give me your consent.

-- 
Marcos Caceres
http://datadriven.com.au

Reply via email to