OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

relax-ng message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: Re: [relax-ng] Completed compact syntax draft now available


I fixed a couple of bugs and a couple of typos.  New draft is at:

 http://www.thaiopensource.com/oasis/compact-20021113.html

Here's a diff of the changes:

Index: compact.xml
===================================================================
RCS file: /usr/cvsroot/jclark/relaxng/doc/compact.xml,v
retrieving revision 1.70
retrieving revision 1.72
diff -u -r1.70 -r1.72
--- compact.xml 8 Nov 2002 03:23:37 -0000 1.70
+++ compact.xml 13 Nov 2002 09:13:06 -0000 1.72
@@ -18,7 +18,7 @@
 <article status="Working Draft"
          xmlns:bnf="http://www.thaiopensource.com/relaxng/bnf";>
 <articleinfo>
-<releaseinfo>$Id: compact.xml,v 1.70 2002/11/08 03:23:37 jjc Exp
$</releaseinfo>
+<releaseinfo>$Id: compact.xml,v 1.72 2002/11/13 09:13:06 jjc Exp
$</releaseinfo>
 <title>RELAX NG Compact Syntax</title>
 <authorgroup>
 <editor>
@@ -28,9 +28,9 @@
   </affiliation>
 </editor>
 </authorgroup>
-<pubdate>8 November 2002</pubdate>
+<pubdate>13 November 2002</pubdate>
 <releaseinfo role="meta">
-$Id: compact.xml,v 1.70 2002/11/08 03:23:37 jjc Exp $
+$Id: compact.xml,v 1.72 2002/11/13 09:13:06 jjc Exp $
 </releaseinfo>

 <copyright><year>2002</year><holder>OASIS</holder></copyright>
@@ -85,7 +85,7 @@
 <revhistory>
 <revision>
   <revnumber>Working Draft</revnumber>
-  <date>8 November 2002</date>
+  <date>13 November 2002</date>
 </revision>
 </revhistory>
 </articleinfo>
@@ -96,7 +96,7 @@
 <para>This specification describes a compact, non-XML syntax for <xref
 linkend="spec"/>.</para>

-<para>The goals of this syntax are:</para>
+<para>The goals of this syntax are to:</para>

 <itemizedlist>

@@ -127,8 +127,9 @@
 <section id="syntax">
 <title>Syntax</title>

-<para>The following is a summary of the syntax in EBNF. The reader may
-find it helpful to compare this with the syntax in Section 3 of <xref
+<para>The following is a summary of the syntax in EBNF. Square
+brackets are used to indicate optionality. The reader may find it
+helpful to compare this with the syntax in Section 3 of <xref
 linkend="spec"/>. The start symbol is topLevel.</para>

 <grammarref src="compact-summary.rng"/>
@@ -144,10 +145,10 @@
 <para>The value of a literal is the concatenation of the values of its
 constituent literalSegments.  A literalSegment is always terminated
 only by an occurrence of the same delimiter that began it.  The
-delimited used to begin a literalSegment may be either one or three
+delimiter used to begin a literalSegment may be either one or three
 occurrences of a single or double quote character.  Newlines are
 allowed only in literalSegments delimited by three quote characters.
-The value of a literal segment consists of the characters between the
+The value of a literal segment consists of the characters between its
 delimiters.  One way to get a literal whose value contains both a
 single and a double quote is to divide the literal into multiple
 literalSegments so that the single and double quote are in separate
@@ -512,7 +513,7 @@
 <literal>element</literal> or <literal>attribute</literal> pattern
 consists of just a single name, it can be expressed either as a
 <literal>name</literal> attribute or as a <literal>name</literal>
-element; howeverm in the compact syntax, there is only one way to
+element; however, in the compact syntax, there is only one way to
 express such a name class.  The simplifications listed in the previous
 paragraph correspond to those syntactic details that are not captured
 in the compact syntax.</para></note>
@@ -681,7 +682,7 @@
 set of zero or more attributes and a content sequence of zero or more
 strings and elements, as described in the data model of <xref
 linkend="spec"/>; an XML fragment is thus the same kind of thing as
-what is matched against a RELAX NG pattern</para></listitem>
+what is matched against a RELAX NG pattern;</para></listitem>

 <listitem><para>an environment.</para></listitem>

