bug 250829 - initial load of VEX emf model and generated code.
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/.classpath b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/.classpath
index 1564e29..127fa65 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/.classpath
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/.classpath
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
+ <classpathentry kind="src" path="src-emf"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="lib" path="lib/flute.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/META-INF/MANIFEST.MF b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/META-INF/MANIFEST.MF
index 8e570c2..18c51a8 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/META-INF/MANIFEST.MF
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/META-INF/MANIFEST.MF
@@ -11,13 +11,18 @@
org.eclipse.wst.sse.core;bundle-version="[1.1.0,2.0.0)",
org.eclipse.wst.xml.core;bundle-version="[1.1.0,2.0.0)",
org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.common.uriresolver;bundle-version="[1.1.0,2.0.0)"
+ org.eclipse.wst.common.uriresolver;bundle-version="[1.1.0,2.0.0)",
+ org.eclipse.emf;bundle-version="2.4.0",
+ org.eclipse.emf.ecore;bundle-version="2.4.1"
Export-Package: org.eclipse.wst.xml.vex.core.internal;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.core;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.css;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.dom;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.layout;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.provisional.dom;x-internal:=true,
+ org.eclipse.wst.xml.vex.core.internal.provisional.dom.I,
+ org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl,
+ org.eclipse.wst.xml.vex.core.internal.provisional.dom.util,
org.eclipse.wst.xml.vex.core.internal.undo;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.util;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.validator;x-internal:=true,
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/build.properties b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/build.properties
index 75cde60..48bd548 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/build.properties
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/build.properties
@@ -3,10 +3,14 @@
.,\
lib/,\
lib/flute.jar,\
- bin/
+ bin/,\
+ plugin.xml
src.includes = lib/,\
+ src-emf/,\
src/
-source.. = src/
-jars.compile.order = .
+source.. = src/,\
+ src-emf/
+der = .
bin.excludes = lib/.cvsignore
src.excludes = lib/.cvsignore
+output.. = bin/
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/emf/vexdocument.genmodel b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/emf/vexdocument.genmodel
index 0d47b47..e6e0cd3 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/emf/vexdocument.genmodel
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/emf/vexdocument.genmodel
@@ -3,10 +3,11 @@
xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.wst.xml.vex.core/src-emf"
modelPluginID="org.eclipse.wst.xml.vex.core" modelName="Vexdocument" modelPluginClass=""
- importerID="org.eclipse.emf.importer.java" complianceLevel="5.0" copyrightFields="false">
+ testsDirectory="/org.eclipse.wst.xml.vex.core.tests/src_emf" importerID="org.eclipse.emf.importer.java"
+ complianceLevel="5.0" copyrightFields="false">
<foreignModel>@model</foreignModel>
<genPackages prefix="DomEMF" basePackage="org.eclipse.wst.xml.vex.core.internal.provisional"
- disposableProviderFactory="true" ecorePackage="dom1.ecore#/">
+ disposableProviderFactory="true" interfacePackageSuffix="I" ecorePackage="dom1.ecore#/">
<genDataTypes ecoreDataType="dom1.ecore#//DocumentValidationException"/>
<genDataTypes ecoreDataType="dom1.ecore#//AttributeDefinition"/>
<genDataTypes ecoreDataType="dom1.ecore#//Set">
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.properties b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.properties
index 8a7bbd6..9565655 100644
--- a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.properties
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.properties
@@ -1,2 +1,3 @@
plugin.name=Vex Toolkit
-providerName=Eclipse.org
\ No newline at end of file
+providerName=Eclipse.org
+pluginName = Vexdocument Model
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.xml b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.xml
new file mode 100644
index 0000000..5535690
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/plugin.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+</plugin>
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/DomEMFFactory.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/DomEMFFactory.java
new file mode 100644
index 0000000..ea2a8c5
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/DomEMFFactory.java
@@ -0,0 +1,142 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom;
+
+import org.eclipse.emf.ecore.EFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage
+ * @generated
+ */
+public interface DomEMFFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DomEMFFactory eINSTANCE = org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Content</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Content</em>'.
+ * @generated
+ */
+ Content createContent();
+
+ /**
+ * Returns a new object of class '<em>Position</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Position</em>'.
+ * @generated
+ */
+ Position createPosition();
+
+ /**
+ * Returns a new object of class '<em>VEX Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Attribute</em>'.
+ * @generated
+ */
+ VEXAttribute createVEXAttribute();
+
+ /**
+ * Returns a new object of class '<em>VEX Comment</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Comment</em>'.
+ * @generated
+ */
+ VEXComment createVEXComment();
+
+ /**
+ * Returns a new object of class '<em>VEX Document</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Document</em>'.
+ * @generated
+ */
+ VEXDocument createVEXDocument();
+
+ /**
+ * Returns a new object of class '<em>VEX Document Fragment</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Document Fragment</em>'.
+ * @generated
+ */
+ VEXDocumentFragment createVEXDocumentFragment();
+
+ /**
+ * Returns a new object of class '<em>VEX Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Element</em>'.
+ * @generated
+ */
+ VEXElement createVEXElement();
+
+ /**
+ * Returns a new object of class '<em>VEX Node</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Node</em>'.
+ * @generated
+ */
+ VEXNode createVEXNode();
+
+ /**
+ * Returns a new object of class '<em>VEX Processing Instruction</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>VEX Processing Instruction</em>'.
+ * @generated
+ */
+ VEXProcessingInstruction createVEXProcessingInstruction();
+
+ /**
+ * Returns a new object of class '<em>Validator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Validator</em>'.
+ * @generated
+ */
+ Validator createValidator();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DomEMFPackage getDomEMFPackage();
+
+} //DomEMFFactory
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/DomEMFPackage.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/DomEMFPackage.java
new file mode 100644
index 0000000..810c14a
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/DomEMFPackage.java
@@ -0,0 +1,1839 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface DomEMFPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "dom";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http:///org/eclipse/wst/xml/vex/core/internal/provisional/dom.ecore";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "org.eclipse.wst.xml.vex.core.internal.provisional.dom";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DomEMFPackage eINSTANCE = org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ContentImpl <em>Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ContentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getContent()
+ * @generated
+ */
+ int CONTENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT__LENGTH = 0;
+
+ /**
+ * The number of structural features of the '<em>Content</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTENT_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.PositionImpl <em>Position</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.PositionImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getPosition()
+ * @generated
+ */
+ int POSITION = 1;
+
+ /**
+ * The feature id for the '<em><b>Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int POSITION__OFFSET = 0;
+
+ /**
+ * The number of structural features of the '<em>Position</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int POSITION_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl <em>VEX Node</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXNode()
+ * @generated
+ */
+ int VEX_NODE = 7;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE__CONTENT = 0;
+
+ /**
+ * The feature id for the '<em><b>End Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE__END_OFFSET = 1;
+
+ /**
+ * The feature id for the '<em><b>End Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE__END_POSITION = 2;
+
+ /**
+ * The feature id for the '<em><b>Start Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE__START_OFFSET = 3;
+
+ /**
+ * The feature id for the '<em><b>Start Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE__START_POSITION = 4;
+
+ /**
+ * The feature id for the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE__TEXT = 5;
+
+ /**
+ * The number of structural features of the '<em>VEX Node</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_NODE_FEATURE_COUNT = 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl <em>VEX Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXAttribute()
+ * @generated
+ */
+ int VEX_ATTRIBUTE = 2;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__CONTENT = VEX_NODE__CONTENT;
+
+ /**
+ * The feature id for the '<em><b>End Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__END_OFFSET = VEX_NODE__END_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>End Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__END_POSITION = VEX_NODE__END_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Start Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__START_OFFSET = VEX_NODE__START_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>Start Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__START_POSITION = VEX_NODE__START_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__TEXT = VEX_NODE__TEXT;
+
+ /**
+ * The feature id for the '<em><b>Document</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__DOCUMENT = VEX_NODE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__VALUE = VEX_NODE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__PARENT = VEX_NODE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Local Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__LOCAL_NAME = VEX_NODE_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Namespace Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__NAMESPACE_PREFIX = VEX_NODE_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Namespace URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE__NAMESPACE_URI = VEX_NODE_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>VEX Attribute</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ATTRIBUTE_FEATURE_COUNT = VEX_NODE_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXCommentImpl <em>VEX Comment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXCommentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXComment()
+ * @generated
+ */
+ int VEX_COMMENT = 3;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__CONTENT = VEX_NODE__CONTENT;
+
+ /**
+ * The feature id for the '<em><b>End Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__END_OFFSET = VEX_NODE__END_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>End Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__END_POSITION = VEX_NODE__END_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Start Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__START_OFFSET = VEX_NODE__START_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>Start Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__START_POSITION = VEX_NODE__START_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__TEXT = VEX_NODE__TEXT;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT__VALUE = VEX_NODE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>VEX Comment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_COMMENT_FEATURE_COUNT = VEX_NODE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl <em>VEX Document</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXDocument()
+ * @generated
+ */
+ int VEX_DOCUMENT = 4;
+
+ /**
+ * The feature id for the '<em><b>Encoding</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT__ENCODING = 0;
+
+ /**
+ * The feature id for the '<em><b>Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT__LENGTH = 1;
+
+ /**
+ * The feature id for the '<em><b>Root Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT__ROOT_ELEMENT = 2;
+
+ /**
+ * The feature id for the '<em><b>Validator</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT__VALIDATOR = 3;
+
+ /**
+ * The feature id for the '<em><b>Public ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT__PUBLIC_ID = 4;
+
+ /**
+ * The number of structural features of the '<em>VEX Document</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FEATURE_COUNT = 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl <em>VEX Document Fragment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXDocumentFragment()
+ * @generated
+ */
+ int VEX_DOCUMENT_FRAGMENT = 5;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FRAGMENT__CONTENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FRAGMENT__LENGTH = 1;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FRAGMENT__ELEMENTS = 2;
+
+ /**
+ * The feature id for the '<em><b>Node Names</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FRAGMENT__NODE_NAMES = 3;
+
+ /**
+ * The feature id for the '<em><b>Nodes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FRAGMENT__NODES = 4;
+
+ /**
+ * The number of structural features of the '<em>VEX Document Fragment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_DOCUMENT_FRAGMENT_FEATURE_COUNT = 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl <em>VEX Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXElement()
+ * @generated
+ */
+ int VEX_ELEMENT = 6;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__CONTENT = VEX_NODE__CONTENT;
+
+ /**
+ * The feature id for the '<em><b>End Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__END_OFFSET = VEX_NODE__END_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>End Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__END_POSITION = VEX_NODE__END_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Start Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__START_OFFSET = VEX_NODE__START_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>Start Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__START_POSITION = VEX_NODE__START_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__TEXT = VEX_NODE__TEXT;
+
+ /**
+ * The feature id for the '<em><b>Attribute Names</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__ATTRIBUTE_NAMES = VEX_NODE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Child Elements</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__CHILD_ELEMENTS = VEX_NODE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Child Nodes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__CHILD_NODES = VEX_NODE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Document</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__DOCUMENT = VEX_NODE_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__NAME = VEX_NODE_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Empty</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__EMPTY = VEX_NODE_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__PARENT = VEX_NODE_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Namespace Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__NAMESPACE_PREFIX = VEX_NODE_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Namespace URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT__NAMESPACE_URI = VEX_NODE_FEATURE_COUNT + 8;
+
+ /**
+ * The number of structural features of the '<em>VEX Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_ELEMENT_FEATURE_COUNT = VEX_NODE_FEATURE_COUNT + 9;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXProcessingInstructionImpl <em>VEX Processing Instruction</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXProcessingInstructionImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXProcessingInstruction()
+ * @generated
+ */
+ int VEX_PROCESSING_INSTRUCTION = 8;
+
+ /**
+ * The feature id for the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__CONTENT = VEX_NODE__CONTENT;
+
+ /**
+ * The feature id for the '<em><b>End Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__END_OFFSET = VEX_NODE__END_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>End Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__END_POSITION = VEX_NODE__END_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Start Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__START_OFFSET = VEX_NODE__START_OFFSET;
+
+ /**
+ * The feature id for the '<em><b>Start Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__START_POSITION = VEX_NODE__START_POSITION;
+
+ /**
+ * The feature id for the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__TEXT = VEX_NODE__TEXT;
+
+ /**
+ * The feature id for the '<em><b>Attributes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION__ATTRIBUTES = VEX_NODE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>VEX Processing Instruction</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VEX_PROCESSING_INSTRUCTION_FEATURE_COUNT = VEX_NODE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link java.io.Serializable <em>Serializable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.io.Serializable
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getSerializable()
+ * @generated
+ */
+ int SERIALIZABLE = 10;
+
+ /**
+ * The number of structural features of the '<em>Serializable</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SERIALIZABLE_FEATURE_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ValidatorImpl <em>Validator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ValidatorImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getValidator()
+ * @generated
+ */
+ int VALIDATOR = 9;
+
+ /**
+ * The feature id for the '<em><b>Valid Root Elements</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALIDATOR__VALID_ROOT_ELEMENTS = SERIALIZABLE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Validator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALIDATOR_FEATURE_COUNT = SERIALIZABLE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '<em>Document Validation Exception</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getDocumentValidationException()
+ * @generated
+ */
+ int DOCUMENT_VALIDATION_EXCEPTION = 11;
+
+ /**
+ * The meta object id for the '<em>Attribute Definition</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getAttributeDefinition()
+ * @generated
+ */
+ int ATTRIBUTE_DEFINITION = 12;
+
+ /**
+ * The meta object id for the '<em>Set</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.util.Set
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getSet()
+ * @generated
+ */
+ int SET = 13;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content <em>Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Content</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content
+ * @generated
+ */
+ EClass getContent();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getLength <em>Length</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Length</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getLength()
+ * @see #getContent()
+ * @generated
+ */
+ EAttribute getContent_Length();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position <em>Position</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Position</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position
+ * @generated
+ */
+ EClass getPosition();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position#getOffset <em>Offset</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Offset</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position#getOffset()
+ * @see #getPosition()
+ * @generated
+ */
+ EAttribute getPosition_Offset();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute <em>VEX Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Attribute</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute
+ * @generated
+ */
+ EClass getVEXAttribute();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getDocument <em>Document</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Document</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getDocument()
+ * @see #getVEXAttribute()
+ * @generated
+ */
+ EReference getVEXAttribute_Document();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getValue()
+ * @see #getVEXAttribute()
+ * @generated
+ */
+ EAttribute getVEXAttribute_Value();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Parent</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getParent()
+ * @see #getVEXAttribute()
+ * @generated
+ */
+ EReference getVEXAttribute_Parent();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getLocalName <em>Local Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Local Name</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getLocalName()
+ * @see #getVEXAttribute()
+ * @generated
+ */
+ EAttribute getVEXAttribute_LocalName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespacePrefix <em>Namespace Prefix</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Namespace Prefix</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespacePrefix()
+ * @see #getVEXAttribute()
+ * @generated
+ */
+ EAttribute getVEXAttribute_NamespacePrefix();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespaceURI <em>Namespace URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Namespace URI</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespaceURI()
+ * @see #getVEXAttribute()
+ * @generated
+ */
+ EAttribute getVEXAttribute_NamespaceURI();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment <em>VEX Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Comment</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment
+ * @generated
+ */
+ EClass getVEXComment();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment#getValue()
+ * @see #getVEXComment()
+ * @generated
+ */
+ EAttribute getVEXComment_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument <em>VEX Document</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Document</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument
+ * @generated
+ */
+ EClass getVEXDocument();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getEncoding <em>Encoding</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Encoding</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getEncoding()
+ * @see #getVEXDocument()
+ * @generated
+ */
+ EAttribute getVEXDocument_Encoding();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getLength <em>Length</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Length</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getLength()
+ * @see #getVEXDocument()
+ * @generated
+ */
+ EAttribute getVEXDocument_Length();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRootElement <em>Root Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Root Element</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRootElement()
+ * @see #getVEXDocument()
+ * @generated
+ */
+ EReference getVEXDocument_RootElement();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getValidator <em>Validator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Validator</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getValidator()
+ * @see #getVEXDocument()
+ * @generated
+ */
+ EReference getVEXDocument_Validator();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getPublicID <em>Public ID</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Public ID</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getPublicID()
+ * @see #getVEXDocument()
+ * @generated
+ */
+ EAttribute getVEXDocument_PublicID();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment <em>VEX Document Fragment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Document Fragment</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment
+ * @generated
+ */
+ EClass getVEXDocumentFragment();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getContent <em>Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Content</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getContent()
+ * @see #getVEXDocumentFragment()
+ * @generated
+ */
+ EReference getVEXDocumentFragment_Content();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getLength <em>Length</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Length</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getLength()
+ * @see #getVEXDocumentFragment()
+ * @generated
+ */
+ EAttribute getVEXDocumentFragment_Length();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getElements <em>Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Elements</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getElements()
+ * @see #getVEXDocumentFragment()
+ * @generated
+ */
+ EReference getVEXDocumentFragment_Elements();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getNodeNames <em>Node Names</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Node Names</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getNodeNames()
+ * @see #getVEXDocumentFragment()
+ * @generated
+ */
+ EAttribute getVEXDocumentFragment_NodeNames();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getNodes <em>Nodes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Nodes</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getNodes()
+ * @see #getVEXDocumentFragment()
+ * @generated
+ */
+ EReference getVEXDocumentFragment_Nodes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement <em>VEX Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Element</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement
+ * @generated
+ */
+ EClass getVEXElement();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getAttributeNames <em>Attribute Names</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Attribute Names</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getAttributeNames()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EAttribute getVEXElement_AttributeNames();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getChildElements <em>Child Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Child Elements</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getChildElements()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EReference getVEXElement_ChildElements();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getChildNodes <em>Child Nodes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Child Nodes</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getChildNodes()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EReference getVEXElement_ChildNodes();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getDocument <em>Document</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Document</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getDocument()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EReference getVEXElement_Document();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getName()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EAttribute getVEXElement_Name();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#isEmpty <em>Empty</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Empty</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#isEmpty()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EAttribute getVEXElement_Empty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Parent</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getParent()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EReference getVEXElement_Parent();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespacePrefix <em>Namespace Prefix</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Namespace Prefix</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespacePrefix()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EAttribute getVEXElement_NamespacePrefix();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespaceURI <em>Namespace URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Namespace URI</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespaceURI()
+ * @see #getVEXElement()
+ * @generated
+ */
+ EAttribute getVEXElement_NamespaceURI();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode <em>VEX Node</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Node</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode
+ * @generated
+ */
+ EClass getVEXNode();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getContent <em>Content</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Content</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getContent()
+ * @see #getVEXNode()
+ * @generated
+ */
+ EReference getVEXNode_Content();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndOffset <em>End Offset</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>End Offset</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndOffset()
+ * @see #getVEXNode()
+ * @generated
+ */
+ EAttribute getVEXNode_EndOffset();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndPosition <em>End Position</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>End Position</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndPosition()
+ * @see #getVEXNode()
+ * @generated
+ */
+ EReference getVEXNode_EndPosition();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartOffset <em>Start Offset</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Start Offset</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartOffset()
+ * @see #getVEXNode()
+ * @generated
+ */
+ EAttribute getVEXNode_StartOffset();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartPosition <em>Start Position</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Start Position</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartPosition()
+ * @see #getVEXNode()
+ * @generated
+ */
+ EReference getVEXNode_StartPosition();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getText <em>Text</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Text</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getText()
+ * @see #getVEXNode()
+ * @generated
+ */
+ EAttribute getVEXNode_Text();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction <em>VEX Processing Instruction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>VEX Processing Instruction</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction
+ * @generated
+ */
+ EClass getVEXProcessingInstruction();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#getAttributes <em>Attributes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Attributes</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#getAttributes()
+ * @see #getVEXProcessingInstruction()
+ * @generated
+ */
+ EReference getVEXProcessingInstruction_Attributes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator <em>Validator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Validator</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator
+ * @generated
+ */
+ EClass getValidator();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidRootElements <em>Valid Root Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Valid Root Elements</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidRootElements()
+ * @see #getValidator()
+ * @generated
+ */
+ EAttribute getValidator_ValidRootElements();
+
+ /**
+ * Returns the meta object for class '{@link java.io.Serializable <em>Serializable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Serializable</em>'.
+ * @see java.io.Serializable
+ * @model instanceClass="java.io.Serializable"
+ * @generated
+ */
+ EClass getSerializable();
+
+ /**
+ * Returns the meta object for data type '{@link org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException <em>Document Validation Exception</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Document Validation Exception</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException
+ * @model instanceClass="org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException"
+ * @generated
+ */
+ EDataType getDocumentValidationException();
+
+ /**
+ * Returns the meta object for data type '{@link org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition <em>Attribute Definition</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Attribute Definition</em>'.
+ * @see org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition
+ * @model instanceClass="org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition"
+ * @generated
+ */
+ EDataType getAttributeDefinition();
+
+ /**
+ * Returns the meta object for data type '{@link java.util.Set <em>Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Set</em>'.
+ * @see java.util.Set
+ * @model instanceClass="java.util.Set" typeParameters="T"
+ * @generated
+ */
+ EDataType getSet();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ DomEMFFactory getDomEMFFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ContentImpl <em>Content</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ContentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getContent()
+ * @generated
+ */
+ EClass CONTENT = eINSTANCE.getContent();
+
+ /**
+ * The meta object literal for the '<em><b>Length</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONTENT__LENGTH = eINSTANCE.getContent_Length();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.PositionImpl <em>Position</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.PositionImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getPosition()
+ * @generated
+ */
+ EClass POSITION = eINSTANCE.getPosition();
+
+ /**
+ * The meta object literal for the '<em><b>Offset</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute POSITION__OFFSET = eINSTANCE.getPosition_Offset();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl <em>VEX Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXAttribute()
+ * @generated
+ */
+ EClass VEX_ATTRIBUTE = eINSTANCE.getVEXAttribute();
+
+ /**
+ * The meta object literal for the '<em><b>Document</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_ATTRIBUTE__DOCUMENT = eINSTANCE.getVEXAttribute_Document();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ATTRIBUTE__VALUE = eINSTANCE.getVEXAttribute_Value();
+
+ /**
+ * The meta object literal for the '<em><b>Parent</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_ATTRIBUTE__PARENT = eINSTANCE.getVEXAttribute_Parent();
+
+ /**
+ * The meta object literal for the '<em><b>Local Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ATTRIBUTE__LOCAL_NAME = eINSTANCE.getVEXAttribute_LocalName();
+
+ /**
+ * The meta object literal for the '<em><b>Namespace Prefix</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ATTRIBUTE__NAMESPACE_PREFIX = eINSTANCE.getVEXAttribute_NamespacePrefix();
+
+ /**
+ * The meta object literal for the '<em><b>Namespace URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ATTRIBUTE__NAMESPACE_URI = eINSTANCE.getVEXAttribute_NamespaceURI();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXCommentImpl <em>VEX Comment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXCommentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXComment()
+ * @generated
+ */
+ EClass VEX_COMMENT = eINSTANCE.getVEXComment();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_COMMENT__VALUE = eINSTANCE.getVEXComment_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl <em>VEX Document</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXDocument()
+ * @generated
+ */
+ EClass VEX_DOCUMENT = eINSTANCE.getVEXDocument();
+
+ /**
+ * The meta object literal for the '<em><b>Encoding</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_DOCUMENT__ENCODING = eINSTANCE.getVEXDocument_Encoding();
+
+ /**
+ * The meta object literal for the '<em><b>Length</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_DOCUMENT__LENGTH = eINSTANCE.getVEXDocument_Length();
+
+ /**
+ * The meta object literal for the '<em><b>Root Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_DOCUMENT__ROOT_ELEMENT = eINSTANCE.getVEXDocument_RootElement();
+
+ /**
+ * The meta object literal for the '<em><b>Validator</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_DOCUMENT__VALIDATOR = eINSTANCE.getVEXDocument_Validator();
+
+ /**
+ * The meta object literal for the '<em><b>Public ID</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_DOCUMENT__PUBLIC_ID = eINSTANCE.getVEXDocument_PublicID();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl <em>VEX Document Fragment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXDocumentFragment()
+ * @generated
+ */
+ EClass VEX_DOCUMENT_FRAGMENT = eINSTANCE.getVEXDocumentFragment();
+
+ /**
+ * The meta object literal for the '<em><b>Content</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_DOCUMENT_FRAGMENT__CONTENT = eINSTANCE.getVEXDocumentFragment_Content();
+
+ /**
+ * The meta object literal for the '<em><b>Length</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_DOCUMENT_FRAGMENT__LENGTH = eINSTANCE.getVEXDocumentFragment_Length();
+
+ /**
+ * The meta object literal for the '<em><b>Elements</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_DOCUMENT_FRAGMENT__ELEMENTS = eINSTANCE.getVEXDocumentFragment_Elements();
+
+ /**
+ * The meta object literal for the '<em><b>Node Names</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_DOCUMENT_FRAGMENT__NODE_NAMES = eINSTANCE.getVEXDocumentFragment_NodeNames();
+
+ /**
+ * The meta object literal for the '<em><b>Nodes</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_DOCUMENT_FRAGMENT__NODES = eINSTANCE.getVEXDocumentFragment_Nodes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl <em>VEX Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXElement()
+ * @generated
+ */
+ EClass VEX_ELEMENT = eINSTANCE.getVEXElement();
+
+ /**
+ * The meta object literal for the '<em><b>Attribute Names</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ELEMENT__ATTRIBUTE_NAMES = eINSTANCE.getVEXElement_AttributeNames();
+
+ /**
+ * The meta object literal for the '<em><b>Child Elements</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_ELEMENT__CHILD_ELEMENTS = eINSTANCE.getVEXElement_ChildElements();
+
+ /**
+ * The meta object literal for the '<em><b>Child Nodes</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_ELEMENT__CHILD_NODES = eINSTANCE.getVEXElement_ChildNodes();
+
+ /**
+ * The meta object literal for the '<em><b>Document</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_ELEMENT__DOCUMENT = eINSTANCE.getVEXElement_Document();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ELEMENT__NAME = eINSTANCE.getVEXElement_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Empty</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ELEMENT__EMPTY = eINSTANCE.getVEXElement_Empty();
+
+ /**
+ * The meta object literal for the '<em><b>Parent</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_ELEMENT__PARENT = eINSTANCE.getVEXElement_Parent();
+
+ /**
+ * The meta object literal for the '<em><b>Namespace Prefix</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ELEMENT__NAMESPACE_PREFIX = eINSTANCE.getVEXElement_NamespacePrefix();
+
+ /**
+ * The meta object literal for the '<em><b>Namespace URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_ELEMENT__NAMESPACE_URI = eINSTANCE.getVEXElement_NamespaceURI();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl <em>VEX Node</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXNode()
+ * @generated
+ */
+ EClass VEX_NODE = eINSTANCE.getVEXNode();
+
+ /**
+ * The meta object literal for the '<em><b>Content</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_NODE__CONTENT = eINSTANCE.getVEXNode_Content();
+
+ /**
+ * The meta object literal for the '<em><b>End Offset</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_NODE__END_OFFSET = eINSTANCE.getVEXNode_EndOffset();
+
+ /**
+ * The meta object literal for the '<em><b>End Position</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_NODE__END_POSITION = eINSTANCE.getVEXNode_EndPosition();
+
+ /**
+ * The meta object literal for the '<em><b>Start Offset</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_NODE__START_OFFSET = eINSTANCE.getVEXNode_StartOffset();
+
+ /**
+ * The meta object literal for the '<em><b>Start Position</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_NODE__START_POSITION = eINSTANCE.getVEXNode_StartPosition();
+
+ /**
+ * The meta object literal for the '<em><b>Text</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VEX_NODE__TEXT = eINSTANCE.getVEXNode_Text();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXProcessingInstructionImpl <em>VEX Processing Instruction</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXProcessingInstructionImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getVEXProcessingInstruction()
+ * @generated
+ */
+ EClass VEX_PROCESSING_INSTRUCTION = eINSTANCE.getVEXProcessingInstruction();
+
+ /**
+ * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VEX_PROCESSING_INSTRUCTION__ATTRIBUTES = eINSTANCE.getVEXProcessingInstruction_Attributes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ValidatorImpl <em>Validator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ValidatorImpl
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getValidator()
+ * @generated
+ */
+ EClass VALIDATOR = eINSTANCE.getValidator();
+
+ /**
+ * The meta object literal for the '<em><b>Valid Root Elements</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VALIDATOR__VALID_ROOT_ELEMENTS = eINSTANCE.getValidator_ValidRootElements();
+
+ /**
+ * The meta object literal for the '{@link java.io.Serializable <em>Serializable</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.io.Serializable
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getSerializable()
+ * @generated
+ */
+ EClass SERIALIZABLE = eINSTANCE.getSerializable();
+
+ /**
+ * The meta object literal for the '<em>Document Validation Exception</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getDocumentValidationException()
+ * @generated
+ */
+ EDataType DOCUMENT_VALIDATION_EXCEPTION = eINSTANCE.getDocumentValidationException();
+
+ /**
+ * The meta object literal for the '<em>Attribute Definition</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getAttributeDefinition()
+ * @generated
+ */
+ EDataType ATTRIBUTE_DEFINITION = eINSTANCE.getAttributeDefinition();
+
+ /**
+ * The meta object literal for the '<em>Set</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.util.Set
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.DomEMFPackageImpl#getSet()
+ * @generated
+ */
+ EDataType SET = eINSTANCE.getSet();
+
+ }
+
+} //DomEMFPackage
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Content.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Content.java
new file mode 100644
index 0000000..a3c605b
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Content.java
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getLength <em>Length</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getContent()
+ * @model
+ * @generated
+ */
+public interface Content extends EObject {
+ /**
+ * Returns the value of the '<em><b>Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Length</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Length</em>' attribute.
+ * @see #setLength(int)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getContent_Length()
+ * @model
+ * @generated
+ */
+ int getLength();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getLength <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Length</em>' attribute.
+ * @see #getLength()
+ * @generated
+ */
+ void setLength(int value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ Position createPosition(int offset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void insertString(int offset, String s);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void remove(int offset, int length);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ String getString(int offset, int length);
+
+} // Content
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Position.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Position.java
new file mode 100644
index 0000000..7c3c5dd
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Position.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Position</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position#getOffset <em>Offset</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getPosition()
+ * @model
+ * @generated
+ */
+public interface Position extends EObject {
+ /**
+ * Returns the value of the '<em><b>Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Offset</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Offset</em>' attribute.
+ * @see #setOffset(int)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getPosition_Offset()
+ * @model
+ * @generated
+ */
+ int getOffset();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position#getOffset <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Offset</em>' attribute.
+ * @see #getOffset()
+ * @generated
+ */
+ void setOffset(int value);
+
+} // Position
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXAttribute.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXAttribute.java
new file mode 100644
index 0000000..756d200
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXAttribute.java
@@ -0,0 +1,200 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getDocument <em>Document</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getLocalName <em>Local Name</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespacePrefix <em>Namespace Prefix</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespaceURI <em>Namespace URI</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute()
+ * @model
+ * @generated
+ */
+public interface VEXAttribute extends VEXNode {
+ /**
+ * Returns the value of the '<em><b>Document</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Document</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Document</em>' reference.
+ * @see #setDocument(VEXDocument)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute_Document()
+ * @model
+ * @generated
+ */
+ VEXDocument getDocument();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getDocument <em>Document</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Document</em>' reference.
+ * @see #getDocument()
+ * @generated
+ */
+ void setDocument(VEXDocument value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute_Value()
+ * @model
+ * @generated
+ */
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(String value);
+
+ /**
+ * Returns the value of the '<em><b>Parent</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parent</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parent</em>' reference.
+ * @see #setParent(VEXElement)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute_Parent()
+ * @model
+ * @generated
+ */
+ VEXElement getParent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getParent <em>Parent</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parent</em>' reference.
+ * @see #getParent()
+ * @generated
+ */
+ void setParent(VEXElement value);
+
+ /**
+ * Returns the value of the '<em><b>Local Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Local Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Local Name</em>' attribute.
+ * @see #setLocalName(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute_LocalName()
+ * @model
+ * @generated
+ */
+ String getLocalName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getLocalName <em>Local Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Local Name</em>' attribute.
+ * @see #getLocalName()
+ * @generated
+ */
+ void setLocalName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Namespace Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespace Prefix</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespace Prefix</em>' attribute.
+ * @see #setNamespacePrefix(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute_NamespacePrefix()
+ * @model
+ * @generated
+ */
+ String getNamespacePrefix();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespacePrefix <em>Namespace Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Namespace Prefix</em>' attribute.
+ * @see #getNamespacePrefix()
+ * @generated
+ */
+ void setNamespacePrefix(String value);
+
+ /**
+ * Returns the value of the '<em><b>Namespace URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespace URI</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespace URI</em>' attribute.
+ * @see #setNamespaceURI(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXAttribute_NamespaceURI()
+ * @model
+ * @generated
+ */
+ String getNamespaceURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#getNamespaceURI <em>Namespace URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Namespace URI</em>' attribute.
+ * @see #getNamespaceURI()
+ * @generated
+ */
+ void setNamespaceURI(String value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void setNamespace(String prefix, String namespaceURI);
+
+} // VEXAttribute
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXComment.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXComment.java
new file mode 100644
index 0000000..d0d45e1
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXComment.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Comment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXComment()
+ * @model
+ * @generated
+ */
+public interface VEXComment extends VEXNode {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXComment_Value()
+ * @model
+ * @generated
+ */
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(String value);
+
+} // VEXComment
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXDocument.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXDocument.java
new file mode 100644
index 0000000..6985a69
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXDocument.java
@@ -0,0 +1,290 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Document</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getEncoding <em>Encoding</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getLength <em>Length</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRootElement <em>Root Element</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getValidator <em>Validator</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getPublicID <em>Public ID</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocument()
+ * @model
+ * @generated
+ */
+public interface VEXDocument extends EObject {
+ /**
+ * Returns the value of the '<em><b>Encoding</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Encoding</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Encoding</em>' attribute.
+ * @see #setEncoding(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocument_Encoding()
+ * @model
+ * @generated
+ */
+ String getEncoding();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getEncoding <em>Encoding</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Encoding</em>' attribute.
+ * @see #getEncoding()
+ * @generated
+ */
+ void setEncoding(String value);
+
+ /**
+ * Returns the value of the '<em><b>Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Length</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Length</em>' attribute.
+ * @see #setLength(int)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocument_Length()
+ * @model
+ * @generated
+ */
+ int getLength();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getLength <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Length</em>' attribute.
+ * @see #getLength()
+ * @generated
+ */
+ void setLength(int value);
+
+ /**
+ * Returns the value of the '<em><b>Root Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Root Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Root Element</em>' reference.
+ * @see #setRootElement(VEXElement)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocument_RootElement()
+ * @model
+ * @generated
+ */
+ VEXElement getRootElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRootElement <em>Root Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Root Element</em>' reference.
+ * @see #getRootElement()
+ * @generated
+ */
+ void setRootElement(VEXElement value);
+
+ /**
+ * Returns the value of the '<em><b>Validator</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Validator</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Validator</em>' reference.
+ * @see #setValidator(Validator)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocument_Validator()
+ * @model
+ * @generated
+ */
+ Validator getValidator();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getValidator <em>Validator</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Validator</em>' reference.
+ * @see #getValidator()
+ * @generated
+ */
+ void setValidator(Validator value);
+
+ /**
+ * Returns the value of the '<em><b>Public ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Public ID</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Public ID</em>' attribute.
+ * @see #setPublicID(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocument_PublicID()
+ * @model
+ * @generated
+ */
+ String getPublicID();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getPublicID <em>Public ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Public ID</em>' attribute.
+ * @see #getPublicID()
+ * @generated
+ */
+ void setPublicID(String value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ boolean canInsertFragment(int offset, VEXDocumentFragment fragment);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ boolean canInsertText(int offset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ Position createPosition(int offset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model exceptions="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.DocumentValidationException"
+ * @generated
+ */
+ void delete(int startOffset, int endOffset) throws DocumentValidationException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ VEXElement findCommonElement(int offset1, int offset2);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ char getCharacterAt(int offset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ VEXElement getElementAt(int offset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ VEXDocumentFragment getFragment(int startOffset, int endOffset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ EList<String> getNodeNames(int startOffset, int endOffset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ EList<VEXNode> getNodes(int startOffset, int endOffset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ String getRawText(int startOffset, int endOffset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ String getText(int startOffset, int endOffset);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model exceptions="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.DocumentValidationException"
+ * @generated
+ */
+ void insertElement(int offset, VEXElement defaults) throws DocumentValidationException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model exceptions="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.DocumentValidationException"
+ * @generated
+ */
+ void insertFragment(int offset, VEXDocumentFragment fragment) throws DocumentValidationException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model exceptions="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.DocumentValidationException"
+ * @generated
+ */
+ void insertText(int offset, String text) throws DocumentValidationException;
+
+} // VEXDocument
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXDocumentFragment.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXDocumentFragment.java
new file mode 100644
index 0000000..aed3e37
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXDocumentFragment.java
@@ -0,0 +1,138 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Document Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getContent <em>Content</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getLength <em>Length</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getElements <em>Elements</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getNodeNames <em>Node Names</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getNodes <em>Nodes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocumentFragment()
+ * @model
+ * @generated
+ */
+public interface VEXDocumentFragment extends EObject {
+ /**
+ * Returns the value of the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Content</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Content</em>' reference.
+ * @see #setContent(Content)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocumentFragment_Content()
+ * @model
+ * @generated
+ */
+ Content getContent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getContent <em>Content</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Content</em>' reference.
+ * @see #getContent()
+ * @generated
+ */
+ void setContent(Content value);
+
+ /**
+ * Returns the value of the '<em><b>Length</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Length</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Length</em>' attribute.
+ * @see #setLength(int)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocumentFragment_Length()
+ * @model
+ * @generated
+ */
+ int getLength();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment#getLength <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Length</em>' attribute.
+ * @see #getLength()
+ * @generated
+ */
+ void setLength(int value);
+
+ /**
+ * Returns the value of the '<em><b>Elements</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Elements</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Elements</em>' reference list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocumentFragment_Elements()
+ * @model
+ * @generated
+ */
+ EList<VEXElement> getElements();
+
+ /**
+ * Returns the value of the '<em><b>Node Names</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Node Names</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Node Names</em>' attribute list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocumentFragment_NodeNames()
+ * @model
+ * @generated
+ */
+ EList<String> getNodeNames();
+
+ /**
+ * Returns the value of the '<em><b>Nodes</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Nodes</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Nodes</em>' reference list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXDocumentFragment_Nodes()
+ * @model
+ * @generated
+ */
+ EList<VEXNode> getNodes();
+
+} // VEXDocumentFragment
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXElement.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXElement.java
new file mode 100644
index 0000000..d70bce9
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXElement.java
@@ -0,0 +1,310 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getAttributeNames <em>Attribute Names</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getChildElements <em>Child Elements</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getChildNodes <em>Child Nodes</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getDocument <em>Document</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#isEmpty <em>Empty</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespacePrefix <em>Namespace Prefix</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespaceURI <em>Namespace URI</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement()
+ * @model
+ * @generated
+ */
+public interface VEXElement extends VEXNode {
+ /**
+ * Returns the value of the '<em><b>Attribute Names</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attribute Names</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attribute Names</em>' attribute list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_AttributeNames()
+ * @model
+ * @generated
+ */
+ EList<String> getAttributeNames();
+
+ /**
+ * Returns the value of the '<em><b>Child Elements</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Child Elements</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Child Elements</em>' reference list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_ChildElements()
+ * @model
+ * @generated
+ */
+ EList<VEXElement> getChildElements();
+
+ /**
+ * Returns the value of the '<em><b>Child Nodes</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Child Nodes</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Child Nodes</em>' reference list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_ChildNodes()
+ * @model
+ * @generated
+ */
+ EList<VEXNode> getChildNodes();
+
+ /**
+ * Returns the value of the '<em><b>Document</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Document</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Document</em>' reference.
+ * @see #setDocument(VEXDocument)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_Document()
+ * @model
+ * @generated
+ */
+ VEXDocument getDocument();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getDocument <em>Document</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Document</em>' reference.
+ * @see #getDocument()
+ * @generated
+ */
+ void setDocument(VEXDocument value);
+
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Empty</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Empty</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Empty</em>' attribute.
+ * @see #setEmpty(boolean)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_Empty()
+ * @model
+ * @generated
+ */
+ boolean isEmpty();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#isEmpty <em>Empty</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Empty</em>' attribute.
+ * @see #isEmpty()
+ * @generated
+ */
+ void setEmpty(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Parent</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parent</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parent</em>' reference.
+ * @see #setParent(VEXElement)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_Parent()
+ * @model
+ * @generated
+ */
+ VEXElement getParent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getParent <em>Parent</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parent</em>' reference.
+ * @see #getParent()
+ * @generated
+ */
+ void setParent(VEXElement value);
+
+ /**
+ * Returns the value of the '<em><b>Namespace Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespace Prefix</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespace Prefix</em>' attribute.
+ * @see #setNamespacePrefix(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_NamespacePrefix()
+ * @model
+ * @generated
+ */
+ String getNamespacePrefix();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespacePrefix <em>Namespace Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Namespace Prefix</em>' attribute.
+ * @see #getNamespacePrefix()
+ * @generated
+ */
+ void setNamespacePrefix(String value);
+
+ /**
+ * Returns the value of the '<em><b>Namespace URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespace URI</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespace URI</em>' attribute.
+ * @see #setNamespaceURI(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXElement_NamespaceURI()
+ * @model
+ * @generated
+ */
+ String getNamespaceURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getNamespaceURI <em>Namespace URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Namespace URI</em>' attribute.
+ * @see #getNamespaceURI()
+ * @generated
+ */
+ void setNamespaceURI(String value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void addChild(VEXElement child);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ Object clone();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ String getAttribute(String name);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model exceptions="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.DocumentValidationException"
+ * @generated
+ */
+ void removeAttribute(String name) throws DocumentValidationException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model exceptions="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.DocumentValidationException"
+ * @generated
+ */
+ void setAttribute(String name, String value) throws DocumentValidationException;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void setContent(Content content, int offset, int i);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void insertChild(int index, VEXElement child);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void setNamespace(String prefix, String namespaceURI);
+
+} // VEXElement
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXNode.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXNode.java
new file mode 100644
index 0000000..1b7aef5
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXNode.java
@@ -0,0 +1,193 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Node</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getContent <em>Content</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndOffset <em>End Offset</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndPosition <em>End Position</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartOffset <em>Start Offset</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartPosition <em>Start Position</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getText <em>Text</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode()
+ * @model
+ * @generated
+ */
+public interface VEXNode extends EObject {
+ /**
+ * Returns the value of the '<em><b>Content</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Content</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Content</em>' reference.
+ * @see #setContent(Content)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode_Content()
+ * @model
+ * @generated
+ */
+ Content getContent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getContent <em>Content</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Content</em>' reference.
+ * @see #getContent()
+ * @generated
+ */
+ void setContent(Content value);
+
+ /**
+ * Returns the value of the '<em><b>End Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>End Offset</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>End Offset</em>' attribute.
+ * @see #setEndOffset(int)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode_EndOffset()
+ * @model
+ * @generated
+ */
+ int getEndOffset();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndOffset <em>End Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>End Offset</em>' attribute.
+ * @see #getEndOffset()
+ * @generated
+ */
+ void setEndOffset(int value);
+
+ /**
+ * Returns the value of the '<em><b>End Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>End Position</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>End Position</em>' reference.
+ * @see #setEndPosition(Position)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode_EndPosition()
+ * @model
+ * @generated
+ */
+ Position getEndPosition();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getEndPosition <em>End Position</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>End Position</em>' reference.
+ * @see #getEndPosition()
+ * @generated
+ */
+ void setEndPosition(Position value);
+
+ /**
+ * Returns the value of the '<em><b>Start Offset</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Start Offset</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Start Offset</em>' attribute.
+ * @see #setStartOffset(int)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode_StartOffset()
+ * @model
+ * @generated
+ */
+ int getStartOffset();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartOffset <em>Start Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Start Offset</em>' attribute.
+ * @see #getStartOffset()
+ * @generated
+ */
+ void setStartOffset(int value);
+
+ /**
+ * Returns the value of the '<em><b>Start Position</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Start Position</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Start Position</em>' reference.
+ * @see #setStartPosition(Position)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode_StartPosition()
+ * @model
+ * @generated
+ */
+ Position getStartPosition();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getStartPosition <em>Start Position</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Start Position</em>' reference.
+ * @see #getStartPosition()
+ * @generated
+ */
+ void setStartPosition(Position value);
+
+ /**
+ * Returns the value of the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Text</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Text</em>' attribute.
+ * @see #setText(String)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXNode_Text()
+ * @model
+ * @generated
+ */
+ String getText();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode#getText <em>Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Text</em>' attribute.
+ * @see #getText()
+ * @generated
+ */
+ void setText(String value);
+
+} // VEXNode
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXProcessingInstruction.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXProcessingInstruction.java
new file mode 100644
index 0000000..f6629c8
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/VEXProcessingInstruction.java
@@ -0,0 +1,64 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>VEX Processing Instruction</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#getAttributes <em>Attributes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXProcessingInstruction()
+ * @model
+ * @generated
+ */
+public interface VEXProcessingInstruction extends VEXNode {
+ /**
+ * Returns the value of the '<em><b>Attributes</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attributes</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attributes</em>' reference list.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getVEXProcessingInstruction_Attributes()
+ * @model
+ * @generated
+ */
+ EList<VEXAttribute> getAttributes();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ boolean removeAttribute(String attributeName);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model
+ * @generated
+ */
+ void setAttribute(String attributeName, String value);
+
+} // VEXProcessingInstruction
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Validator.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Validator.java
new file mode 100644
index 0000000..5e2467e
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/I/Validator.java
@@ -0,0 +1,106 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.I;
+
+import java.io.Serializable;
+
+import java.util.Set;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Validator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidRootElements <em>Valid Root Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getValidator()
+ * @model superTypes="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Serializable"
+ * @generated
+ */
+public interface Validator extends EObject, Serializable {
+ /**
+ * Returns the value of the '<em><b>Valid Root Elements</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Valid Root Elements</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Valid Root Elements</em>' attribute.
+ * @see #setValidRootElements(Set)
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#getValidator_ValidRootElements()
+ * @model dataType="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Set"
+ * @generated
+ */
+ Set getValidRootElements();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidRootElements <em>Valid Root Elements</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Valid Root Elements</em>' attribute.
+ * @see #getValidRootElements()
+ * @generated
+ */
+ void setValidRootElements(Set value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model dataType="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.AttributeDefinition"
+ * @generated
+ */
+ AttributeDefinition getAttributeDefinition(String element, String attribute);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model dataType="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.AttributeDefinition"
+ * @generated
+ */
+ EList<AttributeDefinition> getAttributeDefinitions(String element);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model dataType="org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Set<org.eclipse.emf.ecore.EString>"
+ * @generated
+ */
+ Set<String> getValidItems(String element);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model nodesMany="true"
+ * @generated
+ */
+ boolean isValidSequence(String element, EList<String> nodes, boolean partial);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model seq1Many="true" seq2Many="true" seq3Many="true"
+ * @generated
+ */
+ boolean isValidSequence(String element, EList<String> seq1, EList<String> seq2, EList<String> seq3, boolean partial);
+
+} // Validator
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/ContentImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/ContentImpl.java
new file mode 100644
index 0000000..25c96c0
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/ContentImpl.java
@@ -0,0 +1,217 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Content</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ContentImpl#getLength <em>Length</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ContentImpl extends EObjectImpl implements Content {
+ /**
+ * The default value of the '{@link #getLength() <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLength()
+ * @generated
+ * @ordered
+ */
+ protected static final int LENGTH_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getLength() <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLength()
+ * @generated
+ * @ordered
+ */
+ protected int length = LENGTH_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.CONTENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getLength() {
+ return length;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLength(int newLength) {
+ int oldLength = length;
+ length = newLength;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.CONTENT__LENGTH, oldLength, length));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position createPosition(int offset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void insertString(int offset, String s) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void remove(int offset, int length) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getString(int offset, int length) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.CONTENT__LENGTH:
+ return new Integer(getLength());
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.CONTENT__LENGTH:
+ setLength(((Integer)newValue).intValue());
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.CONTENT__LENGTH:
+ setLength(LENGTH_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.CONTENT__LENGTH:
+ return length != LENGTH_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (length: ");
+ result.append(length);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ContentImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/DomEMFFactoryImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/DomEMFFactoryImpl.java
new file mode 100644
index 0000000..c76f923
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/DomEMFFactoryImpl.java
@@ -0,0 +1,304 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.*;
+
+import org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DomEMFFactoryImpl extends EFactoryImpl implements DomEMFFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static DomEMFFactory init() {
+ try {
+ DomEMFFactory theDomEMFFactory = (DomEMFFactory)EPackage.Registry.INSTANCE.getEFactory("http:///org/eclipse/wst/xml/vex/core/internal/provisional/dom.ecore");
+ if (theDomEMFFactory != null) {
+ return theDomEMFFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DomEMFFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DomEMFFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DomEMFPackage.CONTENT: return createContent();
+ case DomEMFPackage.POSITION: return createPosition();
+ case DomEMFPackage.VEX_ATTRIBUTE: return createVEXAttribute();
+ case DomEMFPackage.VEX_COMMENT: return createVEXComment();
+ case DomEMFPackage.VEX_DOCUMENT: return createVEXDocument();
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT: return createVEXDocumentFragment();
+ case DomEMFPackage.VEX_ELEMENT: return createVEXElement();
+ case DomEMFPackage.VEX_NODE: return createVEXNode();
+ case DomEMFPackage.VEX_PROCESSING_INSTRUCTION: return createVEXProcessingInstruction();
+ case DomEMFPackage.VALIDATOR: return createValidator();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case DomEMFPackage.DOCUMENT_VALIDATION_EXCEPTION:
+ return createDocumentValidationExceptionFromString(eDataType, initialValue);
+ case DomEMFPackage.ATTRIBUTE_DEFINITION:
+ return createAttributeDefinitionFromString(eDataType, initialValue);
+ case DomEMFPackage.SET:
+ return createSetFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case DomEMFPackage.DOCUMENT_VALIDATION_EXCEPTION:
+ return convertDocumentValidationExceptionToString(eDataType, instanceValue);
+ case DomEMFPackage.ATTRIBUTE_DEFINITION:
+ return convertAttributeDefinitionToString(eDataType, instanceValue);
+ case DomEMFPackage.SET:
+ return convertSetToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Content createContent() {
+ ContentImpl content = new ContentImpl();
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position createPosition() {
+ PositionImpl position = new PositionImpl();
+ return position;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXAttribute createVEXAttribute() {
+ VEXAttributeImpl vexAttribute = new VEXAttributeImpl();
+ return vexAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXComment createVEXComment() {
+ VEXCommentImpl vexComment = new VEXCommentImpl();
+ return vexComment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocument createVEXDocument() {
+ VEXDocumentImpl vexDocument = new VEXDocumentImpl();
+ return vexDocument;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocumentFragment createVEXDocumentFragment() {
+ VEXDocumentFragmentImpl vexDocumentFragment = new VEXDocumentFragmentImpl();
+ return vexDocumentFragment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement createVEXElement() {
+ VEXElementImpl vexElement = new VEXElementImpl();
+ return vexElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXNode createVEXNode() {
+ VEXNodeImpl vexNode = new VEXNodeImpl();
+ return vexNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXProcessingInstruction createVEXProcessingInstruction() {
+ VEXProcessingInstructionImpl vexProcessingInstruction = new VEXProcessingInstructionImpl();
+ return vexProcessingInstruction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Validator createValidator() {
+ ValidatorImpl validator = new ValidatorImpl();
+ return validator;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DocumentValidationException createDocumentValidationExceptionFromString(EDataType eDataType, String initialValue) {
+ return (DocumentValidationException)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertDocumentValidationExceptionToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AttributeDefinition createAttributeDefinitionFromString(EDataType eDataType, String initialValue) {
+ return (AttributeDefinition)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertAttributeDefinitionToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Set<?> createSetFromString(EDataType eDataType, String initialValue) {
+ return (Set<?>)super.createFromString(initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertSetToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DomEMFPackage getDomEMFPackage() {
+ return (DomEMFPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DomEMFPackage getPackage() {
+ return DomEMFPackage.eINSTANCE;
+ }
+
+} //DomEMFFactoryImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/DomEMFPackageImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/DomEMFPackageImpl.java
new file mode 100644
index 0000000..22ef5a4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/DomEMFPackageImpl.java
@@ -0,0 +1,1005 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import java.io.Serializable;
+
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EGenericType;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator;
+
+import org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DomEMFPackageImpl extends EPackageImpl implements DomEMFPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass positionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexAttributeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexCommentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexDocumentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexDocumentFragmentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexNodeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass vexProcessingInstructionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass validatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass serializableEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType documentValidationExceptionEDataType = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType attributeDefinitionEDataType = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType setEDataType = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DomEMFPackageImpl() {
+ super(eNS_URI, DomEMFFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this
+ * model, and for any others upon which it depends. Simple
+ * dependencies are satisfied by calling this method on all
+ * dependent packages before doing anything else. This method drives
+ * initialization for interdependent packages directly, in parallel
+ * with this package, itself.
+ * <p>Of this package and its interdependencies, all packages which
+ * have not yet been registered by their URI values are first created
+ * and registered. The packages are then initialized in two steps:
+ * meta-model objects for all of the packages are created before any
+ * are initialized, since one package's meta-model objects may refer to
+ * those of another.
+ * <p>Invocation of this method will not affect any packages that have
+ * already been initialized.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static DomEMFPackage init() {
+ if (isInited) return (DomEMFPackage)EPackage.Registry.INSTANCE.getEPackage(DomEMFPackage.eNS_URI);
+
+ // Obtain or create and register package
+ DomEMFPackageImpl theDomEMFPackage = (DomEMFPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof DomEMFPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new DomEMFPackageImpl());
+
+ isInited = true;
+
+ // Create package meta-data objects
+ theDomEMFPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDomEMFPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDomEMFPackage.freeze();
+
+ return theDomEMFPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContent() {
+ return contentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getContent_Length() {
+ return (EAttribute)contentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPosition() {
+ return positionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getPosition_Offset() {
+ return (EAttribute)positionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXAttribute() {
+ return vexAttributeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXAttribute_Document() {
+ return (EReference)vexAttributeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXAttribute_Value() {
+ return (EAttribute)vexAttributeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXAttribute_Parent() {
+ return (EReference)vexAttributeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXAttribute_LocalName() {
+ return (EAttribute)vexAttributeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXAttribute_NamespacePrefix() {
+ return (EAttribute)vexAttributeEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXAttribute_NamespaceURI() {
+ return (EAttribute)vexAttributeEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXComment() {
+ return vexCommentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXComment_Value() {
+ return (EAttribute)vexCommentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXDocument() {
+ return vexDocumentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXDocument_Encoding() {
+ return (EAttribute)vexDocumentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXDocument_Length() {
+ return (EAttribute)vexDocumentEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXDocument_RootElement() {
+ return (EReference)vexDocumentEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXDocument_Validator() {
+ return (EReference)vexDocumentEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXDocument_PublicID() {
+ return (EAttribute)vexDocumentEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXDocumentFragment() {
+ return vexDocumentFragmentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXDocumentFragment_Content() {
+ return (EReference)vexDocumentFragmentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXDocumentFragment_Length() {
+ return (EAttribute)vexDocumentFragmentEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXDocumentFragment_Elements() {
+ return (EReference)vexDocumentFragmentEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXDocumentFragment_NodeNames() {
+ return (EAttribute)vexDocumentFragmentEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXDocumentFragment_Nodes() {
+ return (EReference)vexDocumentFragmentEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXElement() {
+ return vexElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXElement_AttributeNames() {
+ return (EAttribute)vexElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXElement_ChildElements() {
+ return (EReference)vexElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXElement_ChildNodes() {
+ return (EReference)vexElementEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXElement_Document() {
+ return (EReference)vexElementEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXElement_Name() {
+ return (EAttribute)vexElementEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXElement_Empty() {
+ return (EAttribute)vexElementEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXElement_Parent() {
+ return (EReference)vexElementEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXElement_NamespacePrefix() {
+ return (EAttribute)vexElementEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXElement_NamespaceURI() {
+ return (EAttribute)vexElementEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXNode() {
+ return vexNodeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXNode_Content() {
+ return (EReference)vexNodeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXNode_EndOffset() {
+ return (EAttribute)vexNodeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXNode_EndPosition() {
+ return (EReference)vexNodeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXNode_StartOffset() {
+ return (EAttribute)vexNodeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXNode_StartPosition() {
+ return (EReference)vexNodeEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getVEXNode_Text() {
+ return (EAttribute)vexNodeEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVEXProcessingInstruction() {
+ return vexProcessingInstructionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getVEXProcessingInstruction_Attributes() {
+ return (EReference)vexProcessingInstructionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getValidator() {
+ return validatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getValidator_ValidRootElements() {
+ return (EAttribute)validatorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSerializable() {
+ return serializableEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getDocumentValidationException() {
+ return documentValidationExceptionEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getAttributeDefinition() {
+ return attributeDefinitionEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getSet() {
+ return setEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DomEMFFactory getDomEMFFactory() {
+ return (DomEMFFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ contentEClass = createEClass(CONTENT);
+ createEAttribute(contentEClass, CONTENT__LENGTH);
+
+ positionEClass = createEClass(POSITION);
+ createEAttribute(positionEClass, POSITION__OFFSET);
+
+ vexAttributeEClass = createEClass(VEX_ATTRIBUTE);
+ createEReference(vexAttributeEClass, VEX_ATTRIBUTE__DOCUMENT);
+ createEAttribute(vexAttributeEClass, VEX_ATTRIBUTE__VALUE);
+ createEReference(vexAttributeEClass, VEX_ATTRIBUTE__PARENT);
+ createEAttribute(vexAttributeEClass, VEX_ATTRIBUTE__LOCAL_NAME);
+ createEAttribute(vexAttributeEClass, VEX_ATTRIBUTE__NAMESPACE_PREFIX);
+ createEAttribute(vexAttributeEClass, VEX_ATTRIBUTE__NAMESPACE_URI);
+
+ vexCommentEClass = createEClass(VEX_COMMENT);
+ createEAttribute(vexCommentEClass, VEX_COMMENT__VALUE);
+
+ vexDocumentEClass = createEClass(VEX_DOCUMENT);
+ createEAttribute(vexDocumentEClass, VEX_DOCUMENT__ENCODING);
+ createEAttribute(vexDocumentEClass, VEX_DOCUMENT__LENGTH);
+ createEReference(vexDocumentEClass, VEX_DOCUMENT__ROOT_ELEMENT);
+ createEReference(vexDocumentEClass, VEX_DOCUMENT__VALIDATOR);
+ createEAttribute(vexDocumentEClass, VEX_DOCUMENT__PUBLIC_ID);
+
+ vexDocumentFragmentEClass = createEClass(VEX_DOCUMENT_FRAGMENT);
+ createEReference(vexDocumentFragmentEClass, VEX_DOCUMENT_FRAGMENT__CONTENT);
+ createEAttribute(vexDocumentFragmentEClass, VEX_DOCUMENT_FRAGMENT__LENGTH);
+ createEReference(vexDocumentFragmentEClass, VEX_DOCUMENT_FRAGMENT__ELEMENTS);
+ createEAttribute(vexDocumentFragmentEClass, VEX_DOCUMENT_FRAGMENT__NODE_NAMES);
+ createEReference(vexDocumentFragmentEClass, VEX_DOCUMENT_FRAGMENT__NODES);
+
+ vexElementEClass = createEClass(VEX_ELEMENT);
+ createEAttribute(vexElementEClass, VEX_ELEMENT__ATTRIBUTE_NAMES);
+ createEReference(vexElementEClass, VEX_ELEMENT__CHILD_ELEMENTS);
+ createEReference(vexElementEClass, VEX_ELEMENT__CHILD_NODES);
+ createEReference(vexElementEClass, VEX_ELEMENT__DOCUMENT);
+ createEAttribute(vexElementEClass, VEX_ELEMENT__NAME);
+ createEAttribute(vexElementEClass, VEX_ELEMENT__EMPTY);
+ createEReference(vexElementEClass, VEX_ELEMENT__PARENT);
+ createEAttribute(vexElementEClass, VEX_ELEMENT__NAMESPACE_PREFIX);
+ createEAttribute(vexElementEClass, VEX_ELEMENT__NAMESPACE_URI);
+
+ vexNodeEClass = createEClass(VEX_NODE);
+ createEReference(vexNodeEClass, VEX_NODE__CONTENT);
+ createEAttribute(vexNodeEClass, VEX_NODE__END_OFFSET);
+ createEReference(vexNodeEClass, VEX_NODE__END_POSITION);
+ createEAttribute(vexNodeEClass, VEX_NODE__START_OFFSET);
+ createEReference(vexNodeEClass, VEX_NODE__START_POSITION);
+ createEAttribute(vexNodeEClass, VEX_NODE__TEXT);
+
+ vexProcessingInstructionEClass = createEClass(VEX_PROCESSING_INSTRUCTION);
+ createEReference(vexProcessingInstructionEClass, VEX_PROCESSING_INSTRUCTION__ATTRIBUTES);
+
+ validatorEClass = createEClass(VALIDATOR);
+ createEAttribute(validatorEClass, VALIDATOR__VALID_ROOT_ELEMENTS);
+
+ serializableEClass = createEClass(SERIALIZABLE);
+
+ // Create data types
+ documentValidationExceptionEDataType = createEDataType(DOCUMENT_VALIDATION_EXCEPTION);
+ attributeDefinitionEDataType = createEDataType(ATTRIBUTE_DEFINITION);
+ setEDataType = createEDataType(SET);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+ addETypeParameter(setEDataType, "T");
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ vexAttributeEClass.getESuperTypes().add(this.getVEXNode());
+ vexCommentEClass.getESuperTypes().add(this.getVEXNode());
+ vexElementEClass.getESuperTypes().add(this.getVEXNode());
+ vexProcessingInstructionEClass.getESuperTypes().add(this.getVEXNode());
+ validatorEClass.getESuperTypes().add(this.getSerializable());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(contentEClass, Content.class, "Content", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getContent_Length(), ecorePackage.getEInt(), "length", null, 0, 1, Content.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ EOperation op = addEOperation(contentEClass, this.getPosition(), "createPosition", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(contentEClass, null, "insertString", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "s", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(contentEClass, null, "remove", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "length", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(contentEClass, ecorePackage.getEString(), "getString", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "length", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(positionEClass, Position.class, "Position", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getPosition_Offset(), ecorePackage.getEInt(), "offset", null, 0, 1, Position.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vexAttributeEClass, VEXAttribute.class, "VEXAttribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVEXAttribute_Document(), this.getVEXDocument(), null, "document", null, 0, 1, VEXAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXAttribute_Value(), ecorePackage.getEString(), "value", null, 0, 1, VEXAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXAttribute_Parent(), this.getVEXElement(), null, "parent", null, 0, 1, VEXAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXAttribute_LocalName(), ecorePackage.getEString(), "localName", null, 0, 1, VEXAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXAttribute_NamespacePrefix(), ecorePackage.getEString(), "namespacePrefix", null, 0, 1, VEXAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXAttribute_NamespaceURI(), ecorePackage.getEString(), "namespaceURI", null, 0, 1, VEXAttribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ op = addEOperation(vexAttributeEClass, null, "setNamespace", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "prefix", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "namespaceURI", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(vexCommentEClass, VEXComment.class, "VEXComment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getVEXComment_Value(), ecorePackage.getEString(), "value", null, 0, 1, VEXComment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vexDocumentEClass, VEXDocument.class, "VEXDocument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getVEXDocument_Encoding(), ecorePackage.getEString(), "encoding", null, 0, 1, VEXDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXDocument_Length(), ecorePackage.getEInt(), "length", null, 0, 1, VEXDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXDocument_RootElement(), this.getVEXElement(), null, "rootElement", null, 0, 1, VEXDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXDocument_Validator(), this.getValidator(), null, "validator", null, 0, 1, VEXDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXDocument_PublicID(), ecorePackage.getEString(), "publicID", null, 0, 1, VEXDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, ecorePackage.getEBoolean(), "canInsertFragment", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, this.getVEXDocumentFragment(), "fragment", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, ecorePackage.getEBoolean(), "canInsertText", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, this.getPosition(), "createPosition", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, null, "delete", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "startOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "endOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEException(op, this.getDocumentValidationException());
+
+ op = addEOperation(vexDocumentEClass, this.getVEXElement(), "findCommonElement", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset1", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset2", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, ecorePackage.getEChar(), "getCharacterAt", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, this.getVEXElement(), "getElementAt", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, this.getVEXDocumentFragment(), "getFragment", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "startOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "endOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, ecorePackage.getEString(), "getNodeNames", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "startOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "endOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, this.getVEXNode(), "getNodes", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "startOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "endOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, ecorePackage.getEString(), "getRawText", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "startOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "endOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, ecorePackage.getEString(), "getText", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "startOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "endOffset", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexDocumentEClass, null, "insertElement", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, this.getVEXElement(), "defaults", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEException(op, this.getDocumentValidationException());
+
+ op = addEOperation(vexDocumentEClass, null, "insertFragment", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, this.getVEXDocumentFragment(), "fragment", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEException(op, this.getDocumentValidationException());
+
+ op = addEOperation(vexDocumentEClass, null, "insertText", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "text", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEException(op, this.getDocumentValidationException());
+
+ initEClass(vexDocumentFragmentEClass, VEXDocumentFragment.class, "VEXDocumentFragment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVEXDocumentFragment_Content(), this.getContent(), null, "content", null, 0, 1, VEXDocumentFragment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXDocumentFragment_Length(), ecorePackage.getEInt(), "length", null, 0, 1, VEXDocumentFragment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXDocumentFragment_Elements(), this.getVEXElement(), null, "elements", null, 0, -1, VEXDocumentFragment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXDocumentFragment_NodeNames(), ecorePackage.getEString(), "nodeNames", null, 0, -1, VEXDocumentFragment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXDocumentFragment_Nodes(), this.getVEXNode(), null, "nodes", null, 0, -1, VEXDocumentFragment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vexElementEClass, VEXElement.class, "VEXElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getVEXElement_AttributeNames(), ecorePackage.getEString(), "attributeNames", null, 0, -1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXElement_ChildElements(), this.getVEXElement(), null, "childElements", null, 0, -1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXElement_ChildNodes(), this.getVEXNode(), null, "childNodes", null, 0, -1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXElement_Document(), this.getVEXDocument(), null, "document", null, 0, 1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXElement_Empty(), ecorePackage.getEBoolean(), "empty", null, 0, 1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXElement_Parent(), this.getVEXElement(), null, "parent", null, 0, 1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXElement_NamespacePrefix(), ecorePackage.getEString(), "namespacePrefix", null, 0, 1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXElement_NamespaceURI(), ecorePackage.getEString(), "namespaceURI", null, 0, 1, VEXElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ op = addEOperation(vexElementEClass, null, "addChild", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, this.getVEXElement(), "child", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ addEOperation(vexElementEClass, ecorePackage.getEJavaObject(), "clone", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexElementEClass, ecorePackage.getEString(), "getAttribute", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "name", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexElementEClass, null, "removeAttribute", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "name", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEException(op, this.getDocumentValidationException());
+
+ op = addEOperation(vexElementEClass, null, "setAttribute", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "name", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "value", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEException(op, this.getDocumentValidationException());
+
+ op = addEOperation(vexElementEClass, null, "setContent", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, this.getContent(), "content", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "offset", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "i", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexElementEClass, null, "insertChild", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEInt(), "index", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, this.getVEXElement(), "child", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexElementEClass, null, "setNamespace", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "prefix", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "namespaceURI", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(vexNodeEClass, VEXNode.class, "VEXNode", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVEXNode_Content(), this.getContent(), null, "content", null, 0, 1, VEXNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXNode_EndOffset(), ecorePackage.getEInt(), "endOffset", null, 0, 1, VEXNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXNode_EndPosition(), this.getPosition(), null, "endPosition", null, 0, 1, VEXNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXNode_StartOffset(), ecorePackage.getEInt(), "startOffset", null, 0, 1, VEXNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getVEXNode_StartPosition(), this.getPosition(), null, "startPosition", null, 0, 1, VEXNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getVEXNode_Text(), ecorePackage.getEString(), "text", null, 0, 1, VEXNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(vexProcessingInstructionEClass, VEXProcessingInstruction.class, "VEXProcessingInstruction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getVEXProcessingInstruction_Attributes(), this.getVEXAttribute(), null, "attributes", null, 0, -1, VEXProcessingInstruction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ op = addEOperation(vexProcessingInstructionEClass, ecorePackage.getEBoolean(), "removeAttribute", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "attributeName", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(vexProcessingInstructionEClass, null, "setAttribute", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "attributeName", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "value", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(validatorEClass, Validator.class, "Validator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getValidator_ValidRootElements(), this.getSet(), "validRootElements", null, 0, 1, Validator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ op = addEOperation(validatorEClass, this.getAttributeDefinition(), "getAttributeDefinition", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "element", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "attribute", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(validatorEClass, this.getAttributeDefinition(), "getAttributeDefinitions", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "element", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(validatorEClass, null, "getValidItems", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "element", 0, 1, IS_UNIQUE, IS_ORDERED);
+ EGenericType g1 = createEGenericType(this.getSet());
+ EGenericType g2 = createEGenericType(ecorePackage.getEString());
+ g1.getETypeArguments().add(g2);
+ initEOperation(op, g1);
+
+ op = addEOperation(validatorEClass, ecorePackage.getEBoolean(), "isValidSequence", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "element", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "nodes", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEBoolean(), "partial", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ op = addEOperation(validatorEClass, ecorePackage.getEBoolean(), "isValidSequence", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "element", 0, 1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "seq1", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "seq2", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEString(), "seq3", 0, -1, IS_UNIQUE, IS_ORDERED);
+ addEParameter(op, ecorePackage.getEBoolean(), "partial", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(serializableEClass, Serializable.class, "Serializable", IS_ABSTRACT, IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
+
+ // Initialize data types
+ initEDataType(documentValidationExceptionEDataType, DocumentValidationException.class, "DocumentValidationException", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+ initEDataType(attributeDefinitionEDataType, AttributeDefinition.class, "AttributeDefinition", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+ initEDataType(setEDataType, Set.class, "Set", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //DomEMFPackageImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/PositionImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/PositionImpl.java
new file mode 100644
index 0000000..89b4ff0
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/PositionImpl.java
@@ -0,0 +1,172 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Position</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.PositionImpl#getOffset <em>Offset</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class PositionImpl extends EObjectImpl implements Position {
+ /**
+ * The default value of the '{@link #getOffset() <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOffset()
+ * @generated
+ * @ordered
+ */
+ protected static final int OFFSET_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getOffset() <em>Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOffset()
+ * @generated
+ * @ordered
+ */
+ protected int offset = OFFSET_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PositionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.POSITION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getOffset() {
+ return offset;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOffset(int newOffset) {
+ int oldOffset = offset;
+ offset = newOffset;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.POSITION__OFFSET, oldOffset, offset));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.POSITION__OFFSET:
+ return new Integer(getOffset());
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.POSITION__OFFSET:
+ setOffset(((Integer)newValue).intValue());
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.POSITION__OFFSET:
+ setOffset(OFFSET_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.POSITION__OFFSET:
+ return offset != OFFSET_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (offset: ");
+ result.append(offset);
+ result.append(')');
+ return result.toString();
+ }
+
+} //PositionImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXAttributeImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXAttributeImpl.java
new file mode 100644
index 0000000..88717e8
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXAttributeImpl.java
@@ -0,0 +1,467 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl#getDocument <em>Document</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl#getLocalName <em>Local Name</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl#getNamespacePrefix <em>Namespace Prefix</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXAttributeImpl#getNamespaceURI <em>Namespace URI</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXAttributeImpl extends VEXNodeImpl implements VEXAttribute {
+ /**
+ * The cached value of the '{@link #getDocument() <em>Document</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocument()
+ * @generated
+ * @ordered
+ */
+ protected VEXDocument document;
+
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final String VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected String value = VALUE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParent()
+ * @generated
+ * @ordered
+ */
+ protected VEXElement parent;
+
+ /**
+ * The default value of the '{@link #getLocalName() <em>Local Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected static final String LOCAL_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLocalName() <em>Local Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLocalName()
+ * @generated
+ * @ordered
+ */
+ protected String localName = LOCAL_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getNamespacePrefix() <em>Namespace Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespacePrefix()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAMESPACE_PREFIX_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNamespacePrefix() <em>Namespace Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespacePrefix()
+ * @generated
+ * @ordered
+ */
+ protected String namespacePrefix = NAMESPACE_PREFIX_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getNamespaceURI() <em>Namespace URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespaceURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAMESPACE_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNamespaceURI() <em>Namespace URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespaceURI()
+ * @generated
+ * @ordered
+ */
+ protected String namespaceURI = NAMESPACE_URI_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXAttributeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_ATTRIBUTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocument getDocument() {
+ if (document != null && document.eIsProxy()) {
+ InternalEObject oldDocument = (InternalEObject)document;
+ document = (VEXDocument)eResolveProxy(oldDocument);
+ if (document != oldDocument) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_ATTRIBUTE__DOCUMENT, oldDocument, document));
+ }
+ }
+ return document;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocument basicGetDocument() {
+ return document;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocument(VEXDocument newDocument) {
+ VEXDocument oldDocument = document;
+ document = newDocument;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ATTRIBUTE__DOCUMENT, oldDocument, document));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(String newValue) {
+ String oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ATTRIBUTE__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement getParent() {
+ if (parent != null && parent.eIsProxy()) {
+ InternalEObject oldParent = (InternalEObject)parent;
+ parent = (VEXElement)eResolveProxy(oldParent);
+ if (parent != oldParent) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_ATTRIBUTE__PARENT, oldParent, parent));
+ }
+ }
+ return parent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement basicGetParent() {
+ return parent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParent(VEXElement newParent) {
+ VEXElement oldParent = parent;
+ parent = newParent;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ATTRIBUTE__PARENT, oldParent, parent));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLocalName() {
+ return localName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLocalName(String newLocalName) {
+ String oldLocalName = localName;
+ localName = newLocalName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ATTRIBUTE__LOCAL_NAME, oldLocalName, localName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getNamespacePrefix() {
+ return namespacePrefix;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNamespacePrefix(String newNamespacePrefix) {
+ String oldNamespacePrefix = namespacePrefix;
+ namespacePrefix = newNamespacePrefix;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_PREFIX, oldNamespacePrefix, namespacePrefix));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getNamespaceURI() {
+ return namespaceURI;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNamespaceURI(String newNamespaceURI) {
+ String oldNamespaceURI = namespaceURI;
+ namespaceURI = newNamespaceURI;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_URI, oldNamespaceURI, namespaceURI));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNamespace(String prefix, String namespaceURI) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ATTRIBUTE__DOCUMENT:
+ if (resolve) return getDocument();
+ return basicGetDocument();
+ case DomEMFPackage.VEX_ATTRIBUTE__VALUE:
+ return getValue();
+ case DomEMFPackage.VEX_ATTRIBUTE__PARENT:
+ if (resolve) return getParent();
+ return basicGetParent();
+ case DomEMFPackage.VEX_ATTRIBUTE__LOCAL_NAME:
+ return getLocalName();
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_PREFIX:
+ return getNamespacePrefix();
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_URI:
+ return getNamespaceURI();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ATTRIBUTE__DOCUMENT:
+ setDocument((VEXDocument)newValue);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__VALUE:
+ setValue((String)newValue);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__PARENT:
+ setParent((VEXElement)newValue);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__LOCAL_NAME:
+ setLocalName((String)newValue);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_PREFIX:
+ setNamespacePrefix((String)newValue);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_URI:
+ setNamespaceURI((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ATTRIBUTE__DOCUMENT:
+ setDocument((VEXDocument)null);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__PARENT:
+ setParent((VEXElement)null);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__LOCAL_NAME:
+ setLocalName(LOCAL_NAME_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_PREFIX:
+ setNamespacePrefix(NAMESPACE_PREFIX_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_URI:
+ setNamespaceURI(NAMESPACE_URI_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ATTRIBUTE__DOCUMENT:
+ return document != null;
+ case DomEMFPackage.VEX_ATTRIBUTE__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ case DomEMFPackage.VEX_ATTRIBUTE__PARENT:
+ return parent != null;
+ case DomEMFPackage.VEX_ATTRIBUTE__LOCAL_NAME:
+ return LOCAL_NAME_EDEFAULT == null ? localName != null : !LOCAL_NAME_EDEFAULT.equals(localName);
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_PREFIX:
+ return NAMESPACE_PREFIX_EDEFAULT == null ? namespacePrefix != null : !NAMESPACE_PREFIX_EDEFAULT.equals(namespacePrefix);
+ case DomEMFPackage.VEX_ATTRIBUTE__NAMESPACE_URI:
+ return NAMESPACE_URI_EDEFAULT == null ? namespaceURI != null : !NAMESPACE_URI_EDEFAULT.equals(namespaceURI);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(", localName: ");
+ result.append(localName);
+ result.append(", namespacePrefix: ");
+ result.append(namespacePrefix);
+ result.append(", namespaceURI: ");
+ result.append(namespaceURI);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VEXAttributeImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXCommentImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXCommentImpl.java
new file mode 100644
index 0000000..54fca6b
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXCommentImpl.java
@@ -0,0 +1,171 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Comment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXCommentImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXCommentImpl extends VEXNodeImpl implements VEXComment {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final String VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected String value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXCommentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_COMMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(String newValue) {
+ String oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_COMMENT__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_COMMENT__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_COMMENT__VALUE:
+ setValue((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_COMMENT__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_COMMENT__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VEXCommentImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXDocumentFragmentImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXDocumentFragmentImpl.java
new file mode 100644
index 0000000..2b14c47
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXDocumentFragmentImpl.java
@@ -0,0 +1,348 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Document Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl#getContent <em>Content</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl#getLength <em>Length</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl#getElements <em>Elements</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl#getNodeNames <em>Node Names</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentFragmentImpl#getNodes <em>Nodes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXDocumentFragmentImpl extends EObjectImpl implements VEXDocumentFragment {
+ /**
+ * The cached value of the '{@link #getContent() <em>Content</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getContent()
+ * @generated
+ * @ordered
+ */
+ protected Content content;
+
+ /**
+ * The default value of the '{@link #getLength() <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLength()
+ * @generated
+ * @ordered
+ */
+ protected static final int LENGTH_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getLength() <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLength()
+ * @generated
+ * @ordered
+ */
+ protected int length = LENGTH_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getElements() <em>Elements</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElements()
+ * @generated
+ * @ordered
+ */
+ protected EList<VEXElement> elements;
+
+ /**
+ * The cached value of the '{@link #getNodeNames() <em>Node Names</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNodeNames()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> nodeNames;
+
+ /**
+ * The cached value of the '{@link #getNodes() <em>Nodes</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNodes()
+ * @generated
+ * @ordered
+ */
+ protected EList<VEXNode> nodes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXDocumentFragmentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_DOCUMENT_FRAGMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Content getContent() {
+ if (content != null && content.eIsProxy()) {
+ InternalEObject oldContent = (InternalEObject)content;
+ content = (Content)eResolveProxy(oldContent);
+ if (content != oldContent) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_DOCUMENT_FRAGMENT__CONTENT, oldContent, content));
+ }
+ }
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Content basicGetContent() {
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContent(Content newContent) {
+ Content oldContent = content;
+ content = newContent;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT_FRAGMENT__CONTENT, oldContent, content));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getLength() {
+ return length;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLength(int newLength) {
+ int oldLength = length;
+ length = newLength;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT_FRAGMENT__LENGTH, oldLength, length));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VEXElement> getElements() {
+ if (elements == null) {
+ elements = new EObjectResolvingEList<VEXElement>(VEXElement.class, this, DomEMFPackage.VEX_DOCUMENT_FRAGMENT__ELEMENTS);
+ }
+ return elements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getNodeNames() {
+ if (nodeNames == null) {
+ nodeNames = new EDataTypeUniqueEList<String>(String.class, this, DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODE_NAMES);
+ }
+ return nodeNames;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VEXNode> getNodes() {
+ if (nodes == null) {
+ nodes = new EObjectResolvingEList<VEXNode>(VEXNode.class, this, DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODES);
+ }
+ return nodes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__CONTENT:
+ if (resolve) return getContent();
+ return basicGetContent();
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__LENGTH:
+ return new Integer(getLength());
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__ELEMENTS:
+ return getElements();
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODE_NAMES:
+ return getNodeNames();
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODES:
+ return getNodes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__CONTENT:
+ setContent((Content)newValue);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__LENGTH:
+ setLength(((Integer)newValue).intValue());
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__ELEMENTS:
+ getElements().clear();
+ getElements().addAll((Collection<? extends VEXElement>)newValue);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODE_NAMES:
+ getNodeNames().clear();
+ getNodeNames().addAll((Collection<? extends String>)newValue);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODES:
+ getNodes().clear();
+ getNodes().addAll((Collection<? extends VEXNode>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__CONTENT:
+ setContent((Content)null);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__LENGTH:
+ setLength(LENGTH_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__ELEMENTS:
+ getElements().clear();
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODE_NAMES:
+ getNodeNames().clear();
+ return;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODES:
+ getNodes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__CONTENT:
+ return content != null;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__LENGTH:
+ return length != LENGTH_EDEFAULT;
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__ELEMENTS:
+ return elements != null && !elements.isEmpty();
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODE_NAMES:
+ return nodeNames != null && !nodeNames.isEmpty();
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT__NODES:
+ return nodes != null && !nodes.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (length: ");
+ result.append(length);
+ result.append(", nodeNames: ");
+ result.append(nodeNames);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VEXDocumentFragmentImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXDocumentImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXDocumentImpl.java
new file mode 100644
index 0000000..37485bf
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXDocumentImpl.java
@@ -0,0 +1,575 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Document</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl#getEncoding <em>Encoding</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl#getLength <em>Length</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl#getRootElement <em>Root Element</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl#getValidator <em>Validator</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXDocumentImpl#getPublicID <em>Public ID</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXDocumentImpl extends EObjectImpl implements VEXDocument {
+ /**
+ * The default value of the '{@link #getEncoding() <em>Encoding</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEncoding()
+ * @generated
+ * @ordered
+ */
+ protected static final String ENCODING_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getEncoding() <em>Encoding</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEncoding()
+ * @generated
+ * @ordered
+ */
+ protected String encoding = ENCODING_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getLength() <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLength()
+ * @generated
+ * @ordered
+ */
+ protected static final int LENGTH_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getLength() <em>Length</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLength()
+ * @generated
+ * @ordered
+ */
+ protected int length = LENGTH_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getRootElement() <em>Root Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRootElement()
+ * @generated
+ * @ordered
+ */
+ protected VEXElement rootElement;
+
+ /**
+ * The cached value of the '{@link #getValidator() <em>Validator</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValidator()
+ * @generated
+ * @ordered
+ */
+ protected Validator validator;
+
+ /**
+ * The default value of the '{@link #getPublicID() <em>Public ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublicID()
+ * @generated
+ * @ordered
+ */
+ protected static final String PUBLIC_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPublicID() <em>Public ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPublicID()
+ * @generated
+ * @ordered
+ */
+ protected String publicID = PUBLIC_ID_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXDocumentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_DOCUMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getEncoding() {
+ return encoding;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEncoding(String newEncoding) {
+ String oldEncoding = encoding;
+ encoding = newEncoding;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT__ENCODING, oldEncoding, encoding));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getLength() {
+ return length;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLength(int newLength) {
+ int oldLength = length;
+ length = newLength;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT__LENGTH, oldLength, length));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement getRootElement() {
+ if (rootElement != null && rootElement.eIsProxy()) {
+ InternalEObject oldRootElement = (InternalEObject)rootElement;
+ rootElement = (VEXElement)eResolveProxy(oldRootElement);
+ if (rootElement != oldRootElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_DOCUMENT__ROOT_ELEMENT, oldRootElement, rootElement));
+ }
+ }
+ return rootElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement basicGetRootElement() {
+ return rootElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRootElement(VEXElement newRootElement) {
+ VEXElement oldRootElement = rootElement;
+ rootElement = newRootElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT__ROOT_ELEMENT, oldRootElement, rootElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Validator getValidator() {
+ if (validator != null && validator.eIsProxy()) {
+ InternalEObject oldValidator = (InternalEObject)validator;
+ validator = (Validator)eResolveProxy(oldValidator);
+ if (validator != oldValidator) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_DOCUMENT__VALIDATOR, oldValidator, validator));
+ }
+ }
+ return validator;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Validator basicGetValidator() {
+ return validator;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValidator(Validator newValidator) {
+ Validator oldValidator = validator;
+ validator = newValidator;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT__VALIDATOR, oldValidator, validator));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPublicID() {
+ return publicID;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPublicID(String newPublicID) {
+ String oldPublicID = publicID;
+ publicID = newPublicID;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_DOCUMENT__PUBLIC_ID, oldPublicID, publicID));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canInsertFragment(int offset, VEXDocumentFragment fragment) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canInsertText(int offset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position createPosition(int offset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void delete(int startOffset, int endOffset) throws DocumentValidationException {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement findCommonElement(int offset1, int offset2) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public char getCharacterAt(int offset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement getElementAt(int offset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocumentFragment getFragment(int startOffset, int endOffset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getNodeNames(int startOffset, int endOffset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VEXNode> getNodes(int startOffset, int endOffset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getRawText(int startOffset, int endOffset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getText(int startOffset, int endOffset) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void insertElement(int offset, VEXElement defaults) throws DocumentValidationException {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void insertFragment(int offset, VEXDocumentFragment fragment) throws DocumentValidationException {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void insertText(int offset, String text) throws DocumentValidationException {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT__ENCODING:
+ return getEncoding();
+ case DomEMFPackage.VEX_DOCUMENT__LENGTH:
+ return new Integer(getLength());
+ case DomEMFPackage.VEX_DOCUMENT__ROOT_ELEMENT:
+ if (resolve) return getRootElement();
+ return basicGetRootElement();
+ case DomEMFPackage.VEX_DOCUMENT__VALIDATOR:
+ if (resolve) return getValidator();
+ return basicGetValidator();
+ case DomEMFPackage.VEX_DOCUMENT__PUBLIC_ID:
+ return getPublicID();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT__ENCODING:
+ setEncoding((String)newValue);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__LENGTH:
+ setLength(((Integer)newValue).intValue());
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__ROOT_ELEMENT:
+ setRootElement((VEXElement)newValue);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__VALIDATOR:
+ setValidator((Validator)newValue);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__PUBLIC_ID:
+ setPublicID((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT__ENCODING:
+ setEncoding(ENCODING_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__LENGTH:
+ setLength(LENGTH_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__ROOT_ELEMENT:
+ setRootElement((VEXElement)null);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__VALIDATOR:
+ setValidator((Validator)null);
+ return;
+ case DomEMFPackage.VEX_DOCUMENT__PUBLIC_ID:
+ setPublicID(PUBLIC_ID_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_DOCUMENT__ENCODING:
+ return ENCODING_EDEFAULT == null ? encoding != null : !ENCODING_EDEFAULT.equals(encoding);
+ case DomEMFPackage.VEX_DOCUMENT__LENGTH:
+ return length != LENGTH_EDEFAULT;
+ case DomEMFPackage.VEX_DOCUMENT__ROOT_ELEMENT:
+ return rootElement != null;
+ case DomEMFPackage.VEX_DOCUMENT__VALIDATOR:
+ return validator != null;
+ case DomEMFPackage.VEX_DOCUMENT__PUBLIC_ID:
+ return PUBLIC_ID_EDEFAULT == null ? publicID != null : !PUBLIC_ID_EDEFAULT.equals(publicID);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (encoding: ");
+ result.append(encoding);
+ result.append(", length: ");
+ result.append(length);
+ result.append(", publicID: ");
+ result.append(publicID);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VEXDocumentImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXElementImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXElementImpl.java
new file mode 100644
index 0000000..6e78da4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXElementImpl.java
@@ -0,0 +1,659 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.wst.xml.vex.core.internal.dom.DocumentValidationException;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getAttributeNames <em>Attribute Names</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getChildElements <em>Child Elements</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getChildNodes <em>Child Nodes</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getDocument <em>Document</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#isEmpty <em>Empty</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getNamespacePrefix <em>Namespace Prefix</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXElementImpl#getNamespaceURI <em>Namespace URI</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXElementImpl extends VEXNodeImpl implements VEXElement {
+ /**
+ * The cached value of the '{@link #getAttributeNames() <em>Attribute Names</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributeNames()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> attributeNames;
+
+ /**
+ * The cached value of the '{@link #getChildElements() <em>Child Elements</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getChildElements()
+ * @generated
+ * @ordered
+ */
+ protected EList<VEXElement> childElements;
+
+ /**
+ * The cached value of the '{@link #getChildNodes() <em>Child Nodes</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getChildNodes()
+ * @generated
+ * @ordered
+ */
+ protected EList<VEXNode> childNodes;
+
+ /**
+ * The cached value of the '{@link #getDocument() <em>Document</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocument()
+ * @generated
+ * @ordered
+ */
+ protected VEXDocument document;
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isEmpty() <em>Empty</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isEmpty()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean EMPTY_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isEmpty() <em>Empty</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isEmpty()
+ * @generated
+ * @ordered
+ */
+ protected boolean empty = EMPTY_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParent()
+ * @generated
+ * @ordered
+ */
+ protected VEXElement parent;
+
+ /**
+ * The default value of the '{@link #getNamespacePrefix() <em>Namespace Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespacePrefix()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAMESPACE_PREFIX_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNamespacePrefix() <em>Namespace Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespacePrefix()
+ * @generated
+ * @ordered
+ */
+ protected String namespacePrefix = NAMESPACE_PREFIX_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getNamespaceURI() <em>Namespace URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespaceURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAMESPACE_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNamespaceURI() <em>Namespace URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespaceURI()
+ * @generated
+ * @ordered
+ */
+ protected String namespaceURI = NAMESPACE_URI_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getAttributeNames() {
+ if (attributeNames == null) {
+ attributeNames = new EDataTypeUniqueEList<String>(String.class, this, DomEMFPackage.VEX_ELEMENT__ATTRIBUTE_NAMES);
+ }
+ return attributeNames;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VEXElement> getChildElements() {
+ if (childElements == null) {
+ childElements = new EObjectResolvingEList<VEXElement>(VEXElement.class, this, DomEMFPackage.VEX_ELEMENT__CHILD_ELEMENTS);
+ }
+ return childElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VEXNode> getChildNodes() {
+ if (childNodes == null) {
+ childNodes = new EObjectResolvingEList<VEXNode>(VEXNode.class, this, DomEMFPackage.VEX_ELEMENT__CHILD_NODES);
+ }
+ return childNodes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocument getDocument() {
+ if (document != null && document.eIsProxy()) {
+ InternalEObject oldDocument = (InternalEObject)document;
+ document = (VEXDocument)eResolveProxy(oldDocument);
+ if (document != oldDocument) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_ELEMENT__DOCUMENT, oldDocument, document));
+ }
+ }
+ return document;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocument basicGetDocument() {
+ return document;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocument(VEXDocument newDocument) {
+ VEXDocument oldDocument = document;
+ document = newDocument;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ELEMENT__DOCUMENT, oldDocument, document));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ELEMENT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isEmpty() {
+ return empty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEmpty(boolean newEmpty) {
+ boolean oldEmpty = empty;
+ empty = newEmpty;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ELEMENT__EMPTY, oldEmpty, empty));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement getParent() {
+ if (parent != null && parent.eIsProxy()) {
+ InternalEObject oldParent = (InternalEObject)parent;
+ parent = (VEXElement)eResolveProxy(oldParent);
+ if (parent != oldParent) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_ELEMENT__PARENT, oldParent, parent));
+ }
+ }
+ return parent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElement basicGetParent() {
+ return parent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParent(VEXElement newParent) {
+ VEXElement oldParent = parent;
+ parent = newParent;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ELEMENT__PARENT, oldParent, parent));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getNamespacePrefix() {
+ return namespacePrefix;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNamespacePrefix(String newNamespacePrefix) {
+ String oldNamespacePrefix = namespacePrefix;
+ namespacePrefix = newNamespacePrefix;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ELEMENT__NAMESPACE_PREFIX, oldNamespacePrefix, namespacePrefix));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getNamespaceURI() {
+ return namespaceURI;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNamespaceURI(String newNamespaceURI) {
+ String oldNamespaceURI = namespaceURI;
+ namespaceURI = newNamespaceURI;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_ELEMENT__NAMESPACE_URI, oldNamespaceURI, namespaceURI));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addChild(VEXElement child) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Object clone() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getAttribute(String name) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeAttribute(String name) throws DocumentValidationException {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAttribute(String name, String value) throws DocumentValidationException {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContent(Content content, int offset, int i) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void insertChild(int index, VEXElement child) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setNamespace(String prefix, String namespaceURI) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ELEMENT__ATTRIBUTE_NAMES:
+ return getAttributeNames();
+ case DomEMFPackage.VEX_ELEMENT__CHILD_ELEMENTS:
+ return getChildElements();
+ case DomEMFPackage.VEX_ELEMENT__CHILD_NODES:
+ return getChildNodes();
+ case DomEMFPackage.VEX_ELEMENT__DOCUMENT:
+ if (resolve) return getDocument();
+ return basicGetDocument();
+ case DomEMFPackage.VEX_ELEMENT__NAME:
+ return getName();
+ case DomEMFPackage.VEX_ELEMENT__EMPTY:
+ return isEmpty() ? Boolean.TRUE : Boolean.FALSE;
+ case DomEMFPackage.VEX_ELEMENT__PARENT:
+ if (resolve) return getParent();
+ return basicGetParent();
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_PREFIX:
+ return getNamespacePrefix();
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_URI:
+ return getNamespaceURI();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ELEMENT__ATTRIBUTE_NAMES:
+ getAttributeNames().clear();
+ getAttributeNames().addAll((Collection<? extends String>)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__CHILD_ELEMENTS:
+ getChildElements().clear();
+ getChildElements().addAll((Collection<? extends VEXElement>)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__CHILD_NODES:
+ getChildNodes().clear();
+ getChildNodes().addAll((Collection<? extends VEXNode>)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__DOCUMENT:
+ setDocument((VEXDocument)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__NAME:
+ setName((String)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__EMPTY:
+ setEmpty(((Boolean)newValue).booleanValue());
+ return;
+ case DomEMFPackage.VEX_ELEMENT__PARENT:
+ setParent((VEXElement)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_PREFIX:
+ setNamespacePrefix((String)newValue);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_URI:
+ setNamespaceURI((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ELEMENT__ATTRIBUTE_NAMES:
+ getAttributeNames().clear();
+ return;
+ case DomEMFPackage.VEX_ELEMENT__CHILD_ELEMENTS:
+ getChildElements().clear();
+ return;
+ case DomEMFPackage.VEX_ELEMENT__CHILD_NODES:
+ getChildNodes().clear();
+ return;
+ case DomEMFPackage.VEX_ELEMENT__DOCUMENT:
+ setDocument((VEXDocument)null);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__EMPTY:
+ setEmpty(EMPTY_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__PARENT:
+ setParent((VEXElement)null);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_PREFIX:
+ setNamespacePrefix(NAMESPACE_PREFIX_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_URI:
+ setNamespaceURI(NAMESPACE_URI_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_ELEMENT__ATTRIBUTE_NAMES:
+ return attributeNames != null && !attributeNames.isEmpty();
+ case DomEMFPackage.VEX_ELEMENT__CHILD_ELEMENTS:
+ return childElements != null && !childElements.isEmpty();
+ case DomEMFPackage.VEX_ELEMENT__CHILD_NODES:
+ return childNodes != null && !childNodes.isEmpty();
+ case DomEMFPackage.VEX_ELEMENT__DOCUMENT:
+ return document != null;
+ case DomEMFPackage.VEX_ELEMENT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case DomEMFPackage.VEX_ELEMENT__EMPTY:
+ return empty != EMPTY_EDEFAULT;
+ case DomEMFPackage.VEX_ELEMENT__PARENT:
+ return parent != null;
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_PREFIX:
+ return NAMESPACE_PREFIX_EDEFAULT == null ? namespacePrefix != null : !NAMESPACE_PREFIX_EDEFAULT.equals(namespacePrefix);
+ case DomEMFPackage.VEX_ELEMENT__NAMESPACE_URI:
+ return NAMESPACE_URI_EDEFAULT == null ? namespaceURI != null : !NAMESPACE_URI_EDEFAULT.equals(namespaceURI);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (attributeNames: ");
+ result.append(attributeNames);
+ result.append(", name: ");
+ result.append(name);
+ result.append(", empty: ");
+ result.append(empty);
+ result.append(", namespacePrefix: ");
+ result.append(namespacePrefix);
+ result.append(", namespaceURI: ");
+ result.append(namespaceURI);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VEXElementImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXNodeImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXNodeImpl.java
new file mode 100644
index 0000000..abdc948
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXNodeImpl.java
@@ -0,0 +1,463 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Node</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl#getContent <em>Content</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl#getEndOffset <em>End Offset</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl#getEndPosition <em>End Position</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl#getStartOffset <em>Start Offset</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl#getStartPosition <em>Start Position</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXNodeImpl#getText <em>Text</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXNodeImpl extends EObjectImpl implements VEXNode {
+ /**
+ * The cached value of the '{@link #getContent() <em>Content</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getContent()
+ * @generated
+ * @ordered
+ */
+ protected Content content;
+
+ /**
+ * The default value of the '{@link #getEndOffset() <em>End Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEndOffset()
+ * @generated
+ * @ordered
+ */
+ protected static final int END_OFFSET_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getEndOffset() <em>End Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEndOffset()
+ * @generated
+ * @ordered
+ */
+ protected int endOffset = END_OFFSET_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getEndPosition() <em>End Position</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEndPosition()
+ * @generated
+ * @ordered
+ */
+ protected Position endPosition;
+
+ /**
+ * The default value of the '{@link #getStartOffset() <em>Start Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStartOffset()
+ * @generated
+ * @ordered
+ */
+ protected static final int START_OFFSET_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getStartOffset() <em>Start Offset</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStartOffset()
+ * @generated
+ * @ordered
+ */
+ protected int startOffset = START_OFFSET_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getStartPosition() <em>Start Position</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStartPosition()
+ * @generated
+ * @ordered
+ */
+ protected Position startPosition;
+
+ /**
+ * The default value of the '{@link #getText() <em>Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getText()
+ * @generated
+ * @ordered
+ */
+ protected static final String TEXT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getText() <em>Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getText()
+ * @generated
+ * @ordered
+ */
+ protected String text = TEXT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXNodeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_NODE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Content getContent() {
+ if (content != null && content.eIsProxy()) {
+ InternalEObject oldContent = (InternalEObject)content;
+ content = (Content)eResolveProxy(oldContent);
+ if (content != oldContent) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_NODE__CONTENT, oldContent, content));
+ }
+ }
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Content basicGetContent() {
+ return content;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContent(Content newContent) {
+ Content oldContent = content;
+ content = newContent;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_NODE__CONTENT, oldContent, content));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getEndOffset() {
+ return endOffset;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEndOffset(int newEndOffset) {
+ int oldEndOffset = endOffset;
+ endOffset = newEndOffset;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_NODE__END_OFFSET, oldEndOffset, endOffset));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position getEndPosition() {
+ if (endPosition != null && endPosition.eIsProxy()) {
+ InternalEObject oldEndPosition = (InternalEObject)endPosition;
+ endPosition = (Position)eResolveProxy(oldEndPosition);
+ if (endPosition != oldEndPosition) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_NODE__END_POSITION, oldEndPosition, endPosition));
+ }
+ }
+ return endPosition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position basicGetEndPosition() {
+ return endPosition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEndPosition(Position newEndPosition) {
+ Position oldEndPosition = endPosition;
+ endPosition = newEndPosition;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_NODE__END_POSITION, oldEndPosition, endPosition));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getStartOffset() {
+ return startOffset;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStartOffset(int newStartOffset) {
+ int oldStartOffset = startOffset;
+ startOffset = newStartOffset;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_NODE__START_OFFSET, oldStartOffset, startOffset));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position getStartPosition() {
+ if (startPosition != null && startPosition.eIsProxy()) {
+ InternalEObject oldStartPosition = (InternalEObject)startPosition;
+ startPosition = (Position)eResolveProxy(oldStartPosition);
+ if (startPosition != oldStartPosition) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomEMFPackage.VEX_NODE__START_POSITION, oldStartPosition, startPosition));
+ }
+ }
+ return startPosition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Position basicGetStartPosition() {
+ return startPosition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStartPosition(Position newStartPosition) {
+ Position oldStartPosition = startPosition;
+ startPosition = newStartPosition;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_NODE__START_POSITION, oldStartPosition, startPosition));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getText() {
+ return text;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setText(String newText) {
+ String oldText = text;
+ text = newText;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VEX_NODE__TEXT, oldText, text));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_NODE__CONTENT:
+ if (resolve) return getContent();
+ return basicGetContent();
+ case DomEMFPackage.VEX_NODE__END_OFFSET:
+ return new Integer(getEndOffset());
+ case DomEMFPackage.VEX_NODE__END_POSITION:
+ if (resolve) return getEndPosition();
+ return basicGetEndPosition();
+ case DomEMFPackage.VEX_NODE__START_OFFSET:
+ return new Integer(getStartOffset());
+ case DomEMFPackage.VEX_NODE__START_POSITION:
+ if (resolve) return getStartPosition();
+ return basicGetStartPosition();
+ case DomEMFPackage.VEX_NODE__TEXT:
+ return getText();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_NODE__CONTENT:
+ setContent((Content)newValue);
+ return;
+ case DomEMFPackage.VEX_NODE__END_OFFSET:
+ setEndOffset(((Integer)newValue).intValue());
+ return;
+ case DomEMFPackage.VEX_NODE__END_POSITION:
+ setEndPosition((Position)newValue);
+ return;
+ case DomEMFPackage.VEX_NODE__START_OFFSET:
+ setStartOffset(((Integer)newValue).intValue());
+ return;
+ case DomEMFPackage.VEX_NODE__START_POSITION:
+ setStartPosition((Position)newValue);
+ return;
+ case DomEMFPackage.VEX_NODE__TEXT:
+ setText((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_NODE__CONTENT:
+ setContent((Content)null);
+ return;
+ case DomEMFPackage.VEX_NODE__END_OFFSET:
+ setEndOffset(END_OFFSET_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_NODE__END_POSITION:
+ setEndPosition((Position)null);
+ return;
+ case DomEMFPackage.VEX_NODE__START_OFFSET:
+ setStartOffset(START_OFFSET_EDEFAULT);
+ return;
+ case DomEMFPackage.VEX_NODE__START_POSITION:
+ setStartPosition((Position)null);
+ return;
+ case DomEMFPackage.VEX_NODE__TEXT:
+ setText(TEXT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_NODE__CONTENT:
+ return content != null;
+ case DomEMFPackage.VEX_NODE__END_OFFSET:
+ return endOffset != END_OFFSET_EDEFAULT;
+ case DomEMFPackage.VEX_NODE__END_POSITION:
+ return endPosition != null;
+ case DomEMFPackage.VEX_NODE__START_OFFSET:
+ return startOffset != START_OFFSET_EDEFAULT;
+ case DomEMFPackage.VEX_NODE__START_POSITION:
+ return startPosition != null;
+ case DomEMFPackage.VEX_NODE__TEXT:
+ return TEXT_EDEFAULT == null ? text != null : !TEXT_EDEFAULT.equals(text);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (endOffset: ");
+ result.append(endOffset);
+ result.append(", startOffset: ");
+ result.append(startOffset);
+ result.append(", text: ");
+ result.append(text);
+ result.append(')');
+ return result.toString();
+ }
+
+} //VEXNodeImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXProcessingInstructionImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXProcessingInstructionImpl.java
new file mode 100644
index 0000000..63ea703
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/VEXProcessingInstructionImpl.java
@@ -0,0 +1,163 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>VEX Processing Instruction</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.VEXProcessingInstructionImpl#getAttributes <em>Attributes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class VEXProcessingInstructionImpl extends VEXNodeImpl implements VEXProcessingInstruction {
+ /**
+ * The cached value of the '{@link #getAttributes() <em>Attributes</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributes()
+ * @generated
+ * @ordered
+ */
+ protected EList<VEXAttribute> attributes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXProcessingInstructionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VEX_PROCESSING_INSTRUCTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<VEXAttribute> getAttributes() {
+ if (attributes == null) {
+ attributes = new EObjectResolvingEList<VEXAttribute>(VEXAttribute.class, this, DomEMFPackage.VEX_PROCESSING_INSTRUCTION__ATTRIBUTES);
+ }
+ return attributes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean removeAttribute(String attributeName) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAttribute(String attributeName, String value) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_PROCESSING_INSTRUCTION__ATTRIBUTES:
+ return getAttributes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_PROCESSING_INSTRUCTION__ATTRIBUTES:
+ getAttributes().clear();
+ getAttributes().addAll((Collection<? extends VEXAttribute>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_PROCESSING_INSTRUCTION__ATTRIBUTES:
+ getAttributes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VEX_PROCESSING_INSTRUCTION__ATTRIBUTES:
+ return attributes != null && !attributes.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //VEXProcessingInstructionImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/ValidatorImpl.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/ValidatorImpl.java
new file mode 100644
index 0000000..2dad9ec
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/impl/ValidatorImpl.java
@@ -0,0 +1,223 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl;
+
+import java.util.Set;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator;
+
+import org.eclipse.wst.xml.vex.core.internal.validator.AttributeDefinition;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Validator</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.impl.ValidatorImpl#getValidRootElements <em>Valid Root Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ValidatorImpl extends EObjectImpl implements Validator {
+ /**
+ * The cached value of the '{@link #getValidRootElements() <em>Valid Root Elements</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValidRootElements()
+ * @generated
+ * @ordered
+ */
+ protected Set validRootElements;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ValidatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomEMFPackage.Literals.VALIDATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Set getValidRootElements() {
+ return validRootElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValidRootElements(Set newValidRootElements) {
+ Set oldValidRootElements = validRootElements;
+ validRootElements = newValidRootElements;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomEMFPackage.VALIDATOR__VALID_ROOT_ELEMENTS, oldValidRootElements, validRootElements));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AttributeDefinition getAttributeDefinition(String element, String attribute) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AttributeDefinition> getAttributeDefinitions(String element) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Set<String> getValidItems(String element) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isValidSequence(String element, EList<String> nodes, boolean partial) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isValidSequence(String element, EList<String> seq1, EList<String> seq2, EList<String> seq3, boolean partial) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DomEMFPackage.VALIDATOR__VALID_ROOT_ELEMENTS:
+ return getValidRootElements();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DomEMFPackage.VALIDATOR__VALID_ROOT_ELEMENTS:
+ setValidRootElements((Set)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VALIDATOR__VALID_ROOT_ELEMENTS:
+ setValidRootElements((Set)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DomEMFPackage.VALIDATOR__VALID_ROOT_ELEMENTS:
+ return validRootElements != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (validRootElements: ");
+ result.append(validRootElements);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ValidatorImpl
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/util/DomEMFAdapterFactory.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/util/DomEMFAdapterFactory.java
new file mode 100644
index 0000000..ce78fae
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/util/DomEMFAdapterFactory.java
@@ -0,0 +1,312 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.util;
+
+import java.io.Serializable;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage
+ * @generated
+ */
+public class DomEMFAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DomEMFPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DomEMFAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DomEMFPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DomEMFSwitch<Adapter> modelSwitch =
+ new DomEMFSwitch<Adapter>() {
+ @Override
+ public Adapter caseContent(Content object) {
+ return createContentAdapter();
+ }
+ @Override
+ public Adapter casePosition(Position object) {
+ return createPositionAdapter();
+ }
+ @Override
+ public Adapter caseVEXAttribute(VEXAttribute object) {
+ return createVEXAttributeAdapter();
+ }
+ @Override
+ public Adapter caseVEXComment(VEXComment object) {
+ return createVEXCommentAdapter();
+ }
+ @Override
+ public Adapter caseVEXDocument(VEXDocument object) {
+ return createVEXDocumentAdapter();
+ }
+ @Override
+ public Adapter caseVEXDocumentFragment(VEXDocumentFragment object) {
+ return createVEXDocumentFragmentAdapter();
+ }
+ @Override
+ public Adapter caseVEXElement(VEXElement object) {
+ return createVEXElementAdapter();
+ }
+ @Override
+ public Adapter caseVEXNode(VEXNode object) {
+ return createVEXNodeAdapter();
+ }
+ @Override
+ public Adapter caseVEXProcessingInstruction(VEXProcessingInstruction object) {
+ return createVEXProcessingInstructionAdapter();
+ }
+ @Override
+ public Adapter caseValidator(Validator object) {
+ return createValidatorAdapter();
+ }
+ @Override
+ public Adapter caseSerializable(Serializable object) {
+ return createSerializableAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content <em>Content</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content
+ * @generated
+ */
+ public Adapter createContentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position <em>Position</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position
+ * @generated
+ */
+ public Adapter createPositionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute <em>VEX Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute
+ * @generated
+ */
+ public Adapter createVEXAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment <em>VEX Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment
+ * @generated
+ */
+ public Adapter createVEXCommentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument <em>VEX Document</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument
+ * @generated
+ */
+ public Adapter createVEXDocumentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment <em>VEX Document Fragment</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment
+ * @generated
+ */
+ public Adapter createVEXDocumentFragmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement <em>VEX Element</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement
+ * @generated
+ */
+ public Adapter createVEXElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode <em>VEX Node</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode
+ * @generated
+ */
+ public Adapter createVEXNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction <em>VEX Processing Instruction</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction
+ * @generated
+ */
+ public Adapter createVEXProcessingInstructionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator <em>Validator</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator
+ * @generated
+ */
+ public Adapter createValidatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link java.io.Serializable <em>Serializable</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see java.io.Serializable
+ * @generated
+ */
+ public Adapter createSerializableAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //DomEMFAdapterFactory
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/util/DomEMFSwitch.java b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/util/DomEMFSwitch.java
new file mode 100644
index 0000000..d0af1c4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.core/src-emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/util/DomEMFSwitch.java
@@ -0,0 +1,347 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.util;
+
+import java.io.Serializable;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage
+ * @generated
+ */
+public class DomEMFSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DomEMFPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DomEMFSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DomEMFPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case DomEMFPackage.CONTENT: {
+ Content content = (Content)theEObject;
+ T result = caseContent(content);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.POSITION: {
+ Position position = (Position)theEObject;
+ T result = casePosition(position);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_ATTRIBUTE: {
+ VEXAttribute vexAttribute = (VEXAttribute)theEObject;
+ T result = caseVEXAttribute(vexAttribute);
+ if (result == null) result = caseVEXNode(vexAttribute);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_COMMENT: {
+ VEXComment vexComment = (VEXComment)theEObject;
+ T result = caseVEXComment(vexComment);
+ if (result == null) result = caseVEXNode(vexComment);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_DOCUMENT: {
+ VEXDocument vexDocument = (VEXDocument)theEObject;
+ T result = caseVEXDocument(vexDocument);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_DOCUMENT_FRAGMENT: {
+ VEXDocumentFragment vexDocumentFragment = (VEXDocumentFragment)theEObject;
+ T result = caseVEXDocumentFragment(vexDocumentFragment);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_ELEMENT: {
+ VEXElement vexElement = (VEXElement)theEObject;
+ T result = caseVEXElement(vexElement);
+ if (result == null) result = caseVEXNode(vexElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_NODE: {
+ VEXNode vexNode = (VEXNode)theEObject;
+ T result = caseVEXNode(vexNode);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VEX_PROCESSING_INSTRUCTION: {
+ VEXProcessingInstruction vexProcessingInstruction = (VEXProcessingInstruction)theEObject;
+ T result = caseVEXProcessingInstruction(vexProcessingInstruction);
+ if (result == null) result = caseVEXNode(vexProcessingInstruction);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DomEMFPackage.VALIDATOR: {
+ Validator validator = (Validator)theEObject;
+ T result = caseValidator(validator);
+ if (result == null) result = caseSerializable(validator);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Content</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Content</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContent(Content object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Position</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Position</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePosition(Position object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Attribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXAttribute(VEXAttribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Comment</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Comment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXComment(VEXComment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Document</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Document</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXDocument(VEXDocument object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Document Fragment</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Document Fragment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXDocumentFragment(VEXDocumentFragment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Element</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXElement(VEXElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Node</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXNode(VEXNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>VEX Processing Instruction</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>VEX Processing Instruction</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVEXProcessingInstruction(VEXProcessingInstruction object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Validator</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Validator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseValidator(Validator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Serializable</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Serializable</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSerializable(Serializable object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //DomEMFSwitch
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/.classpath b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/.classpath
index 64c5e31..c135c9c 100644
--- a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/.classpath
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/.classpath
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
+ <classpathentry kind="src" path="src_emf"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/META-INF/MANIFEST.MF b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/META-INF/MANIFEST.MF
index 5d73c1a..67a5ec1 100644
--- a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/META-INF/MANIFEST.MF
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/META-INF/MANIFEST.MF
@@ -1,20 +1,23 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: VEX Core Tests
-Bundle-SymbolicName: org.eclipse.wst.xml.vex.core.tests
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.wst.xml.vex.core.tests;singleton:=true
Bundle-Version: 0.5.0.qualifier
Bundle-Activator: org.eclipse.wst.xml.vex.core.tests.VEXCoreTestPlugin
-Bundle-Vendor: Eclipse.org
+Bundle-Vendor: %providerName
Require-Bundle: org.apache.xerces;bundle-version="2.9.0";visibility:=reexport,
org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.wst.xml.vex.core;bundle-version="0.5.0",
org.junit;bundle-version="3.8.1",
org.eclipse.core.resources;bundle-version="[3.4.100,4.0.0)",
- org.w3c.css.sac;bundle-version="[1.3.0,2.0.0)"
+ org.w3c.css.sac;bundle-version="[1.3.0,2.0.0)",
+ org.eclipse.emf.ecore;bundle-version="2.4.1",
+ org.eclipse.emf.ecore.xmi;bundle-version="2.4.1"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.wst.xml.vex.core.internal.css;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.dom;x-internal:=true,
org.eclipse.wst.xml.vex.core.internal.layout;x-internal:=true,
+ org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;x-internal:=true,
org.eclipse.wst.xml.vex.core.tests
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/build.properties b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/build.properties
index 577b7ce..4662209 100644
--- a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/build.properties
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/build.properties
@@ -1,6 +1,8 @@
-source.. = src/
+source.. = src/,\
+ src_emf/
output.. = bin/
bin.includes = META-INF/,\
.,\
projectFiles/,\
- bin/
+ bin/,\
+ plugin.properties
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/plugin.properties b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/plugin.properties
new file mode 100644
index 0000000..0a347eb
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/plugin.properties
@@ -0,0 +1,2 @@
+pluginName = VEX Core Tests
+providerName = Eclipse.org
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/ContentTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/ContentTest.java
new file mode 100644
index 0000000..48b6b38
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/ContentTest.java
@@ -0,0 +1,159 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.TestCase;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>Content</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following operations are tested:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#createPosition(int) <em>Create Position</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#insertString(int, java.lang.String) <em>Insert String</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#remove(int, int) <em>Remove</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getString(int, int) <em>Get String</em>}</li>
+ * </ul>
+ * </p>
+ * @generated
+ */
+public class ContentTest extends TestCase {
+
+ /**
+ * The fixture for this Content test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Content fixture = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(ContentTest.class);
+ }
+
+ /**
+ * Constructs a new Content test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ContentTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this Content test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(Content fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this Content test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Content getFixture() {
+ return fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createContent());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#createPosition(int) <em>Create Position</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#createPosition(int)
+ * @generated
+ */
+ public void testCreatePosition__int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#insertString(int, java.lang.String) <em>Insert String</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#insertString(int, java.lang.String)
+ * @generated
+ */
+ public void testInsertString__int_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#remove(int, int) <em>Remove</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#remove(int, int)
+ * @generated
+ */
+ public void testRemove__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getString(int, int) <em>Get String</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content#getString(int, int)
+ * @generated
+ */
+ public void testGetString__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+} //ContentTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/DomEMFExample.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/DomEMFExample.java
new file mode 100644
index 0000000..a60e436
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/DomEMFExample.java
@@ -0,0 +1,130 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+
+import org.eclipse.emf.ecore.util.Diagnostician;
+
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFPackage;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content;
+
+/**
+ * <!-- begin-user-doc -->
+ * A sample utility for the '<em><b>dom</b></em>' package.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DomEMFExample {
+ /**
+ * <!-- begin-user-doc -->
+ * Load all the argument file paths or URIs as instances of the model.
+ * <!-- end-user-doc -->
+ * @param args the file paths or URIs.
+ * @generated
+ */
+ public static void main(String[] args) {
+ // Create a resource set to hold the resources.
+ //
+ ResourceSet resourceSet = new ResourceSetImpl();
+
+ // Register the appropriate resource factory to handle all file extensions.
+ //
+ resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put
+ (Resource.Factory.Registry.DEFAULT_EXTENSION,
+ new XMIResourceFactoryImpl());
+
+ // Register the package to ensure it is available during loading.
+ //
+ resourceSet.getPackageRegistry().put
+ (DomEMFPackage.eNS_URI,
+ DomEMFPackage.eINSTANCE);
+
+ // If there are no arguments, emit an appropriate usage message.
+ //
+ if (args.length == 0) {
+ System.out.println("Enter a list of file paths or URIs that have content like this:");
+ try {
+ Resource resource = resourceSet.createResource(URI.createURI("http:///My.domemf"));
+ Content root = DomEMFFactory.eINSTANCE.createContent();
+ resource.getContents().add(root);
+ resource.save(System.out, null);
+ }
+ catch (IOException exception) {
+ exception.printStackTrace();
+ }
+ }
+ else {
+ // Iterate over all the arguments.
+ //
+ for (int i = 0; i < args.length; ++i) {
+ // Construct the URI for the instance file.
+ // The argument is treated as a file path only if it denotes an existing file.
+ // Otherwise, it's directly treated as a URL.
+ //
+ File file = new File(args[i]);
+ URI uri = file.isFile() ? URI.createFileURI(file.getAbsolutePath()): URI.createURI(args[0]);
+
+ try {
+ // Demand load resource for this file.
+ //
+ Resource resource = resourceSet.getResource(uri, true);
+ System.out.println("Loaded " + uri);
+
+ // Validate the contents of the loaded resource.
+ //
+ for (EObject eObject : resource.getContents()) {
+ Diagnostic diagnostic = Diagnostician.INSTANCE.validate(eObject);
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ printDiagnostic(diagnostic, "");
+ }
+ }
+ }
+ catch (RuntimeException exception) {
+ System.out.println("Problem loading " + uri);
+ exception.printStackTrace();
+ }
+ }
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * Prints diagnostics with indentation.
+ * <!-- end-user-doc -->
+ * @param diagnostic the diagnostic to print.
+ * @param indent the indentation for printing.
+ * @generated
+ */
+ protected static void printDiagnostic(Diagnostic diagnostic, String indent) {
+ System.out.print(indent);
+ System.out.println(diagnostic.getMessage());
+ for (Diagnostic child : diagnostic.getChildren()) {
+ printDiagnostic(child, indent + " ");
+ }
+ }
+
+} //DomEMFExample
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/DomEMFTests.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/DomEMFTests.java
new file mode 100644
index 0000000..5d73f78
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/DomEMFTests.java
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ *Copyright (c) 2008 Standards for Technology in Automotive Retail and others.
+ *All rights reserved. This program and the accompanying materials
+ *are made available under the terms of the Eclipse Public License v1.0
+ *which accompanies this distribution, and is available at
+ *http://www.eclipse.org/legal/epl-v10.html
+ *
+ *Contributors:
+ * David Carver (STAR) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import junit.textui.TestRunner;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test suite for the '<em><b>dom</b></em>' package.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DomEMFTests extends TestSuite {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(suite());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Test suite() {
+ TestSuite suite = new DomEMFTests("dom Tests");
+ suite.addTestSuite(ContentTest.class);
+ suite.addTestSuite(VEXAttributeTest.class);
+ suite.addTestSuite(VEXDocumentTest.class);
+ suite.addTestSuite(VEXElementTest.class);
+ suite.addTestSuite(VEXProcessingInstructionTest.class);
+ suite.addTestSuite(ValidatorTest.class);
+ return suite;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DomEMFTests(String name) {
+ super(name);
+ }
+
+} //DomEMFTests
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/PositionTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/PositionTest.java
new file mode 100644
index 0000000..5f747b9
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/PositionTest.java
@@ -0,0 +1,88 @@
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.TestCase;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Position;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>Position</b></em>'.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PositionTest extends TestCase {
+
+ /**
+ * The fixture for this Position test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Position fixture = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(PositionTest.class);
+ }
+
+ /**
+ * Constructs a new Position test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PositionTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this Position test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(Position fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this Position test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Position getFixture() {
+ return fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createPosition());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+} //PositionTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/SerializableTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/SerializableTest.java
new file mode 100644
index 0000000..419397a
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/SerializableTest.java
@@ -0,0 +1,59 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: SerializableTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import java.io.Serializable;
+
+import junit.framework.TestCase;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>Serializable</b></em>'.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public abstract class SerializableTest extends TestCase {
+
+ /**
+ * The fixture for this Serializable test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Serializable fixture = null;
+
+ /**
+ * Constructs a new Serializable test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializableTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this Serializable test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(Serializable fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this Serializable test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Serializable getFixture() {
+ return fixture;
+ }
+
+} //SerializableTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXAttributeTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXAttributeTest.java
new file mode 100644
index 0000000..02cee34
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXAttributeTest.java
@@ -0,0 +1,94 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXAttributeTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following operations are tested:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#setNamespace(java.lang.String, java.lang.String) <em>Set Namespace</em>}</li>
+ * </ul>
+ * </p>
+ * @generated
+ */
+public class VEXAttributeTest extends VEXNodeTest {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXAttributeTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Attribute test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXAttributeTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Returns the fixture for this VEX Attribute test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected VEXAttribute getFixture() {
+ return (VEXAttribute)fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXAttribute());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#setNamespace(java.lang.String, java.lang.String) <em>Set Namespace</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXAttribute#setNamespace(java.lang.String, java.lang.String)
+ * @generated
+ */
+ public void testSetNamespace__String_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+} //VEXAttributeTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXCommentTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXCommentTest.java
new file mode 100644
index 0000000..8a5834a
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXCommentTest.java
@@ -0,0 +1,75 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXCommentTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXComment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Comment</b></em>'.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class VEXCommentTest extends VEXNodeTest {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXCommentTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Comment test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXCommentTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Returns the fixture for this VEX Comment test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected VEXComment getFixture() {
+ return (VEXComment)fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXComment());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+} //VEXCommentTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXDocumentFragmentTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXDocumentFragmentTest.java
new file mode 100644
index 0000000..a277eb3
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXDocumentFragmentTest.java
@@ -0,0 +1,94 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXDocumentFragmentTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.TestCase;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Document Fragment</b></em>'.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class VEXDocumentFragmentTest extends TestCase {
+
+ /**
+ * The fixture for this VEX Document Fragment test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXDocumentFragment fixture = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXDocumentFragmentTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Document Fragment test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocumentFragmentTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this VEX Document Fragment test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(VEXDocumentFragment fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this VEX Document Fragment test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXDocumentFragment getFixture() {
+ return fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXDocumentFragment());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+} //VEXDocumentFragmentTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXDocumentTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXDocumentTest.java
new file mode 100644
index 0000000..a7699a5
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXDocumentTest.java
@@ -0,0 +1,309 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXDocumentTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.TestCase;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Document</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following operations are tested:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#canInsertFragment(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment) <em>Can Insert Fragment</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#canInsertText(int) <em>Can Insert Text</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#createPosition(int) <em>Create Position</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#delete(int, int) <em>Delete</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#findCommonElement(int, int) <em>Find Common Element</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getCharacterAt(int) <em>Get Character At</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getElementAt(int) <em>Get Element At</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getFragment(int, int) <em>Get Fragment</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getNodeNames(int, int) <em>Get Node Names</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getNodes(int, int) <em>Get Nodes</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRawText(int, int) <em>Get Raw Text</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getText(int, int) <em>Get Text</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertElement(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement) <em>Insert Element</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertFragment(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment) <em>Insert Fragment</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertText(int, java.lang.String) <em>Insert Text</em>}</li>
+ * </ul>
+ * </p>
+ * @generated
+ */
+public class VEXDocumentTest extends TestCase {
+
+ /**
+ * The fixture for this VEX Document test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXDocument fixture = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXDocumentTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Document test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXDocumentTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this VEX Document test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(VEXDocument fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this VEX Document test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXDocument getFixture() {
+ return fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXDocument());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#canInsertFragment(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment) <em>Can Insert Fragment</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#canInsertFragment(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment)
+ * @generated
+ */
+ public void testCanInsertFragment__int_VEXDocumentFragment() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#canInsertText(int) <em>Can Insert Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#canInsertText(int)
+ * @generated
+ */
+ public void testCanInsertText__int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#createPosition(int) <em>Create Position</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#createPosition(int)
+ * @generated
+ */
+ public void testCreatePosition__int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#delete(int, int) <em>Delete</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#delete(int, int)
+ * @generated
+ */
+ public void testDelete__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#findCommonElement(int, int) <em>Find Common Element</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#findCommonElement(int, int)
+ * @generated
+ */
+ public void testFindCommonElement__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getCharacterAt(int) <em>Get Character At</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getCharacterAt(int)
+ * @generated
+ */
+ public void testGetCharacterAt__int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getElementAt(int) <em>Get Element At</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getElementAt(int)
+ * @generated
+ */
+ public void testGetElementAt__int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getFragment(int, int) <em>Get Fragment</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getFragment(int, int)
+ * @generated
+ */
+ public void testGetFragment__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getNodeNames(int, int) <em>Get Node Names</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getNodeNames(int, int)
+ * @generated
+ */
+ public void testGetNodeNames__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getNodes(int, int) <em>Get Nodes</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getNodes(int, int)
+ * @generated
+ */
+ public void testGetNodes__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRawText(int, int) <em>Get Raw Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getRawText(int, int)
+ * @generated
+ */
+ public void testGetRawText__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getText(int, int) <em>Get Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#getText(int, int)
+ * @generated
+ */
+ public void testGetText__int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertElement(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement) <em>Insert Element</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertElement(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement)
+ * @generated
+ */
+ public void testInsertElement__int_VEXElement() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertFragment(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment) <em>Insert Fragment</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertFragment(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocumentFragment)
+ * @generated
+ */
+ public void testInsertFragment__int_VEXDocumentFragment() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertText(int, java.lang.String) <em>Insert Text</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXDocument#insertText(int, java.lang.String)
+ * @generated
+ */
+ public void testInsertText__int_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+} //VEXDocumentTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXElementTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXElementTest.java
new file mode 100644
index 0000000..8292b0a
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXElementTest.java
@@ -0,0 +1,192 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXElementTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following operations are tested:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#addChild(org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement) <em>Add Child</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#clone() <em>Clone</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getAttribute(java.lang.String) <em>Get Attribute</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#removeAttribute(java.lang.String) <em>Remove Attribute</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setAttribute(java.lang.String, java.lang.String) <em>Set Attribute</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setContent(org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content, int, int) <em>Set Content</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#insertChild(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement) <em>Insert Child</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setNamespace(java.lang.String, java.lang.String) <em>Set Namespace</em>}</li>
+ * </ul>
+ * </p>
+ * @generated
+ */
+public class VEXElementTest extends VEXNodeTest {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXElementTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Element test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXElementTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Returns the fixture for this VEX Element test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected VEXElement getFixture() {
+ return (VEXElement)fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXElement());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#addChild(org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement) <em>Add Child</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#addChild(org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement)
+ * @generated
+ */
+ public void testAddChild__VEXElement() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#clone() <em>Clone</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#clone()
+ * @generated
+ */
+ public void testClone() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getAttribute(java.lang.String) <em>Get Attribute</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#getAttribute(java.lang.String)
+ * @generated
+ */
+ public void testGetAttribute__String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#removeAttribute(java.lang.String) <em>Remove Attribute</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#removeAttribute(java.lang.String)
+ * @generated
+ */
+ public void testRemoveAttribute__String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setAttribute(java.lang.String, java.lang.String) <em>Set Attribute</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setAttribute(java.lang.String, java.lang.String)
+ * @generated
+ */
+ public void testSetAttribute__String_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setContent(org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content, int, int) <em>Set Content</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setContent(org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Content, int, int)
+ * @generated
+ */
+ public void testSetContent__Content_int_int() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#insertChild(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement) <em>Insert Child</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#insertChild(int, org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement)
+ * @generated
+ */
+ public void testInsertChild__int_VEXElement() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setNamespace(java.lang.String, java.lang.String) <em>Set Namespace</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXElement#setNamespace(java.lang.String, java.lang.String)
+ * @generated
+ */
+ public void testSetNamespace__String_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+} //VEXElementTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXNodeTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXNodeTest.java
new file mode 100644
index 0000000..6c3a25f
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXNodeTest.java
@@ -0,0 +1,94 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXNodeTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.TestCase;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Node</b></em>'.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class VEXNodeTest extends TestCase {
+
+ /**
+ * The fixture for this VEX Node test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXNode fixture = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXNodeTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Node test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXNodeTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this VEX Node test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(VEXNode fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this VEX Node test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VEXNode getFixture() {
+ return fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXNode());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+} //VEXNodeTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXProcessingInstructionTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXProcessingInstructionTest.java
new file mode 100644
index 0000000..a004dd6
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VEXProcessingInstructionTest.java
@@ -0,0 +1,108 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VEXProcessingInstructionTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>VEX Processing Instruction</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following operations are tested:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#removeAttribute(java.lang.String) <em>Remove Attribute</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#setAttribute(java.lang.String, java.lang.String) <em>Set Attribute</em>}</li>
+ * </ul>
+ * </p>
+ * @generated
+ */
+public class VEXProcessingInstructionTest extends VEXNodeTest {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(VEXProcessingInstructionTest.class);
+ }
+
+ /**
+ * Constructs a new VEX Processing Instruction test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VEXProcessingInstructionTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Returns the fixture for this VEX Processing Instruction test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected VEXProcessingInstruction getFixture() {
+ return (VEXProcessingInstruction)fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createVEXProcessingInstruction());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#removeAttribute(java.lang.String) <em>Remove Attribute</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#removeAttribute(java.lang.String)
+ * @generated
+ */
+ public void testRemoveAttribute__String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#setAttribute(java.lang.String, java.lang.String) <em>Set Attribute</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.VEXProcessingInstruction#setAttribute(java.lang.String, java.lang.String)
+ * @generated
+ */
+ public void testSetAttribute__String_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+} //VEXProcessingInstructionTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/ValidatorTest.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/ValidatorTest.java
new file mode 100644
index 0000000..bfe30ca
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/ValidatorTest.java
@@ -0,0 +1,168 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: ValidatorTest.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.TestCase;
+
+import junit.textui.TestRunner;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.DomEMFFactory;
+
+import org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test case for the model object '<em><b>Validator</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following operations are tested:
+ * <ul>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getAttributeDefinition(java.lang.String, java.lang.String) <em>Get Attribute Definition</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getAttributeDefinitions(java.lang.String) <em>Get Attribute Definitions</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidItems(java.lang.String) <em>Get Valid Items</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#isValidSequence(java.lang.String, org.eclipse.emf.common.util.EList, boolean) <em>Is Valid Sequence</em>}</li>
+ * <li>{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#isValidSequence(java.lang.String, org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList, boolean) <em>Is Valid Sequence</em>}</li>
+ * </ul>
+ * </p>
+ * @generated
+ */
+public class ValidatorTest extends TestCase {
+
+ /**
+ * The fixture for this Validator test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Validator fixture = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(ValidatorTest.class);
+ }
+
+ /**
+ * Constructs a new Validator test case with the given name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValidatorTest(String name) {
+ super(name);
+ }
+
+ /**
+ * Sets the fixture for this Validator test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void setFixture(Validator fixture) {
+ this.fixture = fixture;
+ }
+
+ /**
+ * Returns the fixture for this Validator test case.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Validator getFixture() {
+ return fixture;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#setUp()
+ * @generated
+ */
+ @Override
+ protected void setUp() throws Exception {
+ setFixture(DomEMFFactory.eINSTANCE.createValidator());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see junit.framework.TestCase#tearDown()
+ * @generated
+ */
+ @Override
+ protected void tearDown() throws Exception {
+ setFixture(null);
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getAttributeDefinition(java.lang.String, java.lang.String) <em>Get Attribute Definition</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getAttributeDefinition(java.lang.String, java.lang.String)
+ * @generated
+ */
+ public void testGetAttributeDefinition__String_String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ *
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void testGetAttributeDefinitions__String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidItems(java.lang.String) <em>Get Valid Items</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#getValidItems(java.lang.String)
+ * @generated
+ */
+ public void testGetValidItems__String() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#isValidSequence(java.lang.String, org.eclipse.emf.common.util.EList, boolean) <em>Is Valid Sequence</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#isValidSequence(java.lang.String, org.eclipse.emf.common.util.EList, boolean)
+ * @generated
+ */
+ public void testIsValidSequence__String_EList_boolean() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+ /**
+ * Tests the '{@link org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#isValidSequence(java.lang.String, org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList, boolean) <em>Is Valid Sequence</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.wst.xml.vex.core.internal.provisional.dom.I.Validator#isValidSequence(java.lang.String, org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList, org.eclipse.emf.common.util.EList, boolean)
+ * @generated
+ */
+ public void testIsValidSequence__String_EList_EList_EList_boolean() {
+ // TODO: implement this operation test method
+ // Ensure that you remove @generated or mark it @generated NOT
+ fail();
+ }
+
+} //ValidatorTest
diff --git a/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VexdocumentAllTests.java b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VexdocumentAllTests.java
new file mode 100644
index 0000000..2d34857
--- /dev/null
+++ b/sourceediting/tests/org.eclipse.wst.xml.vex.core.tests/src_emf/org/eclipse/wst/xml/vex/core/internal/provisional/dom/tests/VexdocumentAllTests.java
@@ -0,0 +1,51 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: VexdocumentAllTests.java,v 1.1 2008/11/10 20:09:46 dacarver Exp $
+ */
+package org.eclipse.wst.xml.vex.core.internal.provisional.dom.tests;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import junit.textui.TestRunner;
+
+/**
+ * <!-- begin-user-doc -->
+ * A test suite for the '<em><b>Vexdocument</b></em>' model.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class VexdocumentAllTests extends TestSuite {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static void main(String[] args) {
+ TestRunner.run(suite());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Test suite() {
+ TestSuite suite = new VexdocumentAllTests("Vexdocument Tests");
+ suite.addTest(DomEMFTests.suite());
+ return suite;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public VexdocumentAllTests(String name) {
+ super(name);
+ }
+
+} //VexdocumentAllTests