<HTML><HEAD><TITLE>Xalan-C++ API Documentation</TITLE></HEAD>
<BODY>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center">The Xalan C++ XSLT Processor Version 1.10</h3>
</BODY>
<!-- Generated by Doxygen 1.2.8.1 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
<hr><h1>XalanHTMLElementsProperties::ElementProperties  Class Reference</h1>This class acts as a proxy for and <a class="el" href="structXalanHTMLElementsProperties_1_1InternalElementProperties.html">InternalElementProperties</a> instance. 
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="XalanHTMLElementsProperties_8hpp-source.html">XalanHTMLElementsProperties.hpp</a>&gt;</code>
<p>
<a href="classXalanHTMLElementsProperties_1_1ElementProperties-members.html">List of all members.</a><h2>Public Types</h2>
<ul>
<li>typedef InternalElementProperties::AttributeFlagsType <a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#s0">AttributeFlagsType</a>
<li>typedef InternalElementProperties::FlagsType <a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#s1">FlagsType</a>
</ul>
<h2>Public Methods</h2>
<ul>
<li><a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#a0">ElementProperties</a> (const <a class="el" href="structXalanHTMLElementsProperties_1_1InternalElementProperties.html">InternalElementProperties</a> *theProperties=0)
<dl class="el"><dd><font size=-1><em>Constructor.</em> <a href="#a0">More...</a><em><br><br></em></font></dl><li><a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#a1">ElementProperties</a> (const ElementProperties &amp;theSource)
<dl class="el"><dd><font size=-1><em>Copy constructor.</em> <a href="#a1">More...</a><em><br><br></em></font></dl><li>bool <a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#a2">null</a> () const
<dl class="el"><dd><font size=-1><em>Determine if this is a non-null instance.</em> <a href="#a2">More...</a><em><br><br></em></font></dl><li>bool <a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#a3">is</a> (<a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#s1">FlagsType</a> theFlags) const
<dl class="el"><dd><font size=-1><em>Check if particular properties are set for this instance.</em> <a href="#a3">More...</a><em><br><br></em></font></dl><li>bool <a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#a4">isAttribute</a> (const XalanDOMChar *theAttributeName, <a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#s0">AttributeFlagsType</a> theFlags) const
<dl class="el"><dd><font size=-1><em>Check if particular attribute properties are set for this instance.</em> <a href="#a4">More...</a><em><br><br></em></font></dl></ul>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This class acts as a proxy for and <a class="el" href="structXalanHTMLElementsProperties_1_1InternalElementProperties.html">InternalElementProperties</a> instance.
<p>
<hr><h2>Member Typedef Documentation</h2>
<a name="s0" doxytag="XalanHTMLElementsProperties::ElementProperties::AttributeFlagsType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef InternalElementProperties::AttributeFlagsType XalanHTMLElementsProperties::ElementProperties::AttributeFlagsType
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<a name="s1" doxytag="XalanHTMLElementsProperties::ElementProperties::FlagsType"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
typedef InternalElementProperties::FlagsType XalanHTMLElementsProperties::ElementProperties::FlagsType
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="XalanHTMLElementsProperties::ElementProperties::ElementProperties"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
XalanHTMLElementsProperties::ElementProperties::ElementProperties (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="structXalanHTMLElementsProperties_1_1InternalElementProperties.html">InternalElementProperties</a> * <em>theProperties</em> = 0&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Constructor.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theProperties</em>
&nbsp;</td><td>
The instance for which this one is a proxy. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a1" doxytag="XalanHTMLElementsProperties::ElementProperties::ElementProperties"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
XalanHTMLElementsProperties::ElementProperties::ElementProperties (
          </b></td>
          <td valign="bottom"><b>
const ElementProperties &amp; <em>theSource</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Copy constructor.
<p>
<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theSource</em>
&nbsp;</td><td>
The source instance for the copy. </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a3" doxytag="XalanHTMLElementsProperties::ElementProperties::is"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
bool XalanHTMLElementsProperties::ElementProperties::is (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#s1">FlagsType</a> <em>theFlags</em>&nbsp;) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Check if particular properties are set for this instance.
<p>
See the eFlag enum for the valid properties.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theFlags</em>
&nbsp;</td><td>
The properties to check. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
true if the property is set, false if not </dl>    </td>
  </tr>
</table>
<a name="a4" doxytag="XalanHTMLElementsProperties::ElementProperties::isAttribute"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
bool XalanHTMLElementsProperties::ElementProperties::isAttribute (
          </b></td>
          <td valign="bottom"><b>
const XalanDOMChar * <em>theAttributeName</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="classXalanHTMLElementsProperties_1_1ElementProperties.html#s0">AttributeFlagsType</a> <em>theFlags</em>&nbsp;) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Check if particular attribute properties are set for this instance.
<p>
See the eFlag enum for the valid properties.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>theAttributeName</em>
&nbsp;</td><td>
The attribute name. </td></tr>
<tr><td valign=top><em>theFlags</em>
&nbsp;</td><td>
The properties to check. </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
true if the property is set, false if not </dl>    </td>
  </tr>
</table>
<a name="a2" doxytag="XalanHTMLElementsProperties::ElementProperties::null"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
bool XalanHTMLElementsProperties::ElementProperties::null (
          </b></td>
          <td valign="bottom"><b>
) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Determine if this is a non-null instance.
<p>
You  must call this before calling any member functions, if you think the instance may be null.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
true if the instance is null, false if not </dl>    </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XalanHTMLElementsProperties_8hpp-source.html">XalanHTMLElementsProperties.hpp</a></ul>
<p align="center"><a href="diagramnotes.html">Interpreting class diagrams</a></p>
<p><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><A href="http://www.stack.nl/~dimitri/doxygen/">Doxygen</A> and 
<A href="http://www.research.att.com/sw/tools/graphviz/">GraphViz</A> are used to generate this API documentation from the Xalan-C header files.</I></FONT></p>

<TABLE border="0" cellpadding="0" cellspacing="0" width="820"><TR><TD bgcolor="#0086b2"><IMG height="1" src="../resources/dot.gif" width="1" alt="dot"></TD></TR></TABLE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="80%">
	<TR>
		<TD WIDTH="80%" VALIGN="TOP">
			<P ALIGN="CENTER"><B>Xalan-C++ XSLT Processor Version 1.10</B><BR>
			Copyright &copy; 1999-2004 The Apache Software Foundation. All Rights Reserved.</i></p>
		</TD>
	</TR>
	<TR>
		<TD WIDTH="100%">
			<P ALIGN="CENTER"><IMG SRC="ApacheLogo.jpg" WIDTH="387" HEIGHT="100" ALIGN="BOTTOM" BORDER="0" ALT="Apache Logo">
		</TD>
	</TR>
</TABLE>