@@ -693,7 +694,10 @@
 the name of its type.  The name of the type of a terminal or
 non-terminal is given following the keyword returns before ::= in the
 production rule.  Similarly, each argument has a type, which is given
-immediately before the name of the argument.</para>
+immediately before the name of the argument.  The value of a
+non-terminal may also be specified to be void; no expression is given
+for the value of such a non-terminal, nor will the value of such a
+non-terminal be used in any expression.</para>

 <para>The following types are all disjoint:</para>

@@ -704,7 +708,7 @@
 <listitem><para>name contains all names;</para></listitem>
 <listitem><para>qname contains all qualified-names;</para></listitem>
 <listitem><para>environment contains all enviroments;</para></listitem>
-<listitem><para>xml contains all XML fragments</para></listitem>
+<listitem><para>xml contains all XML fragments.</para></listitem>
 </itemizedlist>

 <para>It is also useful to identify some subtypes of xml.  One type is
@@ -729,7 +733,7 @@

 <listitem><para>attribute contains all XML fragments that have an
 empty content sequence and whose attribute set consists of a single
-attribute;</para></listitem>
+attribute.</para></listitem>

 </itemizedlist>

@@ -2348,7 +2352,7 @@
   </case>
   <case>
     <sequence>
-      <nt name="anyName" as="x"/>
+      <nt name="anyAttributeName" as="x"/>
       <literal>=</literal>
       <nt name="literal" as="y"/>
       <nt name="nestedAnnotationAttributes" as="z"/>
@@ -2364,6 +2368,20 @@
   </case>
 </rule>

+<rule name="anyAttributeName" type="name">
+  <case>
+    <nt name="identifierOrKeyword" as="x"/>
+    <function name="name">
+      <string/>
+      <ref name="x"/>
+    </function>
+  </case>
+  <case>
+    <nt name="prefixedName"/>
+    <constraint name="xmlns namespace URI"/>
+  </case>
+</rule>
+
 <rule name="annotationContent" type="content">
   <case>
     <empty/>
@@ -2396,7 +2414,7 @@
 <rule name="nestedAnnotationElement" type="element">
   <case>
     <sequence>
-      <nt name="anyName" as="x"/>
+      <nt name="anyElementName" as="x"/>
       <nt name="annotationAttributesContent" as="y"/>
     </sequence>
     <function name="element">
@@ -2407,7 +2425,7 @@
   </case>
 </rule>

-<rule name="anyName" type="name">
+<rule name="anyElementName" type="name">
   <case>
     <nt name="identifierOrKeyword" as="x"/>
     <function name="name">
@@ -2613,6 +2631,7 @@
 <constraint name="xmlns namespace URI">
 <para>It is an error if the namespace URI of a <bnf:nt
 name="prefixedName"/> in a <bnf:nt name="foreignAttributeName"
+/> or an <bnf:nt name="anyAttributeName"
 /> is <literal >http://www.w3.org/2000/xmlns</literal>.</para>
 </constraint>

@@ -2870,17 +2889,17 @@
 <itemizedlist>

 <listitem><para>is one of the literal string non-terminals occurring
-in the BNF in <xref linkend="formal-syntax"/></para></listitem>
+in the BNF in <xref linkend="formal-syntax"/>;</para></listitem>

 <listitem><para>matches the grammar of one of the named non-terminals
 other than <bnf:t name="literal"/> that is referenced in <xref
 linkend="formal-syntax"/> and specified in this section, that is,
 <bnf:t name="identifier"/>, <bnf:t name="literalSegment"/>, <bnf:t
 name="CName"/>, <bnf:t name="nsName"/> or <bnf:t
-name="documentation"/></para></listitem>
+name="documentation"/>; or</para></listitem>

 <listitem><para>matches the grammar for <bnf:t
-name="separator"/></para></listitem>
+name="separator"/>.</para></listitem>

 </itemizedlist>

@@ -3055,7 +3074,7 @@
       <nt name="stringNoTripleQuot" as="y"/>
     </sequence>
     <function name="stringConcat">
-      <string>"</string>
+      <string>""</string>
       <ref name="x"/>
       <ref name="y"/>
     </function>
@@ -3096,7 +3115,7 @@
       <nt name="stringNoTripleApos" as="y"/>
     </sequence>
     <function name="stringConcat">
-      <string>'</string>
+      <string>''</string>
       <ref name="x"/>
       <ref name="y"/>
     </function>




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC