DTD Building Blocks : XMLPritesh
In the last chapter we have learnt basics of XML DTD. In this chapter we will be learning the different parts of DTD or different building blocks of the XML DTD.
Main XML DTD Building Blocks :
|Elements||Main nodes and main building block|
|Attributes||Extra information about element.|
|Entities||Special characters in XML|
|PCDATA||parsed character data|
A. XML Elements :
In HTML and XML, Elements are main building blocks.Consider the following XML document –
<Book pages="100"> <name>Learn XML</name> <author>Pritesh</author> <type>Scripting</type> </Book>
In the above example, XML elements are –
|Element||Name of the Element|
Now each element in the XML document can contain either another element or data.
|Name of the element||What data it stores ?|
|Book||This XML element stores 3 elements in it|
|name||This XML stores Textual data|
|author||This XML stores Textual data|
|type||This XML stores Textual data|
B. XML Attributes :
XML Attribute provides some kind of extra information about XML element. Attributes are kind of name and value pair which provides some information of element.
Consider the following example –
<Book pages="100" type="script"> <name>Learn XML</name> <author>Pritesh</author> </Book>
Now in this example –
<Book pages="100" type="script">
|Name||Element/Attribute ?||Attribute value|
C. XML Entities :
We know that XML tags are written inside the pair of < and >. So problem occures if we put these characters as textual data inside the XML.
So some characters which are having special meaning in the XML document are called as entities. XML provides list of following entities –
D. PCDATA / CDATA :
|PCDATA means parsed character data.||CDATA means character data.|
|Generally used for Elements||Generally used for Attributes|
|PCDATA is text that will be parsed by a parser||CDATA is text that will not be parsed by a parser|
|Tags inside the text will be treated as markup and entities will be expanded||Tags inside the text will NOT be treated as markup and entities will not be expanded|