<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4678208212409305277</id><updated>2011-12-29T08:37:43.685-08:00</updated><category term='DTD'/><category term='Data Integration Basic'/><title type='text'>Ameya Karkal</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ameyakarkal.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4678208212409305277.post-4295036231622286133</id><published>2009-12-06T01:19:00.000-08:00</published><updated>2009-12-06T01:19:37.473-08:00</updated><title type='text'>Misc Links</title><content type='html'>&lt;span style="font-size: x-small;"&gt;&lt;i&gt;&lt;b&gt;Section&lt;/b&gt; C and Pointers: &lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;i&gt;best site for C pointer introduction.&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.augustcouncil.com/%7Etgibson/tutorial/ptr.html"&gt;http://www.augustcouncil.com/~tgibson/tutorial/ptr.html&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: xx-small;"&gt;this site describes how the actual evolution of pointers from the need to reference the address of a particular variable.and changing the value of the variable using its address/pointer.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4678208212409305277-4295036231622286133?l=ameyakarkal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/4295036231622286133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/4295036231622286133'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/2009/12/misc-links.html' title='Misc Links'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4678208212409305277.post-3117316849248298097</id><published>2009-10-13T19:08:00.001-07:00</published><updated>2009-10-13T19:09:33.009-07:00</updated><title type='text'>Data Integration :Basics</title><content type='html'>&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;this tutorial gives the basics of Data Integration.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;the foundation of data integration are laid by covering the following topics.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;a href="http://ameyakarkal.blogspot.com/2009/10/data-integration-basicsdtd.html"&gt;DTD&lt;/a&gt;&amp;nbsp;:basics of DTD.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4678208212409305277-3117316849248298097?l=ameyakarkal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/3117316849248298097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/3117316849248298097'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/2009/10/data-integration-basics.html' title='Data Integration :Basics'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4678208212409305277.post-4586948292692513336</id><published>2009-10-13T19:08:00.000-07:00</published><updated>2009-10-13T20:00:46.095-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DTD'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Integration Basic'/><title type='text'>Data Integration Basics:DTD</title><content type='html'>&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;DTD can be defined within the xml or independently.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;a xml file has a document type declaration at the start which specifies the DTD which controls the structure of the xml.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;!DOCTYPE &lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: lime;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;note &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;SYSTEM "&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: magenta;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;note.dtd&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="background-color: lime;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;note&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="background-color: lime;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;:root element of the xml&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: magenta;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;note.dtd&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; is the DTD itself.If the DTD is available at http://www.abc123.com then&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;!DOCTYPE note SYSTEM "http://www.abc123.com"&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;is the declaration the xml.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: small;"&gt;Building blocks of DTD and XML&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Elements&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;:are the primary blocks which can contain data or elements.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: lime;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;head&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;body &lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: yellow;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;bgcolor="red"&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Attributes&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;:associated with elements eg:bgcolor&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;PCDATA&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;: text in the xml which can be parsed to get other elements.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;CDATA&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; &amp;nbsp;: text in the xml which cannot be parsed.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Elements&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;there are three types of elements depending on the content type&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;declaration 1:&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;!ELEMENT element-name content-type&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;element-name&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; is the name of the element node&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;content-type&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; can be&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;EMPTY&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; to indicate the element is empty&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;ANY&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; to indicate that the element can either be empty or contain other elements&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;(#PCDATA)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; indicates that the element would contain other elements and needs to be parsed.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;the content-type can also be specified by sequence of the children and the number of occurance can be specified using regular expression notations such as + ,? and * . the children are separated by commas.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;"|" is used for union.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Attribute definition&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;!ATTLIST element-name attribute-name attribute-type default-value&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;the attribute type takes the following values&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;CDATA &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;indicates character values which need not be parsed.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;ID&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;&amp;nbsp;there can be a single attribute in an element with the type as ID.It needs be unique for the all such elements.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;IDREF &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;it is analogous to foriegn reference in databases .the value it refers must refer to id of some other element.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;(value1|value2)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; indicates that value of the attribute can be either value1 or value2.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif; font-size: small;"&gt;there are other tags associated with the attribute .this inlcudes&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;#IMPLIED&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; which indicates the attribute is optional&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;#REQUIRED&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; makes the attribute mandatory&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;#FIXED&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;"value1"&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; indicates that the value is optional but if not given then the default value is provided.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Entity&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; : this was designed to save space.it acts like the #define declaration in C.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;Entities can be external where the entity is replaced by entire xml documents or other resource.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&amp;lt;!Entity ABC "this is the replaced text" &amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;replaces all occurance of &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;ABC&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt; by &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;"this is the replaced text"&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;References&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;An Introduction to XML and Web Technologies by Moller and Schwartzbach.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;a href="http://www.w3schools.com/DTD/"&gt;http://www.w3schools.com/DTD/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://ameyakarkal.blogspot.com/2009/10/data-integration-basics.html"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;back to home&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;/div&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Verdana, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;span style="font-family: Verdana, sans-serif; font-size: small;"&gt;&lt;span style="font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4678208212409305277-4586948292692513336?l=ameyakarkal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/4586948292692513336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/4586948292692513336'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/2009/10/data-integration-basicsdtd.html' title='Data Integration Basics:DTD'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4678208212409305277.post-1783532225399162191</id><published>2009-07-23T20:30:00.000-07:00</published><updated>2009-07-23T21:02:35.872-07:00</updated><title type='text'>Step II -defining custom tags in taglib.tld</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;this tutorial gives an overview of all the defining a custom tag in a taglib and the general architecture of tags in javax.servlet.jsp.ext.* package.&lt;br /&gt;&lt;br /&gt;Classification of tags.&lt;br /&gt;tags can be classified depending on their characteristics into general categories&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;Empty tags&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;Iterative tags&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;tags with JSP content&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;the tag architecture shows the root with the interface Tag.&lt;br /&gt;Tag:&lt;br /&gt;the tag interface defines two functions&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;doStartTag &lt;/span&gt;&lt;br /&gt;returns EVAL_BODY_INCLUDE to include the contents of the tag.&lt;br /&gt;                returns SKIP_BODY if the contents /processing of the tag is not to be carried out.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;doEndTag&lt;/span&gt;&lt;br /&gt;returns EVAL_JSP to include the contents of the jsp&lt;br /&gt;returns SKIP_JSP to avoid the&lt;br /&gt;defining a custom tag.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;defining a custom tag.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4678208212409305277-1783532225399162191?l=ameyakarkal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/1783532225399162191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/1783532225399162191'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/2009/07/step-ii-defining-custom-tags-in.html' title='Step II -defining custom tags in taglib.tld'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4678208212409305277.post-7159760307454231368</id><published>2009-07-05T15:13:00.000-07:00</published><updated>2009-07-05T15:17:50.910-07:00</updated><title type='text'>Introduction to listeners [basic servlet container model part II]</title><content type='html'>&lt;span style="font-family:Verdana;font-size:85%;"&gt;There are specific  customized tasks which need to carried out in different applications for actions taken by the container like creation of a request object,creation of a session,addition of a object to the sesssion.these tasks and many others can be carried out using listeners.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Depending on the container objects which they listen to the listeners can be boardly classified into three types:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;context listener&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;request listener&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;response listener&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4678208212409305277-7159760307454231368?l=ameyakarkal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/7159760307454231368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/7159760307454231368'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/2009/07/introduction-to-listeners-basic-servlet.html' title='Introduction to listeners [basic servlet container model part II]'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4678208212409305277.post-7185537537632831684</id><published>2009-06-04T20:02:00.000-07:00</published><updated>2009-06-04T20:15:57.023-07:00</updated><title type='text'>Step I:how the jsp engine finds the tag library definition [the .tld file]</title><content type='html'>&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Introduction:&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;tag library developement is supported due to two main reasons.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1.to remove the clutter on the presentation layer generated by use of scriplets.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;2.follow the golden rule of reuse where the presentation layer logic can be reused over multiple screens.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;There are two important goals which need to be considered for tag library.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1.how the jsp engine is going to find the definition of the custom tags&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;2.how to implemen the classes which would support the custom tags.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Issue I:custom tag discovery by jsp engine.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;a mapping is usually used for a tag library.there are three methods of specifying the use of a TL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1.explicit mapping in the web.xml&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;2.implicit mapping in the tag library .tld file&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3.implicit mapping where the container is aware of the tag library.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;the three mappings are shown in the image:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;EXPLICIT MAPPING&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;in case of explicit mapping in the web.xml there are two cases&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;CASE A:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if the location starts with a / it indicates to the jsp engine that the location of the tld file is&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;taglib&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;taglib-uri&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;taglib-location&amp;gt;/abc/a.tld&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;/taglib&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;location of the file:[doc_root]/abc/a.tld&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;CASE B:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if the location does not start with the / then it indicates that the location is under WEB-INF folder.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;eg:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" ;font-family:verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Georgia;font-size:16px;"&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;taglib&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;taglib-uri&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;taglib-location&amp;gt;abc/a.tld&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;/taglib&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;location of the file:[doc_root]/WEB-INF/abc/a.tld&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;actual translation of the tld:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;the engine gets the location of the .tld file using the following logic&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1.check if a mapping exists in the web.xml file for the uri&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;2.if a mapping exists&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;a.if the location is the root search the location from the root of the web application&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;doc_root&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;/location&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/doc_root&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;b.if the location is relative [without the /location],then the location of the file is under the WEB-INF folder&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;doc_root&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;/WEB-INF/location&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/doc_root&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3.if the mapping is not found then the uri is the location of the .tld file.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;a.the location is not found and the jsp engine raises an error.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;b.if the location is the root search the location from the root of the web application&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="  ;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;doc_root&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;/location&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/doc_root&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;c.if the location is not absolute then the location is relative to the jsp&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;if the jsp lies in the location [doc_root]/jsp/a.jsp and the uri is loc_doc/a.tld&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;then the location of the .tld file is [doc_root]/jsp/loc_doc/a.tld&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Types of tags:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1.empty tags :the presence of the tags itself signify the data: &amp;lt;myTag:required/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;2.tags with attributes&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;:&amp;lt;myTag:newTag name="A"/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3.tags with JSP code&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;:&amp;lt;myTag:fontTag&amp;gt;${name}&amp;lt;/myTag:fontTag&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;4.tags with nested tags&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;:&amp;lt;myTag:outertag &amp;lt;myTag:innerTag/&amp;gt;&amp;lt;myTag:outerTag&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=" ;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4678208212409305277-7185537537632831684?l=ameyakarkal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/7185537537632831684'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4678208212409305277/posts/default/7185537537632831684'/><link rel='alternate' type='text/html' href='http://ameyakarkal.blogspot.com/2009/06/jstl-tags.html' title='Step I:how the jsp engine finds the tag library definition [the .tld file]'/><author><name>Ameya</name><uri>http://www.blogger.com/profile/06602898545396056152</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry></feed>
