/**
 * fx_annotate_common.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;

import com.jmex.model.collada.types.SchemaNCName;
import com.jmex.model.collada.types.SchemaString;

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

    private static final long serialVersionUID = 1L;

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

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

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

    public fx_annotate_common(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(Attribute, null,
                "name"); tmpNode != null; tmpNode = getDomNextChild(Attribute,
                null, "name", tmpNode)) {
            internalAdjustPrefix(tmpNode, false);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "bool", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool2"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "bool2", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool3"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "bool3", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool4"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "bool4", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema", "int",
                tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int2"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "int2", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int3"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "int3", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int4"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "int4", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float2"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float2", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float3"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float3", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float4"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float4", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float2x2"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float2x2", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float3x3"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float3x3", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float4x4"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "float4x4", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
        for (org.w3c.dom.Node tmpNode = getDomFirstChild(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "string"); tmpNode != null; tmpNode = getDomNextChild(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "string", tmpNode)) {
            internalAdjustPrefix(tmpNode, true);
        }
    }

    public static int getnameMinCount() {
        return 1;
    }

    public static int getnameMaxCount() {
        return 1;
    }

    public int getnameCount() {
        return getDomChildCount(Attribute, null, "name");
    }

    public boolean hasname() {
        return hasDomChild(Attribute, null, "name");
    }

    public SchemaNCName newname() {
        return new SchemaNCName();
    }

    public SchemaNCName getnameAt(int index) throws Exception {
        return new SchemaNCName(getDomNodeValue(dereference(getDomChildAt(
                Attribute, null, "name", index))));
    }

    public org.w3c.dom.Node getStartingnameCursor() throws Exception {
        return getDomFirstChild(Attribute, null, "name");
    }

    public org.w3c.dom.Node getAdvancednameCursor(org.w3c.dom.Node curNode)
            throws Exception {
        return getDomNextChild(Attribute, null, "name", curNode);
    }

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

    public SchemaNCName getname() throws Exception {
        return getnameAt(0);
    }

    public void removenameAt(int index) {
        removeDomChildAt(Attribute, null, "name", index);
    }

    public void removename() {
        while (hasname())
            removenameAt(0);
    }

    public void addname(SchemaNCName value) {
        if (value.isNull() == false) {
            appendDomChild(Attribute, null, "name", value.toString());
        }
    }

    public void addname(String value) throws Exception {
        addname(new SchemaNCName(value));
    }

    public void insertnameAt(SchemaNCName value, int index) {
        insertDomChildAt(Attribute, null, "name", index, value.toString());
    }

    public void insertnameAt(String value, int index) throws Exception {
        insertnameAt(new SchemaNCName(value), index);
    }

    public void replacenameAt(SchemaNCName value, int index) {
        replaceDomChildAt(Attribute, null, "name", index, value.toString());
    }

    public void replacenameAt(String value, int index) throws Exception {
        replacenameAt(new SchemaNCName(value), index);
    }

    public static int getboolMinCount() {
        return 1;
    }

    public static int getboolMaxCount() {
        return 1;
    }

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

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

    public bool newbool() {
        return new bool();
    }

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

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

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

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

    public bool getbool() throws Exception {
        return getboolAt(0);
    }

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

    public void removebool() {
        while (hasbool())
            removeboolAt(0);
    }

    public void addbool(bool value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "bool",
                    value.toString());
        }
    }

    public void addbool(String value) throws Exception {
        addbool(new bool(value));
    }

    public void insertboolAt(bool value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool", index,
                value.toString());
    }

    public void insertboolAt(String value, int index) throws Exception {
        insertboolAt(new bool(value), index);
    }

    public void replaceboolAt(bool value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool", index,
                value.toString());
    }

    public void replaceboolAt(String value, int index) throws Exception {
        replaceboolAt(new bool(value), index);
    }

    public static int getbool2MinCount() {
        return 1;
    }

    public static int getbool2MaxCount() {
        return 1;
    }

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

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

    public bool2 newbool2() {
        return new bool2();
    }

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

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

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

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

    public bool2 getbool2() throws Exception {
        return getbool2At(0);
    }

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

    public void removebool2() {
        while (hasbool2())
            removebool2At(0);
    }

    public void addbool2(bool2 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "bool2",
                    value.toString());
        }
    }

    public void addbool2(String value) throws Exception {
        addbool2(new bool2(value));
    }

    public void insertbool2At(bool2 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool2", index,
                value.toString());
    }

    public void insertbool2At(String value, int index) throws Exception {
        insertbool2At(new bool2(value), index);
    }

    public void replacebool2At(bool2 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool2", index,
                value.toString());
    }

    public void replacebool2At(String value, int index) throws Exception {
        replacebool2At(new bool2(value), index);
    }

    public static int getbool3MinCount() {
        return 1;
    }

    public static int getbool3MaxCount() {
        return 1;
    }

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

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

    public bool3 newbool3() {
        return new bool3();
    }

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

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

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

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

    public bool3 getbool3() throws Exception {
        return getbool3At(0);
    }

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

    public void removebool3() {
        while (hasbool3())
            removebool3At(0);
    }

    public void addbool3(bool3 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "bool3",
                    value.toString());
        }
    }

    public void addbool3(String value) throws Exception {
        addbool3(new bool3(value));
    }

    public void insertbool3At(bool3 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool3", index,
                value.toString());
    }

    public void insertbool3At(String value, int index) throws Exception {
        insertbool3At(new bool3(value), index);
    }

    public void replacebool3At(bool3 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool3", index,
                value.toString());
    }

    public void replacebool3At(String value, int index) throws Exception {
        replacebool3At(new bool3(value), index);
    }

    public static int getbool4MinCount() {
        return 1;
    }

    public static int getbool4MaxCount() {
        return 1;
    }

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

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

    public bool4 newbool4() {
        return new bool4();
    }

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

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

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

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

    public bool4 getbool4() throws Exception {
        return getbool4At(0);
    }

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

    public void removebool4() {
        while (hasbool4())
            removebool4At(0);
    }

    public void addbool4(bool4 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "bool4",
                    value.toString());
        }
    }

    public void addbool4(String value) throws Exception {
        addbool4(new bool4(value));
    }

    public void insertbool4At(bool4 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool4", index,
                value.toString());
    }

    public void insertbool4At(String value, int index) throws Exception {
        insertbool4At(new bool4(value), index);
    }

    public void replacebool4At(bool4 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "bool4", index,
                value.toString());
    }

    public void replacebool4At(String value, int index) throws Exception {
        replacebool4At(new bool4(value), index);
    }

    public static int getint2MinCount() {
        return 1;
    }

    public static int getint2MaxCount() {
        return 1;
    }

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

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

    public int2 newint2() {
        return new int2();
    }

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

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

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

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

    public int2 getint2() throws Exception {
        return getint2At(0);
    }

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

    public void removeint2() {
        while (hasint2())
            removeint2At(0);
    }

    public void addint2(int2 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "int",
                    value.toString());
        }
    }

    public void addint2(String value) throws Exception {
        addint2(new int2(value));
    }

    public void insertint2At(int2 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int", index,
                value.toString());
    }

    public void insertint2At(String value, int index) throws Exception {
        insertint2At(new int2(value), index);
    }

    public void replaceint2At(int2 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int", index,
                value.toString());
    }

    public void replaceint2At(String value, int index) throws Exception {
        replaceint2At(new int2(value), index);
    }

    public static int getint22MinCount() {
        return 1;
    }

    public static int getint22MaxCount() {
        return 1;
    }

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

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

    public int22 newint22() {
        return new int22();
    }

    public int22 getint22At(int index) throws Exception {
        return new int22(
                getDomNodeValue(dereference(getDomChildAt(Element,
                        "http://www.collada.org/2005/11/COLLADASchema", "int2",
                        index))));
    }

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

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

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

    public int22 getint22() throws Exception {
        return getint22At(0);
    }

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

    public void removeint22() {
        while (hasint22())
            removeint22At(0);
    }

    public void addint22(int22 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "int2",
                    value.toString());
        }
    }

    public void addint22(String value) throws Exception {
        addint22(new int22(value));
    }

    public void insertint22At(int22 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int2", index,
                value.toString());
    }

    public void insertint22At(String value, int index) throws Exception {
        insertint22At(new int22(value), index);
    }

    public void replaceint22At(int22 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int2", index,
                value.toString());
    }

    public void replaceint22At(String value, int index) throws Exception {
        replaceint22At(new int22(value), index);
    }

    public static int getint3MinCount() {
        return 1;
    }

    public static int getint3MaxCount() {
        return 1;
    }

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

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

    public int3 newint3() {
        return new int3();
    }

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

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

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

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

    public int3 getint3() throws Exception {
        return getint3At(0);
    }

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

    public void removeint3() {
        while (hasint3())
            removeint3At(0);
    }

    public void addint3(int3 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "int3",
                    value.toString());
        }
    }

    public void addint3(String value) throws Exception {
        addint3(new int3(value));
    }

    public void insertint3At(int3 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int3", index,
                value.toString());
    }

    public void insertint3At(String value, int index) throws Exception {
        insertint3At(new int3(value), index);
    }

    public void replaceint3At(int3 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int3", index,
                value.toString());
    }

    public void replaceint3At(String value, int index) throws Exception {
        replaceint3At(new int3(value), index);
    }

    public static int getint4MinCount() {
        return 1;
    }

    public static int getint4MaxCount() {
        return 1;
    }

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

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

    public int4 newint4() {
        return new int4();
    }

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

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

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

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

    public int4 getint4() throws Exception {
        return getint4At(0);
    }

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

    public void removeint4() {
        while (hasint4())
            removeint4At(0);
    }

    public void addint4(int4 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "int4",
                    value.toString());
        }
    }

    public void addint4(String value) throws Exception {
        addint4(new int4(value));
    }

    public void insertint4At(int4 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int4", index,
                value.toString());
    }

    public void insertint4At(String value, int index) throws Exception {
        insertint4At(new int4(value), index);
    }

    public void replaceint4At(int4 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "int4", index,
                value.toString());
    }

    public void replaceint4At(String value, int index) throws Exception {
        replaceint4At(new int4(value), index);
    }

    public static int getfloat2MinCount() {
        return 1;
    }

    public static int getfloat2MaxCount() {
        return 1;
    }

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

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

    public float2 newfloat2() {
        return new float2();
    }

    public float2 getfloat2At(int index) throws Exception {
        return new float2(
                getDomNodeValue(dereference(getDomChildAt(Element,
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "float", index))));
    }

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

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

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

    public float2 getfloat2() throws Exception {
        return getfloat2At(0);
    }

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

    public void removefloat2() {
        while (hasfloat2())
            removefloat2At(0);
    }

    public void addfloat2(float2 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float",
                    value.toString());
        }
    }

    public void addfloat2(String value) throws Exception {
        addfloat2(new float2(value));
    }

    public void insertfloat2At(float2 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float", index,
                value.toString());
    }

    public void insertfloat2At(String value, int index) throws Exception {
        insertfloat2At(new float2(value), index);
    }

    public void replacefloat2At(float2 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float", index,
                value.toString());
    }

    public void replacefloat2At(String value, int index) throws Exception {
        replacefloat2At(new float2(value), index);
    }

    public static int getfloat22MinCount() {
        return 1;
    }

    public static int getfloat22MaxCount() {
        return 1;
    }

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

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

    public float22 newfloat22() {
        return new float22();
    }

    public float22 getfloat22At(int index) throws Exception {
        return new float22(
                getDomNodeValue(dereference(getDomChildAt(Element,
                        "http://www.collada.org/2005/11/COLLADASchema",
                        "float2", index))));
    }

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

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

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

    public float22 getfloat22() throws Exception {
        return getfloat22At(0);
    }

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

    public void removefloat22() {
        while (hasfloat22())
            removefloat22At(0);
    }

    public void addfloat22(float22 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float2",
                    value.toString());
        }
    }

    public void addfloat22(String value) throws Exception {
        addfloat22(new float22(value));
    }

    public void insertfloat22At(float22 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float2",
                index, value.toString());
    }

    public void insertfloat22At(String value, int index) throws Exception {
        insertfloat22At(new float22(value), index);
    }

    public void replacefloat22At(float22 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float2",
                index, value.toString());
    }

    public void replacefloat22At(String value, int index) throws Exception {
        replacefloat22At(new float22(value), index);
    }

    public static int getfloat3MinCount() {
        return 1;
    }

    public static int getfloat3MaxCount() {
        return 1;
    }

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

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

    public float3 newfloat3() {
        return new float3();
    }

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

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

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

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

    public float3 getfloat3() throws Exception {
        return getfloat3At(0);
    }

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

    public void removefloat3() {
        while (hasfloat3())
            removefloat3At(0);
    }

    public void addfloat3(float3 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float3",
                    value.toString());
        }
    }

    public void addfloat3(String value) throws Exception {
        addfloat3(new float3(value));
    }

    public void insertfloat3At(float3 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float3",
                index, value.toString());
    }

    public void insertfloat3At(String value, int index) throws Exception {
        insertfloat3At(new float3(value), index);
    }

    public void replacefloat3At(float3 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float3",
                index, value.toString());
    }

    public void replacefloat3At(String value, int index) throws Exception {
        replacefloat3At(new float3(value), index);
    }

    public static int getfloat4MinCount() {
        return 1;
    }

    public static int getfloat4MaxCount() {
        return 1;
    }

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

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

    public float4 newfloat4() {
        return new float4();
    }

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

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

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

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

    public float4 getfloat4() throws Exception {
        return getfloat4At(0);
    }

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

    public void removefloat4() {
        while (hasfloat4())
            removefloat4At(0);
    }

    public void addfloat4(float4 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float4",
                    value.toString());
        }
    }

    public void addfloat4(String value) throws Exception {
        addfloat4(new float4(value));
    }

    public void insertfloat4At(float4 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float4",
                index, value.toString());
    }

    public void insertfloat4At(String value, int index) throws Exception {
        insertfloat4At(new float4(value), index);
    }

    public void replacefloat4At(float4 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float4",
                index, value.toString());
    }

    public void replacefloat4At(String value, int index) throws Exception {
        replacefloat4At(new float4(value), index);
    }

    public static int getfloat2x2MinCount() {
        return 1;
    }

    public static int getfloat2x2MaxCount() {
        return 1;
    }

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

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

    public float2x2 newfloat2x2() {
        return new float2x2();
    }

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

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

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

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

    public float2x2 getfloat2x2() throws Exception {
        return getfloat2x2At(0);
    }

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

    public void removefloat2x2() {
        while (hasfloat2x2())
            removefloat2x2At(0);
    }

    public void addfloat2x2(float2x2 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float2x2",
                    value.toString());
        }
    }

    public void addfloat2x2(String value) throws Exception {
        addfloat2x2(new float2x2(value));
    }

    public void insertfloat2x2At(float2x2 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float2x2",
                index, value.toString());
    }

    public void insertfloat2x2At(String value, int index) throws Exception {
        insertfloat2x2At(new float2x2(value), index);
    }

    public void replacefloat2x2At(float2x2 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float2x2",
                index, value.toString());
    }

    public void replacefloat2x2At(String value, int index) throws Exception {
        replacefloat2x2At(new float2x2(value), index);
    }

    public static int getfloat3x3MinCount() {
        return 1;
    }

    public static int getfloat3x3MaxCount() {
        return 1;
    }

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

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

    public float3x3 newfloat3x3() {
        return new float3x3();
    }

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

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

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

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

    public float3x3 getfloat3x3() throws Exception {
        return getfloat3x3At(0);
    }

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

    public void removefloat3x3() {
        while (hasfloat3x3())
            removefloat3x3At(0);
    }

    public void addfloat3x3(float3x3 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float3x3",
                    value.toString());
        }
    }

    public void addfloat3x3(String value) throws Exception {
        addfloat3x3(new float3x3(value));
    }

    public void insertfloat3x3At(float3x3 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float3x3",
                index, value.toString());
    }

    public void insertfloat3x3At(String value, int index) throws Exception {
        insertfloat3x3At(new float3x3(value), index);
    }

    public void replacefloat3x3At(float3x3 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float3x3",
                index, value.toString());
    }

    public void replacefloat3x3At(String value, int index) throws Exception {
        replacefloat3x3At(new float3x3(value), index);
    }

    public static int getfloat4x4MinCount() {
        return 1;
    }

    public static int getfloat4x4MaxCount() {
        return 1;
    }

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

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

    public float4x4 newfloat4x4() {
        return new float4x4();
    }

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

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

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

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

    public float4x4 getfloat4x4() throws Exception {
        return getfloat4x4At(0);
    }

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

    public void removefloat4x4() {
        while (hasfloat4x4())
            removefloat4x4At(0);
    }

    public void addfloat4x4(float4x4 value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "float4x4",
                    value.toString());
        }
    }

    public void addfloat4x4(String value) throws Exception {
        addfloat4x4(new float4x4(value));
    }

    public void insertfloat4x4At(float4x4 value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float4x4",
                index, value.toString());
    }

    public void insertfloat4x4At(String value, int index) throws Exception {
        insertfloat4x4At(new float4x4(value), index);
    }

    public void replacefloat4x4At(float4x4 value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "float4x4",
                index, value.toString());
    }

    public void replacefloat4x4At(String value, int index) throws Exception {
        replacefloat4x4At(new float4x4(value), index);
    }

    public static int getstringMinCount() {
        return 1;
    }

    public static int getstringMaxCount() {
        return 1;
    }

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

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

    public SchemaString newstring() {
        return new SchemaString();
    }

    public SchemaString getstringAt(int index) throws Exception {
        return new SchemaString(getDomNodeValue(dereference(getDomChildAt(
                Element, "http://www.collada.org/2005/11/COLLADASchema",
                "string", index))));
    }

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

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

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

    public SchemaString getstring() throws Exception {
        return getstringAt(0);
    }

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

    public void removestring() {
        while (hasstring())
            removestringAt(0);
    }

    public void addstring(SchemaString value) {
        if (value.isNull() == false) {
            appendDomChild(Element,
                    "http://www.collada.org/2005/11/COLLADASchema", "string",
                    value.toString());
        }
    }

    public void addstring(String value) throws Exception {
        addstring(new SchemaString(value));
    }

    public void insertstringAt(SchemaString value, int index) {
        insertDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "string",
                index, value.toString());
    }

    public void insertstringAt(String value, int index) throws Exception {
        insertstringAt(new SchemaString(value), index);
    }

    public void replacestringAt(SchemaString value, int index) {
        replaceDomChildAt(Element,
                "http://www.collada.org/2005/11/COLLADASchema", "string",
                index, value.toString());
    }

    public void replacestringAt(String value, int index) throws Exception {
        replacestringAt(new SchemaString(value), index);
    }

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