operator
creating (sgml-dtds | xml-dtds) {string-expression}
The creating option of do sgml-parse or do xml-parse compiles a DTD and stores it on
the sgml-dtds or xml-dtds shelf. The compiled DTD will only be added if no fatal errors occur in
it.
When creating is specified, the parsing terminates at the end of the document prolog, and the document
instance is not parsed.
If the sgml-dtds or xml-dtds shelf does not already have such an item, a new item, with the
given key, will be created and added to the end of the shelf, and the newly compiled DTD stored in that item. If
the sgml-dtds or xml-dtds already has an item with the given key, then the newly created DTD
replaces the previous one.
The new sgml-dtds or xml-dtds item is not created until after the entire do sgml-parse
or do xml-parse action has completed. If there is an error in the declaration or the prolog (DTD) then
the sgml-dtds or xml-dtds shelf will not be updated.
Note that the input to do sgml-parse or do xml-parse can include a document,
although it is not necessary. If there is a document instance, it is not parsed when input is used to create a
DTD in this way.