<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.model</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.model</strong></font><br>
               Class XSLModelObjectFactory</h2><br><hr><pre>public class <strong>XSLModelObjectFactory</strong>
extends java.lang.Object</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLModelObjectFactory">XSLModelObjectFactory</a></strong>(org.w3c.dom.Element element
         ,
      org.eclipse.wst.xsl.core.model.XSLElement xslEl
         ,
      org.eclipse.wst.xsl.core.internal.model.StylesheetParserData data)</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public org.eclipse.wst.xsl.core.model.XSLElement</code></td><td width="" align="left"><code><a href="#method_createXSLModelObject">createXSLModelObject</a>()</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               Creates an XSL Model Object of the appropriate type.</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                  Constructor Detail
               </h2></td></tr></table><h2><a name="con_XSLModelObjectFactory">XSLModelObjectFactory</a></h2><p><code>public <strong>XSLModelObjectFactory</strong>(org.w3c.dom.Element element
         ,
      org.eclipse.wst.xsl.core.model.XSLElement xslEl
         ,
      org.eclipse.wst.xsl.core.internal.model.StylesheetParserData data)</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                  Methods Detail
               </h2></td></tr></table><h2><a name="method_createXSLModelObject">createXSLModelObject</a></h2><p><code>public org.eclipse.wst.xsl.core.model.XSLElement <strong>createXSLModelObject</strong>()</code></p><p>Creates an XSL Model Object of the appropriate type.</p><h3>Returns</h3><p><code>org.eclipse.wst.xsl.core.model.XSLElement</code></p><hr></body></html>