Methods, systems, computer program products, and methods of doing business
by using a meta-editor to generate components (e.g., a specification of a
rules language that restricts editing operations on structured documents,
a specification of rules according to this language, and a graphical user
interface editor that operates according to the specified rules) for use
in controlling or restricting the changes that can be made to contents of
a structured document (e.g., a document encoded in the Extensible Markup
Language, or "XML"). A Document Type Definition ("DTD") is generated as a
"bounding DTD", based on editing choices made using the meta editor, and
one or more structured documents containing editing restrictions are
generated according to this DTD and these editing choices. An editor (or
editing component) is generated that programmatically determines which
elements of another structured document can be edited, which elements
should be hidden, and so forth. By restricting the parts of the file that
can be edited, users who need to do the editing are shielded from
irrelevant details, and can carry out their task with less risk of making
errors (and without needing to understand the details of the structured
document markup language).