- 75 -
declaration would look like this:
The parser now thinks that a user element is made of one name type element; none, one,
or several e-mail_address type elements; and one optional title element.
Here’s what a valid user looks like:
Austin Sours
austins@being_silly.com
austins@being_even_sillier.commail_address>
International Man of Tartness
It could also look like this:
Austin Sours
International Man of Tartness
or even this:
Austin Sours
A nonvalid user
element would look like this:
austins@being_silly.com
International Man of Tartness
We just described most of the simple element type descriptions, and nothing is stopping
you from using more complicated combinations of the “zero or one” (?), “zero or more”
(*), and “one or more” (+) content model operators.
Again, we recommend keeping things as simple as possible—we’re big fans of the KISS
(keep it short and simple) philosophy—but we realize some scenarios won’t let you do
that. Table 3.5 lists some examples of how you can make elements with more specialized
content models.