Steve,
   While other forms are permitted in SGML (and in a FrameMaker EDD), XML 
restricts the use of #PCDATA to content models of the form:

    (#PCDATA | elt1 | elt2 | ...)*

or the simple form:

    (#PCDATA)

Your expression:

     ChapterNumber, <TEXT>

corresponds to:

     ChapterNumber, #PCDATA

does not meet this restriction. You can change your general rule in 
FrameMaker to:

    (<TEXT> | ChapterNumber)*

This rule will accept all sequences consisting of a ChapterNumber followed 
by text, but will also accept other data that you probably do not want 
(such as two ChapterNumbers or text folowed by a ChapterNumber). You can 
use conditional text to use the original expression when you import element 
definitions from an EDD into a structured document or template and the 
above form when you create a DTD. The conditional approach means that 
validating your structured document will confirm that the content meets the 
model you really want even though XML validation will accept undesirable 
variations.

         --Lynne


At 11:31 AM 11/28/2006, Steve Rickaby wrote:
>Struggling with a structured app here...
>
>I have tried to pare everything down to the minimum. The element definition;
>
>Element (Container): TableofContents
>General rule:   ChapterNumber, <TEXT>
>Valid as the highest-level element.
>Automatic insertions
>Automatically insert child:     ChapterNumber
>
>in the EDD translates to:
>
><!ELEMENT TableofContents
>                      (ChapterNumber, #PCDATA) >
>
>in the DTD.
>
>Having set up a structured app, when saving a valid file to XML (which 
>does not in fact contain this element), the XML parser errors on the '#' 
>character of '#PCDATA', saying 'Expected an element name'.
>
>Lots of other errors follow, but the first is maybe the most significant.
>
>What am I doing wrong? My reading of the struct app dev guide is that 
><TEXT> elements are converted to #PCDATA on export to XML.
>
>--
>Steve
>_______________________________________________
>
>
>You are currently subscribed to Framers as lprice at txstruct.com.
>
>Send list messages to framers at lists.frameusers.com.
>
>To unsubscribe send a blank email to
>framers-unsubscribe at lists.frameusers.com
>or visit 
>http://lists.frameusers.com/mailman/options/framers/lprice%40txstruct.com
>
>Send administrative questions to listadmin at frameusers.com. Visit
>http://www.frameusers.com/ for more resources and info.


Lynne A. Price
Text Structure Consulting, Inc.
Specializing in structured FrameMaker consulting, application development, 
and training
lprice at txstruct.com            http://www.txstruct.com
voice/fax: (510) 583-1505      cell phone: (510) 421-2284 



Reply via email to