//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v1.0.1-05/30/2003 05:06 AM(java_re)-fcs 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2004.05.05 at 11:43:44 PDT 
//


package DDLSchema;


/**
 * This object contains factory methods for each 
 * Java content interface and Java element interface 
 * generated in the DDLSchema package. 
 * <p>An ObjectFactory allows you to programatically 
 * construct new instances of the Java representation 
 * for XML content. The Java representation of XML 
 * content can consist of schema derived interfaces 
 * and classes representing the binding of schema 
 * type definitions, element declarations and model 
 * groups.  Factory methods for each of these are 
 * provided in this class.
 * 
 */
public class ObjectFactory
    extends DDLSchema.impl.runtime.DefaultJAXBContextImpl
{

    private static java.util.HashMap defaultImplementations = new java.util.HashMap();
    public final static java.lang.Class version = (DDLSchema.impl.JAXBVersion.class);

    static {
        defaultImplementations.put("DDLSchema.ParE", "DDLSchema.impl.ParEImpl");
        defaultImplementations.put("DDLSchema.Solid", "DDLSchema.impl.SolidImpl");
        defaultImplementations.put("DDLSchema.Tubs", "DDLSchema.impl.TubsImpl");
        defaultImplementations.put("DDLSchema.Material", "DDLSchema.impl.MaterialImpl");
        defaultImplementations.put("DDLSchema.TubsType", "DDLSchema.impl.TubsTypeImpl");
        defaultImplementations.put("DDLSchema.Polycone", "DDLSchema.impl.PolyconeImpl");
        defaultImplementations.put("DDLSchema.ElementaryMaterialType", "DDLSchema.impl.ElementaryMaterialTypeImpl");
        defaultImplementations.put("DDLSchema.RReflectionRotation", "DDLSchema.impl.RReflectionRotationImpl");
        defaultImplementations.put("DDLSchema.ReflectionRotation", "DDLSchema.impl.ReflectionRotationImpl");
        defaultImplementations.put("DDLSchema.PartSelectorType", "DDLSchema.impl.PartSelectorTypeImpl");
        defaultImplementations.put("DDLSchema.SectionType", "DDLSchema.impl.SectionTypeImpl");
        defaultImplementations.put("DDLSchema.AlgoPosPartType", "DDLSchema.impl.AlgoPosPartTypeImpl");
        defaultImplementations.put("DDLSchema.CompositeMaterial", "DDLSchema.impl.CompositeMaterialImpl");
        defaultImplementations.put("DDLSchema.LogicalPartSection", "DDLSchema.impl.LogicalPartSectionImpl");
        defaultImplementations.put("DDLSchema.PosPart", "DDLSchema.impl.PosPartImpl");
        defaultImplementations.put("DDLSchema.DDDefinition", "DDLSchema.impl.DDDefinitionImpl");
        defaultImplementations.put("DDLSchema.AlgoPosPart", "DDLSchema.impl.AlgoPosPartImpl");
        defaultImplementations.put("DDLSchema.Tube", "DDLSchema.impl.TubeImpl");
        defaultImplementations.put("DDLSchema.PolyconeType", "DDLSchema.impl.PolyconeTypeImpl");
        defaultImplementations.put("DDLSchema.RRotation", "DDLSchema.impl.RRotationImpl");
        defaultImplementations.put("DDLSchema.PosPartSection", "DDLSchema.impl.PosPartSectionImpl");
        defaultImplementations.put("DDLSchema.ConeType", "DDLSchema.impl.ConeTypeImpl");
        defaultImplementations.put("DDLSchema.ShapelessSolid", "DDLSchema.impl.ShapelessSolidImpl");
        defaultImplementations.put("DDLSchema.SpecParSection", "DDLSchema.impl.SpecParSectionImpl");
        defaultImplementations.put("DDLSchema.Constant", "DDLSchema.impl.ConstantImpl");
        defaultImplementations.put("DDLSchema.Trd1Type", "DDLSchema.impl.Trd1TypeImpl");
        defaultImplementations.put("DDLSchema.ShapelessSolidType", "DDLSchema.impl.ShapelessSolidTypeImpl");
        defaultImplementations.put("DDLSchema.Section", "DDLSchema.impl.SectionImpl");
        defaultImplementations.put("DDLSchema.TrapezoidType", "DDLSchema.impl.TrapezoidTypeImpl");
        defaultImplementations.put("DDLSchema.MaterialFraction", "DDLSchema.impl.MaterialFractionImpl");
        defaultImplementations.put("DDLSchema.ConstantsSectionType", "DDLSchema.impl.ConstantsSectionTypeImpl");
        defaultImplementations.put("DDLSchema.ConstantsSection", "DDLSchema.impl.ConstantsSectionImpl");
        defaultImplementations.put("DDLSchema.TranslationType", "DDLSchema.impl.TranslationTypeImpl");
        defaultImplementations.put("DDLSchema.DDDefinitionType", "DDLSchema.impl.DDDefinitionTypeImpl");
        defaultImplementations.put("DDLSchema.Box", "DDLSchema.impl.BoxImpl");
        defaultImplementations.put("DDLSchema.ZSectionType", "DDLSchema.impl.ZSectionTypeImpl");
        defaultImplementations.put("DDLSchema.BoxType", "DDLSchema.impl.BoxTypeImpl");
        defaultImplementations.put("DDLSchema.RotationSectionType", "DDLSchema.impl.RotationSectionTypeImpl");
        defaultImplementations.put("DDLSchema.ReflectionSolidType", "DDLSchema.impl.ReflectionSolidTypeImpl");
        defaultImplementations.put("DDLSchema.MaterialFractionType", "DDLSchema.impl.MaterialFractionTypeImpl");
        defaultImplementations.put("DDLSchema.RotationType", "DDLSchema.impl.RotationTypeImpl");
        defaultImplementations.put("DDLSchema.SolidSection", "DDLSchema.impl.SolidSectionImpl");
        defaultImplementations.put("DDLSchema.ReferenceType", "DDLSchema.impl.ReferenceTypeImpl");
        defaultImplementations.put("DDLSchema.ReflectionSolid", "DDLSchema.impl.ReflectionSolidImpl");
        defaultImplementations.put("DDLSchema.SpecParSectionType", "DDLSchema.impl.SpecParSectionTypeImpl");
        defaultImplementations.put("DDLSchema.MaterialType", "DDLSchema.impl.MaterialTypeImpl");
        defaultImplementations.put("DDLSchema.RSolid", "DDLSchema.impl.RSolidImpl");
        defaultImplementations.put("DDLSchema.ParameterType", "DDLSchema.impl.ParameterTypeImpl");
        defaultImplementations.put("DDLSchema.SpecPar", "DDLSchema.impl.SpecParImpl");
        defaultImplementations.put("DDLSchema.RParent", "DDLSchema.impl.RParentImpl");
        defaultImplementations.put("DDLSchema.RotationSection", "DDLSchema.impl.RotationSectionImpl");
        defaultImplementations.put("DDLSchema.MaterialSection", "DDLSchema.impl.MaterialSectionImpl");
        defaultImplementations.put("DDLSchema.UnionSolid", "DDLSchema.impl.UnionSolidImpl");
        defaultImplementations.put("DDLSchema.LogicalPartType", "DDLSchema.impl.LogicalPartTypeImpl");
        defaultImplementations.put("DDLSchema.SpecParType", "DDLSchema.impl.SpecParTypeImpl");
        defaultImplementations.put("DDLSchema.RZPointType", "DDLSchema.impl.RZPointTypeImpl");
        defaultImplementations.put("DDLSchema.ParS", "DDLSchema.impl.ParSImpl");
        defaultImplementations.put("DDLSchema.PartSelector", "DDLSchema.impl.PartSelectorImpl");
        defaultImplementations.put("DDLSchema.Cone", "DDLSchema.impl.ConeImpl");
        defaultImplementations.put("DDLSchema.SolidType", "DDLSchema.impl.SolidTypeImpl");
        defaultImplementations.put("DDLSchema.MaterialSectionType", "DDLSchema.impl.MaterialSectionTypeImpl");
        defaultImplementations.put("DDLSchema.Polyhedra", "DDLSchema.impl.PolyhedraImpl");
        defaultImplementations.put("DDLSchema.Trapezoid", "DDLSchema.impl.TrapezoidImpl");
        defaultImplementations.put("DDLSchema.RMaterial", "DDLSchema.impl.RMaterialImpl");
        defaultImplementations.put("DDLSchema.ElementaryMaterial", "DDLSchema.impl.ElementaryMaterialImpl");
        defaultImplementations.put("DDLSchema.Translation", "DDLSchema.impl.TranslationImpl");
        defaultImplementations.put("DDLSchema.Trd1", "DDLSchema.impl.Trd1Impl");
        defaultImplementations.put("DDLSchema.Parameter", "DDLSchema.impl.ParameterImpl");
        defaultImplementations.put("DDLSchema.IntersectionSolid", "DDLSchema.impl.IntersectionSolidImpl");
        defaultImplementations.put("DDLSchema.LogicalPartSectionType", "DDLSchema.impl.LogicalPartSectionTypeImpl");
        defaultImplementations.put("DDLSchema.RZPoint", "DDLSchema.impl.RZPointImpl");
        defaultImplementations.put("DDLSchema.RChild", "DDLSchema.impl.RChildImpl");
        defaultImplementations.put("DDLSchema.Rotation", "DDLSchema.impl.RotationImpl");
        defaultImplementations.put("DDLSchema.ZSection", "DDLSchema.impl.ZSectionImpl");
        defaultImplementations.put("DDLSchema.PolyhedraType", "DDLSchema.impl.PolyhedraTypeImpl");
        defaultImplementations.put("DDLSchema.SubtractionSolid", "DDLSchema.impl.SubtractionSolidImpl");
        defaultImplementations.put("DDLSchema.CompositeMaterialType", "DDLSchema.impl.CompositeMaterialTypeImpl");
        defaultImplementations.put("DDLSchema.SolidSectionType", "DDLSchema.impl.SolidSectionTypeImpl");
        defaultImplementations.put("DDLSchema.PosPartType", "DDLSchema.impl.PosPartTypeImpl");
        defaultImplementations.put("DDLSchema.PosPartSectionType", "DDLSchema.impl.PosPartSectionTypeImpl");
        defaultImplementations.put("DDLSchema.TubeType", "DDLSchema.impl.TubeTypeImpl");
        defaultImplementations.put("DDLSchema.BooleanSolidType", "DDLSchema.impl.BooleanSolidTypeImpl");
        defaultImplementations.put("DDLSchema.LogicalPart", "DDLSchema.impl.LogicalPartImpl");
    }

    /**
     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: DDLSchema
     * 
     */
    public ObjectFactory() {
        super(new DDLSchema.ObjectFactory.GrammarInfoImpl());
    }

    /**
     * Create an instance of the specified Java content interface.
     * 
     * @param javaContentInterface the Class object of the javacontent interface to instantiate
     * @return a new instance
     * @throws JAXBException if an error occurs
     */
    public java.lang.Object newInstance(java.lang.Class javaContentInterface)
        throws javax.xml.bind.JAXBException
    {
        return super.newInstance(javaContentInterface);
    }

    /**
     * Get the specified property. This method can only be
     * used to get provider specific properties.
     * Attempting to get an undefined property will result
     * in a PropertyException being thrown.
     * 
     * @param name the name of the property to retrieve
     * @return the value of the requested property
     * @throws PropertyException when there is an error retrieving the given property or value
     */
    public java.lang.Object getProperty(java.lang.String name)
        throws javax.xml.bind.PropertyException
    {
        return super.getProperty(name);
    }

    /**
     * Set the specified property. This method can only be
     * used to set provider specific properties.
     * Attempting to set an undefined property will result
     * in a PropertyException being thrown.
     * 
     * @param name the name of the property to retrieve
     * @param value the value of the property to be set
     * @throws PropertyException when there is an error processing the given property or value
     */
    public void setProperty(java.lang.String name, java.lang.Object value)
        throws javax.xml.bind.PropertyException
    {
        super.setProperty(name, value);
    }

    /**
     * Create an instance of ParE
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ParE createParE()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ParEImpl();
    }

    /**
     * Create an instance of Solid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Solid createSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SolidImpl();
    }

    /**
     * Create an instance of Tubs
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Tubs createTubs()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TubsImpl();
    }

    /**
     * Create an instance of Material
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Material createMaterial()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.MaterialImpl();
    }

    /**
     * Create an instance of TubsType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.TubsType createTubsType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TubsTypeImpl();
    }

    /**
     * Create an instance of Polycone
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Polycone createPolycone()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PolyconeImpl();
    }

    /**
     * Create an instance of ElementaryMaterialType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ElementaryMaterialType createElementaryMaterialType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ElementaryMaterialTypeImpl();
    }

    /**
     * Create an instance of RReflectionRotation
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RReflectionRotation createRReflectionRotation()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RReflectionRotationImpl();
    }

    /**
     * Create an instance of ReflectionRotation
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ReflectionRotation createReflectionRotation()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ReflectionRotationImpl();
    }

    /**
     * Create an instance of PartSelectorType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PartSelectorType createPartSelectorType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PartSelectorTypeImpl();
    }

    /**
     * Create an instance of SectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SectionType createSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SectionTypeImpl();
    }

    /**
     * Create an instance of AlgoPosPartType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.AlgoPosPartType createAlgoPosPartType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.AlgoPosPartTypeImpl();
    }

    /**
     * Create an instance of CompositeMaterial
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.CompositeMaterial createCompositeMaterial()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.CompositeMaterialImpl();
    }

    /**
     * Create an instance of LogicalPartSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.LogicalPartSection createLogicalPartSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.LogicalPartSectionImpl();
    }

    /**
     * Create an instance of PosPart
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PosPart createPosPart()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PosPartImpl();
    }

    /**
     * Create an instance of DDDefinition
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.DDDefinition createDDDefinition()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.DDDefinitionImpl();
    }

    /**
     * Create an instance of AlgoPosPart
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.AlgoPosPart createAlgoPosPart()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.AlgoPosPartImpl();
    }

    /**
     * Create an instance of Tube
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Tube createTube()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TubeImpl();
    }

    /**
     * Create an instance of PolyconeType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PolyconeType createPolyconeType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PolyconeTypeImpl();
    }

    /**
     * Create an instance of RRotation
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RRotation createRRotation()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RRotationImpl();
    }

    /**
     * Create an instance of PosPartSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PosPartSection createPosPartSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PosPartSectionImpl();
    }

    /**
     * Create an instance of ConeType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ConeType createConeType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ConeTypeImpl();
    }

    /**
     * Create an instance of ShapelessSolid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ShapelessSolid createShapelessSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ShapelessSolidImpl();
    }

    /**
     * Create an instance of SpecParSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SpecParSection createSpecParSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SpecParSectionImpl();
    }

    /**
     * Create an instance of Constant
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Constant createConstant()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ConstantImpl();
    }

    /**
     * Create an instance of Trd1Type
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Trd1Type createTrd1Type()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.Trd1TypeImpl();
    }

    /**
     * Create an instance of ShapelessSolidType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ShapelessSolidType createShapelessSolidType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ShapelessSolidTypeImpl();
    }

    /**
     * Create an instance of Section
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Section createSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SectionImpl();
    }

    /**
     * Create an instance of TrapezoidType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.TrapezoidType createTrapezoidType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TrapezoidTypeImpl();
    }

    /**
     * Create an instance of MaterialFraction
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.MaterialFraction createMaterialFraction()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.MaterialFractionImpl();
    }

    /**
     * Create an instance of ConstantsSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ConstantsSectionType createConstantsSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ConstantsSectionTypeImpl();
    }

    /**
     * Create an instance of ConstantsSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ConstantsSection createConstantsSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ConstantsSectionImpl();
    }

    /**
     * Create an instance of TranslationType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.TranslationType createTranslationType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TranslationTypeImpl();
    }

    /**
     * Create an instance of DDDefinitionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.DDDefinitionType createDDDefinitionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.DDDefinitionTypeImpl();
    }

    /**
     * Create an instance of Box
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Box createBox()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.BoxImpl();
    }

    /**
     * Create an instance of ZSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ZSectionType createZSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ZSectionTypeImpl();
    }

    /**
     * Create an instance of BoxType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.BoxType createBoxType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.BoxTypeImpl();
    }

    /**
     * Create an instance of RotationSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RotationSectionType createRotationSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RotationSectionTypeImpl();
    }

    /**
     * Create an instance of ReflectionSolidType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ReflectionSolidType createReflectionSolidType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ReflectionSolidTypeImpl();
    }

    /**
     * Create an instance of MaterialFractionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.MaterialFractionType createMaterialFractionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.MaterialFractionTypeImpl();
    }

    /**
     * Create an instance of RotationType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RotationType createRotationType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RotationTypeImpl();
    }

    /**
     * Create an instance of SolidSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SolidSection createSolidSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SolidSectionImpl();
    }

    /**
     * Create an instance of ReferenceType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ReferenceType createReferenceType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ReferenceTypeImpl();
    }

    /**
     * Create an instance of ReflectionSolid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ReflectionSolid createReflectionSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ReflectionSolidImpl();
    }

    /**
     * Create an instance of SpecParSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SpecParSectionType createSpecParSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SpecParSectionTypeImpl();
    }

    /**
     * Create an instance of MaterialType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.MaterialType createMaterialType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.MaterialTypeImpl();
    }

    /**
     * Create an instance of RSolid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RSolid createRSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RSolidImpl();
    }

    /**
     * Create an instance of ParameterType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ParameterType createParameterType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ParameterTypeImpl();
    }

    /**
     * Create an instance of SpecPar
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SpecPar createSpecPar()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SpecParImpl();
    }

    /**
     * Create an instance of RParent
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RParent createRParent()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RParentImpl();
    }

    /**
     * Create an instance of RotationSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RotationSection createRotationSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RotationSectionImpl();
    }

    /**
     * Create an instance of MaterialSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.MaterialSection createMaterialSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.MaterialSectionImpl();
    }

    /**
     * Create an instance of UnionSolid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.UnionSolid createUnionSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.UnionSolidImpl();
    }

    /**
     * Create an instance of LogicalPartType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.LogicalPartType createLogicalPartType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.LogicalPartTypeImpl();
    }

    /**
     * Create an instance of SpecParType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SpecParType createSpecParType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SpecParTypeImpl();
    }

    /**
     * Create an instance of RZPointType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RZPointType createRZPointType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RZPointTypeImpl();
    }

    /**
     * Create an instance of ParS
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ParS createParS()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ParSImpl();
    }

    /**
     * Create an instance of PartSelector
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PartSelector createPartSelector()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PartSelectorImpl();
    }

    /**
     * Create an instance of Cone
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Cone createCone()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ConeImpl();
    }

    /**
     * Create an instance of SolidType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SolidType createSolidType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SolidTypeImpl();
    }

    /**
     * Create an instance of MaterialSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.MaterialSectionType createMaterialSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.MaterialSectionTypeImpl();
    }

    /**
     * Create an instance of Polyhedra
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Polyhedra createPolyhedra()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PolyhedraImpl();
    }

    /**
     * Create an instance of Trapezoid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Trapezoid createTrapezoid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TrapezoidImpl();
    }

    /**
     * Create an instance of RMaterial
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RMaterial createRMaterial()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RMaterialImpl();
    }

    /**
     * Create an instance of ElementaryMaterial
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ElementaryMaterial createElementaryMaterial()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ElementaryMaterialImpl();
    }

    /**
     * Create an instance of Translation
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Translation createTranslation()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TranslationImpl();
    }

    /**
     * Create an instance of Trd1
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Trd1 createTrd1()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.Trd1Impl();
    }

    /**
     * Create an instance of Parameter
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Parameter createParameter()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ParameterImpl();
    }

    /**
     * Create an instance of IntersectionSolid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.IntersectionSolid createIntersectionSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.IntersectionSolidImpl();
    }

    /**
     * Create an instance of LogicalPartSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.LogicalPartSectionType createLogicalPartSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.LogicalPartSectionTypeImpl();
    }

    /**
     * Create an instance of RZPoint
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RZPoint createRZPoint()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RZPointImpl();
    }

    /**
     * Create an instance of RChild
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.RChild createRChild()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RChildImpl();
    }

    /**
     * Create an instance of Rotation
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.Rotation createRotation()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.RotationImpl();
    }

    /**
     * Create an instance of ZSection
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.ZSection createZSection()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.ZSectionImpl();
    }

    /**
     * Create an instance of PolyhedraType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PolyhedraType createPolyhedraType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PolyhedraTypeImpl();
    }

    /**
     * Create an instance of SubtractionSolid
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SubtractionSolid createSubtractionSolid()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SubtractionSolidImpl();
    }

    /**
     * Create an instance of CompositeMaterialType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.CompositeMaterialType createCompositeMaterialType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.CompositeMaterialTypeImpl();
    }

    /**
     * Create an instance of SolidSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.SolidSectionType createSolidSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.SolidSectionTypeImpl();
    }

    /**
     * Create an instance of PosPartType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PosPartType createPosPartType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PosPartTypeImpl();
    }

    /**
     * Create an instance of PosPartSectionType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.PosPartSectionType createPosPartSectionType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.PosPartSectionTypeImpl();
    }

    /**
     * Create an instance of TubeType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.TubeType createTubeType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.TubeTypeImpl();
    }

    /**
     * Create an instance of BooleanSolidType
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.BooleanSolidType createBooleanSolidType()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.BooleanSolidTypeImpl();
    }

    /**
     * Create an instance of LogicalPart
     * 
     * @throws JAXBException if an error occurs
     */
    public DDLSchema.LogicalPart createLogicalPart()
        throws javax.xml.bind.JAXBException
    {
        return new DDLSchema.impl.LogicalPartImpl();
    }

    private static class GrammarInfoImpl
        extends DDLSchema.impl.runtime.AbstractGrammarInfoImpl
    {


        public java.lang.Class getDefaultImplementation(java.lang.Class javaContentInterface) {
            java.lang.Class c = null;
            try {
                c = java.lang.Class.forName(((java.lang.String) defaultImplementations.get(javaContentInterface.getName())));
            } catch (java.lang.Exception _x) {
                c = null;
            }
            return c;
        }

        public DDLSchema.impl.runtime.UnmarshallingEventHandler createUnmarshaller(java.lang.String uri, java.lang.String local, DDLSchema.impl.runtime.UnmarshallingContext context) {
            if (("SubtractionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.SubtractionSolidImpl().createUnmarshaller(context);
            }
            if (("Translation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.TranslationImpl().createUnmarshaller(context);
            }
            if (("SpecPar" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.SpecParImpl().createUnmarshaller(context);
            }
            if (("Cone" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ConeImpl().createUnmarshaller(context);
            }
            if (("PartSelector" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.PartSelectorImpl().createUnmarshaller(context);
            }
            if (("ReflectionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ReflectionSolidImpl().createUnmarshaller(context);
            }
            if (("rSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RSolidImpl().createUnmarshaller(context);
            }
            if (("UnionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.UnionSolidImpl().createUnmarshaller(context);
            }
            if (("RotationSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RotationSectionImpl().createUnmarshaller(context);
            }
            if (("ConstantsSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ConstantsSectionImpl().createUnmarshaller(context);
            }
            if (("Parameter" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ParameterImpl().createUnmarshaller(context);
            }
            if (("MaterialSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.MaterialSectionImpl().createUnmarshaller(context);
            }
            if (("rMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RMaterialImpl().createUnmarshaller(context);
            }
            if (("ParE" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ParEImpl().createUnmarshaller(context);
            }
            if (("Solid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.SolidImpl().createUnmarshaller(context);
            }
            if (("SpecParSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.SpecParSectionImpl().createUnmarshaller(context);
            }
            if (("Section" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.SectionImpl().createUnmarshaller(context);
            }
            if (("Rotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RotationImpl().createUnmarshaller(context);
            }
            if (("ReflectionRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ReflectionRotationImpl().createUnmarshaller(context);
            }
            if (("Box" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.BoxImpl().createUnmarshaller(context);
            }
            if (("MaterialFraction" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.MaterialFractionImpl().createUnmarshaller(context);
            }
            if (("PosPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.PosPartImpl().createUnmarshaller(context);
            }
            if (("CompositeMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.CompositeMaterialImpl().createUnmarshaller(context);
            }
            if (("IntersectionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.IntersectionSolidImpl().createUnmarshaller(context);
            }
            if (("Constant" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ConstantImpl().createUnmarshaller(context);
            }
            if (("Material" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.MaterialImpl().createUnmarshaller(context);
            }
            if (("DDDefinition" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.DDDefinitionImpl().createUnmarshaller(context);
            }
            if (("rReflectionRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RReflectionRotationImpl().createUnmarshaller(context);
            }
            if (("LogicalPartSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.LogicalPartSectionImpl().createUnmarshaller(context);
            }
            if (("Polyhedra" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.PolyhedraImpl().createUnmarshaller(context);
            }
            if (("ShapelessSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ShapelessSolidImpl().createUnmarshaller(context);
            }
            if (("ParS" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ParSImpl().createUnmarshaller(context);
            }
            if (("Trapezoid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.TrapezoidImpl().createUnmarshaller(context);
            }
            if (("Tubs" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.TubsImpl().createUnmarshaller(context);
            }
            if (("RZPoint" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RZPointImpl().createUnmarshaller(context);
            }
            if (("Trd1" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.Trd1Impl().createUnmarshaller(context);
            }
            if (("PosPartSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.PosPartSectionImpl().createUnmarshaller(context);
            }
            if (("LogicalPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.LogicalPartImpl().createUnmarshaller(context);
            }
            if (("rChild" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RChildImpl().createUnmarshaller(context);
            }
            if (("ElementaryMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ElementaryMaterialImpl().createUnmarshaller(context);
            }
            if (("rParent" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RParentImpl().createUnmarshaller(context);
            }
            if (("SolidSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.SolidSectionImpl().createUnmarshaller(context);
            }
            if (("Tube" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.TubeImpl().createUnmarshaller(context);
            }
            if (("rRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.RRotationImpl().createUnmarshaller(context);
            }
            if (("Polycone" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.PolyconeImpl().createUnmarshaller(context);
            }
            if (("AlgoPosPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.AlgoPosPartImpl().createUnmarshaller(context);
            }
            if (("ZSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return new DDLSchema.impl.ZSectionImpl().createUnmarshaller(context);
            }
            return null;
        }

        public java.lang.Class getRootElement(java.lang.String uri, java.lang.String local) {
            if (("SubtractionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.SubtractionSolidImpl.class);
            }
            if (("Translation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.TranslationImpl.class);
            }
            if (("SpecPar" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.SpecParImpl.class);
            }
            if (("Cone" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ConeImpl.class);
            }
            if (("PartSelector" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.PartSelectorImpl.class);
            }
            if (("ReflectionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ReflectionSolidImpl.class);
            }
            if (("rSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RSolidImpl.class);
            }
            if (("UnionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.UnionSolidImpl.class);
            }
            if (("RotationSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RotationSectionImpl.class);
            }
            if (("ConstantsSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ConstantsSectionImpl.class);
            }
            if (("Parameter" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ParameterImpl.class);
            }
            if (("MaterialSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.MaterialSectionImpl.class);
            }
            if (("rMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RMaterialImpl.class);
            }
            if (("ParE" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ParEImpl.class);
            }
            if (("Solid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.SolidImpl.class);
            }
            if (("SpecParSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.SpecParSectionImpl.class);
            }
            if (("Section" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.SectionImpl.class);
            }
            if (("Rotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RotationImpl.class);
            }
            if (("ReflectionRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ReflectionRotationImpl.class);
            }
            if (("Box" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.BoxImpl.class);
            }
            if (("MaterialFraction" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.MaterialFractionImpl.class);
            }
            if (("PosPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.PosPartImpl.class);
            }
            if (("CompositeMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.CompositeMaterialImpl.class);
            }
            if (("IntersectionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.IntersectionSolidImpl.class);
            }
            if (("Constant" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ConstantImpl.class);
            }
            if (("Material" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.MaterialImpl.class);
            }
            if (("DDDefinition" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.DDDefinitionImpl.class);
            }
            if (("rReflectionRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RReflectionRotationImpl.class);
            }
            if (("LogicalPartSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.LogicalPartSectionImpl.class);
            }
            if (("Polyhedra" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.PolyhedraImpl.class);
            }
            if (("ShapelessSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ShapelessSolidImpl.class);
            }
            if (("ParS" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ParSImpl.class);
            }
            if (("Trapezoid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.TrapezoidImpl.class);
            }
            if (("Tubs" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.TubsImpl.class);
            }
            if (("RZPoint" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RZPointImpl.class);
            }
            if (("Trd1" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.Trd1Impl.class);
            }
            if (("PosPartSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.PosPartSectionImpl.class);
            }
            if (("LogicalPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.LogicalPartImpl.class);
            }
            if (("rChild" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RChildImpl.class);
            }
            if (("ElementaryMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ElementaryMaterialImpl.class);
            }
            if (("rParent" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RParentImpl.class);
            }
            if (("SolidSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.SolidSectionImpl.class);
            }
            if (("Tube" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.TubeImpl.class);
            }
            if (("rRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.RRotationImpl.class);
            }
            if (("Polycone" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.PolyconeImpl.class);
            }
            if (("AlgoPosPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.AlgoPosPartImpl.class);
            }
            if (("ZSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return (DDLSchema.impl.ZSectionImpl.class);
            }
            return null;
        }

        public boolean recognize(java.lang.String uri, java.lang.String local) {
            if (("SubtractionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Translation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("SpecPar" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Cone" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("PartSelector" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ReflectionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("rSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("UnionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("RotationSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ConstantsSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Parameter" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("MaterialSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("rMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ParE" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Solid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("SpecParSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Section" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Rotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ReflectionRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Box" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("MaterialFraction" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("PosPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("CompositeMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("IntersectionSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Constant" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Material" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("DDDefinition" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("rReflectionRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("LogicalPartSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Polyhedra" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ShapelessSolid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ParS" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Trapezoid" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Tubs" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("RZPoint" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Trd1" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("PosPartSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("LogicalPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("rChild" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ElementaryMaterial" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("rParent" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("SolidSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Tube" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("rRotation" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("Polycone" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("AlgoPosPart" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            if (("ZSection" == local)&&("http://www.cern.ch/cms/DDL" == uri)) {
                return true;
            }
            return false;
        }

        public java.lang.String[] getProbePoints() {
            return new java.lang.String[] {"http://www.cern.ch/cms/DDL", "SubtractionSolid", "http://www.cern.ch/cms/DDL", "Translation", "http://www.cern.ch/cms/DDL", "SpecPar", "http://www.cern.ch/cms/DDL", "Cone", "http://www.cern.ch/cms/DDL", "PartSelector", "http://www.cern.ch/cms/DDL", "ReflectionSolid", "http://www.cern.ch/cms/DDL", "rSolid", "http://www.cern.ch/cms/DDL", "UnionSolid", "http://www.cern.ch/cms/DDL", "RotationSection", "http://www.cern.ch/cms/DDL", "ConstantsSection", "http://www.cern.ch/cms/DDL", "Parameter", "http://www.cern.ch/cms/DDL", "MaterialSection", "http://www.cern.ch/cms/DDL", "rMaterial", "http://www.cern.ch/cms/DDL", "ParE", "http://www.cern.ch/cms/DDL", "Solid", "http://www.cern.ch/cms/DDL", "SpecParSection", "http://www.cern.ch/cms/DDL", "Section", "http://www.cern.ch/cms/DDL", "Rotation", "http://www.cern.ch/cms/DDL", "ReflectionRotation", "http://www.cern.ch/cms/DDL", "Box", "http://www.cern.ch/cms/DDL", "MaterialFraction", "http://www.cern.ch/cms/DDL", "PosPart", "http://www.cern.ch/cms/DDL", "CompositeMaterial", "http://www.cern.ch/cms/DDL", "IntersectionSolid", "http://www.cern.ch/cms/DDL", "Constant", "http://www.cern.ch/cms/DDL", "Material", "http://www.cern.ch/cms/DDL", "DDDefinition", "http://www.cern.ch/cms/DDL", "rReflectionRotation", "http://www.cern.ch/cms/DDL", "LogicalPartSection", "http://www.cern.ch/cms/DDL", "Polyhedra", "http://www.cern.ch/cms/DDL", "ShapelessSolid", "http://www.cern.ch/cms/DDL", "ParS", "http://www.cern.ch/cms/DDL", "Trapezoid", "http://www.cern.ch/cms/DDL", "Tubs", "http://www.cern.ch/cms/DDL", "RZPoint", "http://www.cern.ch/cms/DDL", "Trd1", "http://www.cern.ch/cms/DDL", "PosPartSection", "http://www.cern.ch/cms/DDL", "LogicalPart", "http://www.cern.ch/cms/DDL", "rChild", "http://www.cern.ch/cms/DDL", "ElementaryMaterial", "http://www.cern.ch/cms/DDL", "rParent", "http://www.cern.ch/cms/DDL", "SolidSection", "http://www.cern.ch/cms/DDL", "Tube", "http://www.cern.ch/cms/DDL", "rRotation", "http://www.cern.ch/cms/DDL", "Polycone", "http://www.cern.ch/cms/DDL", "AlgoPosPart", "http://www.cern.ch/cms/DDL", "ZSection"};
        }

    }

}
