The most common problem encountered with XSQL is with the < symbol. This sym- bol is also an operator in SQL, so its special status in XML causes problems. The fol- lowing XSQL page will produce an error: <?xml version=”1.0”?> <page connection=”demo” xmlns:xsql=”urn:oracle-xsql”> <xsql:query> select * from emp where sal < 50000 </xsql:query> </page> When the XML parser encounters the <, it thinks that it has encountered a new tag. When it encounters the next character, a space, it gives up. There are two workarounds: (1) Use the escape sequence as demonstrated in the following code, or (2) use CDATA, which is covered in the next section. <?xml version=”1.0”?> <page connection=”demo” xmlns:xsql=”urn:oracle-xsql”> <xsql:query> select * from emp where sal &lt; 50000 </xsql:query> </page> CDATA The CDATA entity allows you to declare a section of character data off-limits to the XML parser. When the parser encounters the CDATA declaration, it skips all characters inside of it. Here is an example that resolves the earlier problem with the < operator: <?xml version=”1.0”?> <page connection=”demo” xmlns:xsql=”urn:oracle-xsql”> <xsql:query> <![CDATA[ select * from emp where sal < 50000 ]]> </xsql:query> </page> CDATA  entities  are  useful  any  time  that  you  have  sections  that  shouldn’t  be processed because they also take a load of the processor. Comments No programming language is complete without comments. The syntax for comments in XML is as follows. It is identical to HTML comments. <!—- An XML Comment —> 20 Chapter 1 271209 Ch01.F  12/9/02  2:00 PM  Page 20