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

Re: [EXI] Circular production with no terminal symbol

From: Yuri Delendik <yury_exi@yahoo.com>
Date: Wed, 15 Oct 2008 18:22:01 -0700 (PDT)
To: Taki Kamiya <tkamiya@us.fujitsu.com>, public-exi-comments@w3.org
Message-ID: <809101.84432.qm@web83204.mail.mud.yahoo.com>

Hello Taki,

The question appeared when I was trying to generate the EXI grammar for TTFMS CBMS data by rules described in EXI specification. The problem appears when PersonNameType type (from CBMS/schema/mpeg7.xsd) is processed. In case when prototype grammar looks like

G_0: G_i
G_i: G_j
G_j: G_i

non-terminal forms cannot be illuminated if the removing procedure starts from G_0. I had to tweak default/described algorithm to make it finite. 

Regards,
Yuri Delendik



----- Original Message ----
From: Taki Kamiya <tkamiya@us.fujitsu.com>
To: yury_exi@yahoo.com; public-exi-comments@w3.org
Sent: Wednesday, October 15, 2008 5:18:24 PM
Subject: Re: [EXI] Circular production with no terminal symbol

Hi Yuri,

Given the following schema, which is a little more complex than the one
you  provided:

<xs:sequence minOccurs="0" maxOccurs="unbounded">
  <xs:element name="a" minOccurs="0" maxOccurs="unbounded"/>
  <xs:element name="b" minOccurs="0" maxOccurs="unbounded"/>
  <xs:element name="c" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>

The normalized grammar would look like this:

PTA :
  SE(A) PTA
  SE(B) PTB
  SE(C) PTC
  EE

PTB:
  SE(B) PTB
  SE(C) PTC
  SE(A) PTA
  EE

PTC:
  SE(C) PTC
  SE(A) PTA
  SE(B) PTB
  EE

When you normalize the grammar, please remove self-recursion
production with no terminal symbols of the form:
G: G

We failed to mention to remove such production during normalization,
and we appreciate that you caught this issue.

Thanks!

-taki
Received on Thursday, 16 October 2008 01:22:42 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 19:45:27 UTC