Damien Fitzpatrick wrote:
>
> I am looking at using XXE for creating DocBook documents. I have noticed
> that XXE will not allow the insertion of nested <section> elements within
> the DocBook DTD from the Insert dialog. However, the DocBook DTD clearly
> states that <section> is a valid element to be placed within <section>. A
> nested <section> element even displays properly in the XXE styled view. eg:
>
> 1. Section 1 Title
> Section one para
> 1.1 Nested section title
> nested section para
>
> XXE will allow "Insert After" for <sections> but not allow a section to be
> inserted into a section. It will even allow a paragraph in an existing
> section to be replaced by a new (and nested) section.
>
> Just so you bug hunters know, I am using XXE V2 SP2.
I think there is a misunderstanding here (may be you are used to other
XML editors). In XXE, "Insert" means Insert *inside* and you certainly
cannot insert a section *inside* a para (let's say the caret is within a
para).
Command "Insert after" will *not* allow you to insert a nested section
after a para unless this para is the *last* child of its section.
Command "Replace" will *not* allow you to replace a para with a nested
section unless this para is the *last* child of its section.
This behavior is compliant with what is specified in the DTD:
--------------------------------------------------------------------------
Section ::=
(SectionInfo?,
(Title,Subtitle?,TitleAbbrev?),
(ToC|LoT|Index|Glossary|Bibliography)*,
(((CalloutList|GlossList|ItemizedList|OrderedList|SegmentedList|
SimpleList|VariableList|Caution|Important|Note|Tip|Warning|
LiteralLayout|ProgramListing|ProgramListingCO|Screen|ScreenCO|
ScreenShot|Synopsis|CmdSynopsis|FuncSynopsis|FormalPara|Para|
SimPara|Address|BlockQuote|Graphic|GraphicCO|MediaObject|
MediaObjectCO|InformalEquation|InformalExample|InformalFigure|
InformalTable|Equation|Example|Figure|Table|MsgSet|Procedure|
Sidebar|QandASet|Anchor|BridgeHead|Comment|Highlights|
Abstract|AuthorBlurb|Epigraph|IndexTerm)+,
((RefEntry)*|
Section*))|
(RefEntry)+|
Section+),
(ToC|LoT|Index|Glossary|Bibliography)*)
Para ::=
((#PCDATA|FootnoteRef|XRef|Abbrev|Acronym|Citation|CiteRefEntry|
CiteTitle|Emphasis|FirstTerm|ForeignPhrase|GlossTerm|Footnote|
Phrase|Quote|Trademark|WordAsWord|Link|OLink|ULink|Action|
Application|ClassName|Command|ComputerOutput|Database|Email|
EnVar|ErrorCode|ErrorName|ErrorType|Filename|Function|GUIButton|
GUIIcon|GUILabel|GUIMenu|GUIMenuItem|GUISubmenu|Hardware|
Interface|InterfaceDefinition|KeyCap|KeyCode|KeyCombo|KeySym|
Literal|Constant|Markup|MediaLabel|MenuChoice|MouseButton|
MsgText|Option|Optional|Parameter|Prompt|Property|Replaceable|
ReturnValue|SGMLTag|StructField|StructName|Symbol|SystemItem|
Token|Type|UserInput|VarName|Anchor|Author|AuthorInitials|
CorpAuthor|ModeSpec|OtherCredit|ProductName|ProductNumber|
RevHistory|Comment|Subscript|Superscript|InlineGraphic|
InlineMediaObject|InlineEquation|Synopsis|CmdSynopsis|
FuncSynopsis|IndexTerm|CalloutList|GlossList|ItemizedList|
OrderedList|SegmentedList|SimpleList|VariableList|Caution|
Important|Note|Tip|Warning|LiteralLayout|ProgramListing|
ProgramListingCO|Screen|ScreenCO|ScreenShot|Address|BlockQuote|
Graphic|GraphicCO|MediaObject|MediaObjectCO|InformalEquation|
InformalExample|InformalFigure|InformalTable|Equation|Example|
Figure|Table)+)
-------------------------------------------------------------------------
I can guarantee you that there is no bug here.