/**
 * phongType.java This file was generated by XMLSpy 2006sp2 Enterprise Edition.
 * YOU SHOULD NOT MODIFY THIS FILE, BECAUSE IT WILL BE OVERWRITTEN WHEN YOU
 * RE-RUN CODE GENERATION. Refer to the XMLSpy Documentation for further
 * details. http://www.altova.com/xmlspy
 */

package com.jmex.model.collada.schema;

public class phongType extends com.jmex.model.collada.xml.Node {

    private static final long serialVersionUID = 1L;

    public phongType(phongType node) {
        super(node);
    }

    public phongType(org.w3c.dom.Node node) {
        super(node);
    }

    public phongType(org.w3c.dom.Document doc) {
        super(doc);
    }

    public phongType(com.jmex.model.collada.xml.Document doc,
            String namespaceURI, String prefix, String name) {
        super(doc, namespaceURI, prefix, name);
    }

    public void adjustPrefix() {
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "emission"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "emission", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_color_or_texture_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "ambient"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "ambient", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_color_or_texture_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "diffuse"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "diffuse", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_color_or_texture_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "specular"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "specular", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_color_or_texture_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "shininess"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "shininess", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_float_or_param_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflective"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "reflective", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_color_or_texture_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflectivity"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "reflectivity", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_float_or_param_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparent"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "transparent", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_color_or_texture_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparency"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "transparency", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_float_or_param_type(tmpNode).adjustPrefix();
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
            new common_float_or_param_type(tmpNode).adjustPrefix();
        }
    }

    public static int getemissionMinCount() {
        return 0;
    }

    public static int getemissionMaxCount() {
        return 1;
    }

    public int getemissionCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "emission");
    }

    public boolean hasemission() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "emission");
    }

    public common_color_or_texture_type newemission() {
        return new common_color_or_texture_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "emission"));
    }

    public common_color_or_texture_type getemissionAt(int index)
            throws Exception {
        return new common_color_or_texture_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "emission", index)));
    }

    public org.w3c.dom.Node getStartingemissionCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "emission");
    }

    public org.w3c.dom.Node getAdvancedemissionCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "emission",
                curNode);
    }

    public common_color_or_texture_type getemissionValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_color_or_texture_type(dereference(curNode));
    }

    public common_color_or_texture_type getemission() throws Exception {
        return getemissionAt(0);
    }

    public void removeemissionAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "emission",
                index);
    }

    public void removeemission() {
        while (hasemission())
            removeemissionAt(0);
    }

    public void addemission(common_color_or_texture_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "emission", value);
    }

    public void insertemissionAt(common_color_or_texture_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "emission", index, value);
    }

    public void replaceemissionAt(common_color_or_texture_type value, int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "emission", index, value);
    }

    public static int getambientMinCount() {
        return 0;
    }

    public static int getambientMaxCount() {
        return 1;
    }

    public int getambientCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "ambient");
    }

    public boolean hasambient() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "ambient");
    }

    public common_color_or_texture_type newambient() {
        return new common_color_or_texture_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "ambient"));
    }

    public common_color_or_texture_type getambientAt(int index)
            throws Exception {
        return new common_color_or_texture_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "ambient", index)));
    }

    public org.w3c.dom.Node getStartingambientCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "ambient");
    }

    public org.w3c.dom.Node getAdvancedambientCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "ambient",
                curNode);
    }

    public common_color_or_texture_type getambientValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_color_or_texture_type(dereference(curNode));
    }

    public common_color_or_texture_type getambient() throws Exception {
        return getambientAt(0);
    }

    public void removeambientAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "ambient",
                index);
    }

    public void removeambient() {
        while (hasambient())
            removeambientAt(0);
    }

    public void addambient(common_color_or_texture_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "ambient", value);
    }

    public void insertambientAt(common_color_or_texture_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "ambient", index, value);
    }

    public void replaceambientAt(common_color_or_texture_type value, int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "ambient", index, value);
    }

    public static int getdiffuseMinCount() {
        return 0;
    }

    public static int getdiffuseMaxCount() {
        return 1;
    }

    public int getdiffuseCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "diffuse");
    }

    public boolean hasdiffuse() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "diffuse");
    }

    public common_color_or_texture_type newdiffuse() {
        return new common_color_or_texture_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "diffuse"));
    }

    public common_color_or_texture_type getdiffuseAt(int index)
            throws Exception {
        return new common_color_or_texture_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "diffuse", index)));
    }

    public org.w3c.dom.Node getStartingdiffuseCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "diffuse");
    }

    public org.w3c.dom.Node getAdvanceddiffuseCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "diffuse",
                curNode);
    }

    public common_color_or_texture_type getdiffuseValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_color_or_texture_type(dereference(curNode));
    }

    public common_color_or_texture_type getdiffuse() throws Exception {
        return getdiffuseAt(0);
    }

    public void removediffuseAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "diffuse",
                index);
    }

    public void removediffuse() {
        while (hasdiffuse())
            removediffuseAt(0);
    }

    public void adddiffuse(common_color_or_texture_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "diffuse", value);
    }

    public void insertdiffuseAt(common_color_or_texture_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "diffuse", index, value);
    }

    public void replacediffuseAt(common_color_or_texture_type value, int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "diffuse", index, value);
    }

    public static int getspecularMinCount() {
        return 0;
    }

    public static int getspecularMaxCount() {
        return 1;
    }

    public int getspecularCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "specular");
    }

    public boolean hasspecular() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "specular");
    }

    public common_color_or_texture_type newspecular() {
        return new common_color_or_texture_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "specular"));
    }

    public common_color_or_texture_type getspecularAt(int index)
            throws Exception {
        return new common_color_or_texture_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "specular", index)));
    }

    public org.w3c.dom.Node getStartingspecularCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "specular");
    }

    public org.w3c.dom.Node getAdvancedspecularCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "specular",
                curNode);
    }

    public common_color_or_texture_type getspecularValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_color_or_texture_type(dereference(curNode));
    }

    public common_color_or_texture_type getspecular() throws Exception {
        return getspecularAt(0);
    }

    public void removespecularAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "specular",
                index);
    }

    public void removespecular() {
        while (hasspecular())
            removespecularAt(0);
    }

    public void addspecular(common_color_or_texture_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "specular", value);
    }

    public void insertspecularAt(common_color_or_texture_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "specular", index, value);
    }

    public void replacespecularAt(common_color_or_texture_type value, int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "specular", index, value);
    }

    public static int getshininessMinCount() {
        return 0;
    }

    public static int getshininessMaxCount() {
        return 1;
    }

    public int getshininessCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "shininess");
    }

    public boolean hasshininess() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "shininess");
    }

    public common_float_or_param_type newshininess() {
        return new common_float_or_param_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "shininess"));
    }

    public common_float_or_param_type getshininessAt(int index)
            throws Exception {
        return new common_float_or_param_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "shininess", index)));
    }

    public org.w3c.dom.Node getStartingshininessCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "shininess");
    }

    public org.w3c.dom.Node getAdvancedshininessCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "shininess",
                curNode);
    }

    public common_float_or_param_type getshininessValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_float_or_param_type(dereference(curNode));
    }

    public common_float_or_param_type getshininess() throws Exception {
        return getshininessAt(0);
    }

    public void removeshininessAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "shininess",
                index);
    }

    public void removeshininess() {
        while (hasshininess())
            removeshininessAt(0);
    }

    public void addshininess(common_float_or_param_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "shininess", value);
    }

    public void insertshininessAt(common_float_or_param_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "shininess", index, value);
    }

    public void replaceshininessAt(common_float_or_param_type value, int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "shininess", index, value);
    }

    public static int getreflectiveMinCount() {
        return 0;
    }

    public static int getreflectiveMaxCount() {
        return 1;
    }

    public int getreflectiveCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflective");
    }

    public boolean hasreflective() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflective");
    }

    public common_color_or_texture_type newreflective() {
        return new common_color_or_texture_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "reflective"));
    }

    public common_color_or_texture_type getreflectiveAt(int index)
            throws Exception {
        return new common_color_or_texture_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "reflective", index)));
    }

    public org.w3c.dom.Node getStartingreflectiveCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflective");
    }

    public org.w3c.dom.Node getAdvancedreflectiveCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflective",
                curNode);
    }

    public common_color_or_texture_type getreflectiveValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_color_or_texture_type(dereference(curNode));
    }

    public common_color_or_texture_type getreflective() throws Exception {
        return getreflectiveAt(0);
    }

    public void removereflectiveAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflective",
                index);
    }

    public void removereflective() {
        while (hasreflective())
            removereflectiveAt(0);
    }

    public void addreflective(common_color_or_texture_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "reflective", value);
    }

    public void insertreflectiveAt(common_color_or_texture_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "reflective", index, value);
    }

    public void replacereflectiveAt(common_color_or_texture_type value,
            int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "reflective", index, value);
    }

    public static int getreflectivityMinCount() {
        return 0;
    }

    public static int getreflectivityMaxCount() {
        return 1;
    }

    public int getreflectivityCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflectivity");
    }

    public boolean hasreflectivity() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflectivity");
    }

    public common_float_or_param_type newreflectivity() {
        return new common_float_or_param_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "reflectivity"));
    }

    public common_float_or_param_type getreflectivityAt(int index)
            throws Exception {
        return new common_float_or_param_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "reflectivity", index)));
    }

    public org.w3c.dom.Node getStartingreflectivityCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflectivity");
    }

    public org.w3c.dom.Node getAdvancedreflectivityCursor(
            org.w3c.dom.Node curNode) throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflectivity",
                curNode);
    }

    public common_float_or_param_type getreflectivityValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_float_or_param_type(dereference(curNode));
    }

    public common_float_or_param_type getreflectivity() throws Exception {
        return getreflectivityAt(0);
    }

    public void removereflectivityAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "reflectivity",
                index);
    }

    public void removereflectivity() {
        while (hasreflectivity())
            removereflectivityAt(0);
    }

    public void addreflectivity(common_float_or_param_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "reflectivity", value);
    }

    public void insertreflectivityAt(common_float_or_param_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "reflectivity", index, value);
    }

    public void replacereflectivityAt(common_float_or_param_type value,
            int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "reflectivity", index, value);
    }

    public static int gettransparentMinCount() {
        return 0;
    }

    public static int gettransparentMaxCount() {
        return 1;
    }

    public int gettransparentCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparent");
    }

    public boolean hastransparent() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparent");
    }

    public common_color_or_texture_type newtransparent() {
        return new common_color_or_texture_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "transparent"));
    }

    public common_color_or_texture_type gettransparentAt(int index)
            throws Exception {
        return new common_color_or_texture_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "transparent", index)));
    }

    public org.w3c.dom.Node getStartingtransparentCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparent");
    }

    public org.w3c.dom.Node getAdvancedtransparentCursor(
            org.w3c.dom.Node curNode) throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparent",
                curNode);
    }

    public common_color_or_texture_type gettransparentValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_color_or_texture_type(dereference(curNode));
    }

    public common_color_or_texture_type gettransparent() throws Exception {
        return gettransparentAt(0);
    }

    public void removetransparentAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparent",
                index);
    }

    public void removetransparent() {
        while (hastransparent())
            removetransparentAt(0);
    }

    public void addtransparent(common_color_or_texture_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "transparent", value);
    }

    public void inserttransparentAt(common_color_or_texture_type value,
            int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "transparent", index, value);
    }

    public void replacetransparentAt(common_color_or_texture_type value,
            int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "transparent", index, value);
    }

    public static int gettransparencyMinCount() {
        return 0;
    }

    public static int gettransparencyMaxCount() {
        return 1;
    }

    public int gettransparencyCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparency");
    }

    public boolean hastransparency() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparency");
    }

    public common_float_or_param_type newtransparency() {
        return new common_float_or_param_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "transparency"));
    }

    public common_float_or_param_type gettransparencyAt(int index)
            throws Exception {
        return new common_float_or_param_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "transparency", index)));
    }

    public org.w3c.dom.Node getStartingtransparencyCursor() throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparency");
    }

    public org.w3c.dom.Node getAdvancedtransparencyCursor(
            org.w3c.dom.Node curNode) throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparency",
                curNode);
    }

    public common_float_or_param_type gettransparencyValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_float_or_param_type(dereference(curNode));
    }

    public common_float_or_param_type gettransparency() throws Exception {
        return gettransparencyAt(0);
    }

    public void removetransparencyAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "transparency",
                index);
    }

    public void removetransparency() {
        while (hastransparency())
            removetransparencyAt(0);
    }

    public void addtransparency(common_float_or_param_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "transparency", value);
    }

    public void inserttransparencyAt(common_float_or_param_type value, int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "transparency", index, value);
    }

    public void replacetransparencyAt(common_float_or_param_type value,
            int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "transparency", index, value);
    }

    public static int getindex_of_refractionMinCount() {
        return 0;
    }

    public static int getindex_of_refractionMaxCount() {
        return 1;
    }

    public int getindex_of_refractionCount() {
        return getDomChildCount(Element,
                "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction");
    }

    public boolean hasindex_of_refraction() {
        return hasDomChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction");
    }

    public common_float_or_param_type newindex_of_refraction() {
        return new common_float_or_param_type(domNode.getOwnerDocument()
                .createElementNS(
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "index_of_refraction"));
    }

    public common_float_or_param_type getindex_of_refractionAt(int index)
            throws Exception {
        return new common_float_or_param_type(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", index)));
    }

    public org.w3c.dom.Node getStartingindex_of_refractionCursor()
            throws Exception {
        return getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction");
    }

    public org.w3c.dom.Node getAdvancedindex_of_refractionCursor(
            org.w3c.dom.Node curNode) throws Exception {
        return getDomNextChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", curNode);
    }

    public common_float_or_param_type getindex_of_refractionValueAtCursor(
            org.w3c.dom.Node curNode) throws Exception {
        if (curNode == null)
            throw new com.jmex.model.collada.xml.XmlException("Out of range");
        else
            return new common_float_or_param_type(dereference(curNode));
    }

    public common_float_or_param_type getindex_of_refraction() throws Exception {
        return getindex_of_refractionAt(0);
    }

    public void removeindex_of_refractionAt(int index) {
        removeDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", index);
    }

    public void removeindex_of_refraction() {
        while (hasindex_of_refraction())
            removeindex_of_refractionAt(0);
    }

    public void addindex_of_refraction(common_float_or_param_type value) {
        appendDomElement("http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", value);
    }

    public void insertindex_of_refractionAt(common_float_or_param_type value,
            int index) {
        insertDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", index, value);
    }

    public void replaceindex_of_refractionAt(common_float_or_param_type value,
            int index) {
        replaceDomElementAt("http://www.collada.org/2005/11/COLLADASchema",
                "index_of_refraction", index, value);
    }

    private org.w3c.dom.Node dereference(org.w3c.dom.Node node) {
        return node;
    }
}
