In the DocBook mailinglist I've suggested to extend the content model for abstract.
Currently, abstract is definied in DocBook 5.0 as follows:
db.abstract =
## A summary
element abstract {
db.abstract.attlist, db.abstract.info, db.para.blocks+
}
Adding block elements as a child of abstract is not possible. As a writer, you are forced to insert your block elements into para. This makes it difficult to create a customization of DocBook whereas para behaves like simpara.
If abstract was designed to contain text only, why allow para in addition? Allowing block elements therein makes it a bit easier for writers.
As such, I would propose to allow also block elements as a child of abstract:
db.abstract =
## A summary
element abstract {
db.abstract.attlist, db.abstract.info, (db.para.blocks | db.nopara.blocks)+
}
or even all block elements, as an alternative:
db.abstract =
## A summary
element abstract {
db.abstract.attlist, db.abstract.info, db.all.blocks+
}
I see the following benefits:
paras. Allowing such block elements as child elements just makes it feel more "natural" :)paras. Allowing block elements in abstract makes DocBook schema customization easier.(I was unsure which milestone to select, leaving it as 5.1 for the time being).
I see,
db.nonpara.blockscontainsdb.bridgehead. Not sure if this would be useful. Better we should disallow it inside anabstract.