[Bug 4189] [FS] technical: 8.1.9 Type expansion correct?

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4189





--- Comment #3 from Michael Dyck <jmdyck@ibiblio.org>  2009-02-01 05:34:22 ---
I think I've found another bug in the type expansion rules (FS 8.1.9,
8.1.10), this one dealing with the treatment of 'mixed'. Consider the case:

    define type TN1 { T1 };
    define type TN2 extends TN1 mixed { T2 };

The question is, what type does 'of type TN1' expand to?  If we ignore
type-adjustments other than "mixing", and we let

    MIXED(T) = T & text* | xs:anyAtomicType*

for brevity, then I believe the answer *should* be:

    T1 | MIXED(T1, T2)

but I believe the answer given by the current rules is:

    T1 | (T1, T2)

because in the rules, only the OptMixed of the top-level TypeDerivation
(that of TN1) affects the adjustment of the expanded type.

Similarly, given:

    define type TN1 mixed { T1 }
    define type TN2 extends TN1 { T2 }

then I believe the expansion of 'of type TN1' *should* be:

    MIXED(T1) | (T1, T2)

(because "mixedness" is not inherited by derived types), but the rules
give:

    MIXED( T1 | (T1,T2) )


-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Sunday, 1 February 2009 05:34:32 UTC