Subject: [Lager] Context rules for sequences

From: Audric Schiltknecht <[email-masked]>
Date: Wed, 3 Feb 2016 10:59:17 -0500

A quick question regarding sequences and context rules: are context rules are authorized in sequences?

For example:

<data>
    <char cp="0061 0062" when="context-seq-rule"/>
</data>

<rules>
    <rule name="context-seq-rule">
        <anchor/>
        <look-ahead>
            <char cp="0063"/>
        </look-ahead>
    </rule>
</rules>

So that (0061 0062 0063) would be in the LGR, but not (0061 0062 0064), ie. the <anchor/> element is
replaced by the sequence of the code points 0061 and 0062

There is no explicit mention in the text that says that this is either allowed or forbidden, so just
checking if this is correct.

Audric

---

From: Audric Schiltknecht <[email-masked]>
Date: Wed, 3 Feb 2016 11:30:30 -0500

> checking if this is correct.

Correction: there is actually some text about context rules in sequence in section 7.1 (Determining
Eligibility for a Label), so I'll re-write my question more precisely as: "Are Parameterized context
rules (rules containing anchor) allowed for sequences?"

---

From: Asmus Freytag <[email-masked]>
Date: Wed, 3 Feb 2016 09:47:32 -0800

> checking if this is correct.

Context rules are allowed for sequences and we plan to make use of them 
for the root wherever appropriate (that is, wherever they lead to a 
clearer and more direct and robust statement of the constraints on labels).

There are scripts where dual vowel sequences do not occur, except in 
some very limited contexts. Using sequences with context rules quite 
similar to your example makes stating this constraint clear and concise.

The text in the spec is explicit (section 4.2) in allowing these 
attributes on *any* <char> element:

" The "when" or "not-when" attributes are mutually exclusive. They may 
be applied to both "char" and "range" elements in the "data" element, as 
well as to "var" elements (seeSection 4.3.5 <#conditional_variants>)."

In addition, the very next paragraph has a link to 6.5 which immediately 
links to Section 7, where, in 7.1 (in the latest -07 update) you find this:

"... when it forms part of a sequence that corresponds to a sequence 
listed using a "char" element for which the "cp" attribute defines a 
sequence, and all necessary conditions in any "when" or "not-when" 
attributes are correctly satisfied for that instance of the sequence."

That makes it quite explicit that context rules may exist for sequences 
and how to process them.

A./

> Audric
>
> _______________________________________________
> Lager mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/lager
>