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


Help: OASIS Mailing Lists Help | MarkMail Help



   what's the reason for mixed data?

[ Lists Home | Date Index | Thread Index ]
  • From: james anderson <mecom-gmbh@mixx.de>
  • To: <xml-dev@ic.ac.uk>
  • Date: Mon, 17 Nov 97 12:21:58 +0100


we're trying to understand why the XML spec (wrt 
specifies a special status for elements which contain mixed data. to make 
it specific, why is 

  [43] cp ::= (Name | choice | seq) ('?' | '*' | '+')?


  [43] cp ::= (#PCDATA | CDATA | Name | choice | seq) ('?' | '*' | '+')?


what's the reason to specify a form (mixed data) which <EM>must</EM> 
permit repetition and
arbitrary order as soon as PCDATA is allowed?

to give an example of the problem, assume the following CLOS declarations:

(defClass class-1 ()
  ((slot-1 :type string)))
(defClass class-2 ()
  ((slot-2 :type (or string class-1))))

how would this be declared?

<!ELEMENT class-1 (slot-1)>
<!ELEMENT class-2 (slot-2)>
<!ELEMENT slot-2 (#PCDATA | class-1)>

makes sense, but would seem to be disallowed by

[50] Mixed ::= '(' S? %( %'#PCDATA' (S? '|' S? %Mtoks)* ) S? ')*' 
               | '(' S? %('#PCDATA') S? ')'

which would appear to stipulate the repetition as soon as  elements and 
PCDATA appear together. on the other hand, 

<!ELEMENT slot-2 (#PCDATA | class-1)*>

would not be a correct translation, since that is the equivalent of

(defClass class-2 ()
  ((slot-2 :type (list (or string class-1)))))

can anyone explain the ')*' requirement in [50]?

thanks, james.

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS