W3C home > Mailing lists > Public > public-exi@w3.org > September 2008

RE: [EXI] Implementation of EXI schema-informed grammar builder [COPY]

From: Taki Kamiya <tkamiya@us.fujitsu.com>
Date: Mon, 15 Sep 2008 22:49:09 -0700
To: "'Yuri Delendik'" <yury_exi@yahoo.com>, <public-exi@w3.org>
Message-ID: <CCE3816955304A8C8360D617AB7F0545@catarojp>

Hi Yuri,

Thank you for your detailed questions on the specification,
and our apologies for long belated response.

I would be nice, if you can provide a separate email message
for each distinct issue, when preparing comments or questions
to send in next time.

Responses are provided in line below.

Thank you,

-taki

-----Original Message-----
From: public-exi-request@w3.org [mailto:public-exi-request@w3.org] On Behalf Of Yuri Delendik
Sent: Monday, July 14, 2008 11:15 AM
To: public-exi@w3.org
Subject: [EXI] Implementation of EXI schema-informed grammar builder [COPY]

> Hello,
>
> Few questions/notes about implementation XML Schema grammar builder:
>
> 1. Does schema-informed grammar allow comments and processing instructions
> for strict option on?

It does not. Please take a look at the description of "strict" option:
http://www.w3.org/TR/2008/WD-exi-20080728/#key-strictOption

Excerpted here for your convenience.

"When set to true, NS, CM, PI, ER and SC events are pruned from EXI grammars,
 and schema-informed element and type grammars are restricted to only permit
 items declared in the schemas."

> 2. How xsi:schemaLocation and xsi:noNamespaceSchemaLocation handled with
> strict option on?

They are omitted when strict option is on, except for those cases where you use
wildcard attributes. In general, you would want to set strict option value to "false"
to preserve schema location xsi attributes.

> 3. Does preserve.lexicalValues require perserve.prefixes be on if QName value used?

The two options are independent, however, it is practical to enable perserve.prefixes
when you expect that QName values are used in values. Note that QName values
are always represented as strings.

> 4. How to build grammar for complex type particle with {mixed} attribute?

The 4th working draft addressed this issue, in the section of complex type grammar.

> 5. Eluminating duplicate symbols (8.5.3.2.2) does not explain what index number will
> be chosen for (i, k + l), and it affects choosing of "content" index in adding production (8.5.3.4.1)

For "k" and "l" that are smaller than "content" index, "k U l" is considered still
smaller than "content" index. We'll mention this in the next draft, which you'll see
very soon. Good catch!

> 6. Definition for "sorted in schema order" is wanted. (see 8.5.3.3 Event Code Assignment)

We put it in our list of things to clarify. Thanks for pointing it out.

> 7. Adding Productions when Strict is False (8.5.3.4.1) may not have non-terminal
> Element(i,content) that includes no productions with non-terminal AT(name) on the
> right side. Also "first" mean order of grammar items order is defined or have proof it
> will stay the same for different implementations (see also p.5).

We have addressed this issue, and the next draft incorporating the fix will
be released very soon. Thanks for pointing this out!

> 8. All Model Groups (8.5.3.1.8.3) particle grammar creation is not practical:
> for n items it produces n! grammars. Will the normalization algorithms be
> efficent to process that amount of items?

Please note the "note" in section "8.5.4.1.8.3 All Model Groups".
The grammar system is described in abstract manners, and the
implementation is free to use any techniques to optimize for the
constraint available for "all" model groups. (e.g. it can only appear
 as a content model, it can only contain element particles with
maxOccurs being either 0 or 1).

> 9. XML Schemas (XSD) can be different from different vendors, but describe
> same XML structure. Will it be a problem?

In order to use XML schemas to leverage schema-informed grammars
in EXI streams, a sender and a receiver have to share the same XML
schemas.

Hope it helps,

-taki
Received on Tuesday, 16 September 2008 05:50:03 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 19:52:43 UTC