Serialization
A new serialization property saxon:internal-dtd-subset
is available with the XML output
method (see Serialization parameters).
The value is a string conforming to the XML grammar production intSubset
; it is included
in the serialized document "as is", without checking. As with any string, special characters will need to
be escaped, for example "<
" is written as "<
". The square brackets that
enclose the internal subset within the Document Type Declaration should not be included in the value.
When used with xsl:result-document
or fn:serialize()
, the value can be constructed
programmatically. This provides an alternative to the saxon:doctype
extension instruction, and
is a better solution to the requirement architecturally because it sits firmly in the serialization arena
rather than masquerading as an instruction affecting the contents of the result tree.