code: void build(String namespace, String name, String nameAlias,
               XSLTElementDef[] elements, XSLTAttributeDef[] attributes,
               XSLTElementProcessor contentHandler, Class classObject)
    {
  
      this.m_namespace = namespace;
      this.m_name = name;
      this.m_nameAlias = nameAlias;
      this.m_elements = elements;
      this.m_attributes = attributes;
  
      setElementProcessor(contentHandler);
  
      this.m_classObject = classObject;
  		
  		if (hasRequired() && m_elements != null)
  		{
  			int n = m_elements.length;
  			for (int i = 0; i < n; i++)
  			{
  				XSLTElementDef def = m_elements[i];
  				
  				if (def != null && def.getRequired())
  				{
  					if (m_requiredFound == null)			
  						m_requiredFound = new Hashtable();
  					m_requiredFound.put(def.getName(), "xsl:" +def.getName()); 
  				}
  			}
  		}
    }
docs: Construct an instance of XSLTElementDef.
  
  @param namespace  The Namespace URI, "*", or null.
  @param name The local name (without prefix), "*", or null.
  @param nameAlias A potential alias for the name, or null.
  @param elements An array of allowed child element defs, or null.
  @param attributes An array of allowed attribute defs, or null.
  @param contentHandler The element processor for this element.
  @param classObject The class of the object that this element def should produce.