David,

Here it is how I see this, text formated below.

I expanded the content to contain attributes (as in Relax NG there is no 
difference between elements and attributes) and also I included things 
like sequence, choice, optional, one or more and zero or more with the 
usual symbols (,|?+*). There are two content models defined for 
name-class and pattern and each element is marked to the best of my 
knowledge as pattern or name class.
I also corrected some errors like for instance you say that the anyName 
does not allow names from the rng ns but it allows in fact any name.
Also added the ns and datatypeLibrary attributes that can be added to 
any element at the end.

Elements
------------

Element: anyName (name-class)
Any name in any namespace
except(as name-class)?

Element: attribute (pattern)
Matches attributes
(@name | [name-class]), [pattern]*

Element: choice (name-class)
Specifies a union of name-classes
[name-class]+

Element: choice (pattern)
List of valid pattern choices
[pattern]+

Element: data (pattern)
A single text node of a specific data type
@type, param*, except?

Element: define
A named pattern, may specify combine as choice or interleave
@name, @combine?, [pattern]+

Element: div
Wraps a logical division of a Schema
(start | define | div | include)*

Element: element (pattern)
Matches elements
(@name|[name-class]), [pattern]

Element: empty (pattern)
Matches an empty node
{empty}

Element: except (name-class)
Specifies a difference of name-classes
[name-class]

Element: except (pattern)
Removes values(s) from a data pattern
[pattern]

Element: externalRef (pattern)
Reference to an external Schema
@href

Element: grammar (pattern)
Defines named patterns and the start pattern.
(start | define | div | include)*

Element: group (pattern)
An ordered set of patterns
[pattern]+

Element: include (pattern)
Includes an external grammar and merges its definitions
@href, (start | define | div)*

Element: interleave (pattern)
Allows the contents to be mixed in any order. (& from SGML
if you remember it)
[pattern]+

Element: list (pattern)
Splits a text node into whitespace separated tokens
[pattern]+

Element: mixed (pattern)
Shorthand for interleave with an embedded text pattern
[pattern]+

Element: name (name-class)
Defines a name-class with a single name
{QName}

Element: notAllowed (pattern)
Always fails, provides abstract definitions that must be overwritten 
before use.
{empty}

Element: nsName (name-class)
Any name in a namespace.
except?

Element: oneOrMore (pattern)
The children of this element may be used one or more times (+ in DTD)
[pattern]+

Element: optional (pattern)
Contains optional patterns
[pattern]+

Element: param
Specifies parameters constraining datatypes
@name, #text

Element: parentRef (pattern)
Defines a reference to a named pattern in the parent grammar
@name

Element: ref (pattern)
Defines a reference to a named pattern
@name

Element: start (pattern)
The start pattern may specify combine as choice or interleave,
defines the root element(s) for validation
@combine?, [pattern]+

Element: text (pattern)
zero or more text nodes
{empty}

Element: value (pattern)
Matches a text node against a specified value
{text}

Element: zeroOrMore (pattern)
The children of this elements may be used zero or more times (* in DTD)
[pattern]+

Content model definitions
--------------------------------
[[pattern]]
(element | attribute | group | interleave | choice(as pattern) |
optional | zeroOrMore | oneOrMore | list | mixed |
ref | parentRef | empty | text | value | data |
notAllowed | externalRef | grammar)

[[name-class]]
name | anyName | nsName | choice(as name-class)

Global attributes - apply to all elements
-------------------------------------------------
Attribute: ns
Defines the default namespace to be used for unqualified names.

Attribute: datatypeLibrary
A URI identifying the library of datatypes being used.


Hope that helps,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com



Dave Pawson wrote:
> Updated.
> 
> Comments please.
> 
> regards DaveP
> 
> 
> 
>  
> Yahoo! Groups Links
> 
> 
> 
>  


------------------------ Yahoo! Groups Sponsor --------------------~--> 
Most low income households are not online. Help bridge the digital divide today!
http://us.click.yahoo.com/cd_AJB/QnQLAA/TtwFAA/2U_rlB/TM
--------------------------------------------------------------------~-> 

 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/rng-users/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 




Reply via email to