<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.core.internal.modelhandler</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.core.internal.modelhandler</strong></font><br>
               Class ModelHandlerForXSL</h2><br><hr><pre>public class <strong>ModelHandlerForXSL</strong>
extends ModelHandlerForXML</pre>Provides generic XML model handling. It is also marked as the default
 content type handler. There should be only one implementation of the
 default.<hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>package-private static  java.lang.String</code></td><td width="80%" align="left"><code><a href="#field_AssociatedContentTypeID">AssociatedContentTypeID</a></code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               Needs to match what's in plugin registry. In fact, can be overwritten
 at run time with what's in registry! (so should never be 'final')</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_ModelHandlerForXSL">ModelHandlerForXSL</a></strong>()</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 IDocumentLoader</code></td><td width="" align="left"><code><a href="#method_getDocumentLoader">getDocumentLoader</a>()</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IDocumentCharsetDetector</code></td><td width="" align="left"><code><a href="#method_getEncodingDetector">getEncodingDetector</a>()</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public IModelLoader</code></td><td width="" align="left"><code><a href="#method_getModelLoader">getModelLoader</a>()</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                  Field Detail
               </h2></td></tr></table><h2><a name="field_AssociatedContentTypeID">AssociatedContentTypeID</a></h2><p><code>package-private static  java.lang.String <strong>AssociatedContentTypeID</strong></code></p><table><tr><td>Needs to match what's in plugin registry. In fact, can be overwritten
 at run time with what's in registry! (so should never be 'final')</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_ModelHandlerForXSL">ModelHandlerForXSL</a></h2><p><code>public <strong>ModelHandlerForXSL</strong>()</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_getDocumentLoader">getDocumentLoader</a></h2><p><code>public IDocumentLoader <strong>getDocumentLoader</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentLoader</code></p><hr><h2><a name="method_getEncodingDetector">getEncodingDetector</a></h2><p><code>public IDocumentCharsetDetector <strong>getEncodingDetector</strong>()</code></p><p></p><h3>Returns</h3><p><code>IDocumentCharsetDetector</code></p><hr><h2><a name="method_getModelLoader">getModelLoader</a></h2><p><code>public IModelLoader <strong>getModelLoader</strong>()</code></p><p></p><h3>Returns</h3><p><code>IModelLoader</code></p><hr></body></html>