SoftXML
           hdmi splitter | XML Press
Suggest Your Service | Add your website            SoftXMLLib | SoftXMLEcartJS
Archive

SoftXML Archives


 
Sign Up for webmaster bulletin and receive a Free Email Marketing Success Strategies e-book.
Name:
Email:

Hosted Exchange 2010




Keyword Elite 2.0: The New Generation Of Keyword Research Software!


Learn dtd                     Go Back To tutorials List

DTD Elements

In a DTD, XML elements are declared with a DTD element declaration.


Declaring an Element

In the DTD, XML elements are declared with an element declaration. An element declaration has the following syntax:

<!ELEMENT element-name category>
or
<!ELEMENT element-name (element-content)>


Empty elements

Empty elements are declared with the category keyword EMPTY:

<!ELEMENT element-name EMPTY>

example:
<!ELEMENT br EMPTY>
XML example:
<br />


Elements with only character data

Elements with only character data are declared with #PCDATA inside parentheses:

<!ELEMENT element-name (#PCDATA)>

example:
<!ELEMENT from (#PCDATA)>


Elements with any contents

Elements declared with the category keyword ANY, can contain any combination of parsable data:

<!ELEMENT element-name ANY>
example:
<!ELEMENT note ANY>


Elements with children (sequences)

Elements with one or more children are defined with the name of the children elements inside parentheses:

<!ELEMENT element-name 
 (child-element-name)>
or
<!ELEMENT element-name 
 (child-element-name,child-element-name,.....)>
example:
<!ELEMENT note (to,from,heading,body)>

When children are declared in a sequence separated by commas, the children must appear in the same sequence in the document. In a full declaration, the children must also be declared, and the children can also have children. The full declaration of the "note" element will be:

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to      (#PCDATA)>
<!ELEMENT from    (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body    (#PCDATA)>


Declaring only one occurrence of the same element

<!ELEMENT element-name (child-name)>
example:
<!ELEMENT note (message)>

The example declaration above declares that the child element message must occur once, and only once inside the "note" element.


Declaring minimum one occurrence of the same element

<!ELEMENT element-name (child-name+)>
example:
<!ELEMENT note (message+)>

The + sign in the example above declares that the child element message must occur one or more times inside the "note" element.


Declaring zero or more occurrences of the same element

<!ELEMENT element-name (child-name*)>
example:
<!ELEMENT note (message*)>

The * sign in the example above declares that the child element message can occur zero or more times inside the "note" element.


Declaring zero or one occurrences of the same element

<!ELEMENT element-name (child-name?)>
example:
<!ELEMENT note (message?)>

The ? sign in the example above declares that the child element message can occur zero or one times inside the "note" element.


Declaring either/or content

example:
<!ELEMENT note (to,from,header,(message|body))>

The example above declares that the "note" element must contain a "to" element, a "from" element, a "header" element, and either a "message" or a "body" element.


Declaring mixed content

example:
<!ELEMENT note (#PCDATA|to|from|header|message)*>

The example above declares that the "note" element can contain zero or more occurrences of parsed character, "to", "from", "header", or "message" elements.

Get RSS for dtd


™SoftXML.   Privacy Statement  |  Link to Us  |  Articles Archive  |  Tutorials Archive  |  Portfolio Archive  |  Products Archive  |  XML Books
^Top