diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.classpath b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.classpath
new file mode 100644
index 0000000..ddf0f40
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.classpath
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.cvsignore b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.cvsignore
new file mode 100644
index 0000000..ba077a4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.cvsignore
@@ -0,0 +1 @@
+bin
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.project b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.project
new file mode 100644
index 0000000..6e6dfca
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.wst.xml.vex.dita</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.settings/org.eclipse.jdt.core.prefs b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3e83e77
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+#Sun Jul 15 01:10:48 CEST 2007
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.4
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
+org.eclipse.jdt.core.compiler.source=1.3
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/META-INF/MANIFEST.MF b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..e1fa840
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %plugin.name
+Bundle-Version: 0.5.0.qualifier
+Bundle-Vendor: %providerName
+Bundle-SymbolicName: org.eclipse.wst.xml.vex.dita;singleton:=true
+Require-Bundle: org.eclipse.wst.xml.vex.core;bundle-version="[0.5.0,1.0.0)",
+ org.eclipse.wst.xml.vex.ui;bundle-version="[0.5.0,1.0.0)"
+Bundle-Localization: plugin
+
+
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/build.properties b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/build.properties
new file mode 100644
index 0000000..082b3df
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/build.properties
@@ -0,0 +1,6 @@
+bin.includes = plugin.xml,\
+               dita132/,\
+               plugin.properties,\
+               META-INF/,\
+               css/,\
+               dita11/
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/common.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/common.css
new file mode 100644
index 0000000..c1e45ad
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/common.css
@@ -0,0 +1,183 @@
+/*--  Common.css 1.0; 17 May 2001
+ | Copyright IBM Corporation, 2001
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers.
+ */
+
+
+/* class definitions */
+
+.unresolved	{ background-color: skyblue;
+		}
+
+.noTemplate	{ background-color: yellow;
+		}
+
+.sidebar     {background: silver
+             }
+
+.toc         {font-size: small;
+		}
+
+.base		{ background-color: #ffffff;
+		}
+
+.figborder   { border-style: double;
+               border-color: black;
+               border-width: 3;
+             }
+
+
+/* the nested mappings provide the opportunity to manipulate things at the topic level */
+/* no function here for now; nested topics don't indent incrementally */
+.nested1	{ 
+		}
+
+.nested2	{ 
+		}
+
+.nested3	{ 
+		}
+
+.nested4	{ 
+		}
+
+.nested5	{ 
+		}
+
+.nested6	{ 
+		}
+
+
+
+/* the topictitle mappings provide nesting-specific title control */
+/* equivalent to FO xsl attribute sets for nested titles */
+
+.topictitle1 { margin-top: 0pc;
+		  margin-bottom: 1.4pt;
+		  font-size: 16pt;
+		  }
+
+.topictitle2 { margin-top: 1pc;
+               margin-bottom: 5pt;
+               font-size: 14pt;
+               }
+
+.topictitle3 { margin-top: 1pc;
+               margin-bottom: 2pt;
+               font-size: 14t;
+               font-weight: bold;
+             }
+
+.topictitle4 { margin-top: 10pt;
+               font-size: 14pt;
+               font-weight: bold;
+             }
+
+
+.topictitle5 { font-size: 14pt;
+               font-weight: bold;
+             }
+
+.topictitle6 { font-size: 15pt;
+               font-style: italic;
+             }
+
+/* some class settings tied to generated divs */
+div.notetitle { margin-top: 1em; font-weight: bold }
+div.notebody { margin-left: 2em }
+
+div.attention { margin-top: 1em }
+span.attentiontitle { font-weight: bold }
+div.dangertitle { margin-top: 1em; font-weight: bold }
+div.danger { padding: 5px 5px 5px 5px; border: solid; border-width: thin; font-weight: bold; margin-top: 2px }
+div.cautiontitle { margin-top: 1em; font-weight: bold }
+div.caution { font-weight: bold }
+
+div.tiptitle { margin-top: 1em; font-weight: bold }
+div.tipbody { margin-left: 2em }
+div.fastpathtitle { margin-top: 1em; font-weight: bold }
+div.fastpathbody { margin-left: 2em }
+div.importanttitle { margin-top: 1em; font-weight: bold }
+div.importantbody { margin-left: 2em }
+div.remembertitle { margin-top: 1em; font-weight: bold }
+div.rememberbody { margin-left: 2em }
+div.restrictiontitle { margin-top: 1em; font-weight: bold }
+div.restrictionbody { margin-left: 2em }
+
+div.imageleft { text-align: left }
+div.imagecenter { text-align: center }
+div.imageright { text-align: right }
+div.imagejustify { text-align: justify }
+
+
+
+/* format-specific */
+
+.bold		{ font-weight: bold;
+		}
+
+.boldItalic	{ font-weight: bold;
+		  font-style: italic;
+		}
+
+.italic		{ font-style: italic;
+		}
+
+		
+.underlined  { text-decoration: underline;
+		}
+
+.ptocH1      {font-size: x-small;
+		}
+
+.ptocH2      {font-size: x-small;
+		}
+
+.smallCaps   { text-transform: uppercase; 
+		  font-size: smaller;
+		}
+
+.stitle      { font-style: italic;
+		  text-decoration: underline;
+             }
+
+.nte		{}
+
+.defListHead	{ font-weight: bold;
+		  text-decoration: underline;
+		}
+
+.parmListKwd	{ font-weight: bold;
+		}
+
+.parmListVar	{ font-style: italic;
+		}
+
+.xxlines		{
+	white-space: pre;
+	font-family : serif;
+	font-size : 100%;
+}
+
+.pk          { font-weight: bold;
+		  text-decoration: underline;
+		}
+
+.sectiontitle {margin-top: 1em;
+               margin-bottom: 0em;
+               color: black;
+               font-size: 11pt;
+               font-weight: bold;
+              }
+
+
+*[compact="yes"]>li {
+  margin-top: 0pt;
+}
+
+*[compact="no"]>li {
+  margin-top: 6pt;
+}
+
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/concept.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/concept.css
new file mode 100644
index 0000000..4eeba8c
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/concept.css
@@ -0,0 +1,43 @@
+//*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+
+concept {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 9pt;
+  font-family: sans-serif;
+  padding-left: 5px;
+  padding-right: 5px;
+}
+
+concept>title {
+  display: block;
+  margin-top: 16pt;
+  margin-bottom: 9pt;
+  font-size: 20pt;
+  font-weight: bold;
+  color: #000001;
+}
+
+*>concept>title {
+  margin-top: 20pt;
+  font-size: 16pt;
+  font-weight: bold;
+  color: #000002;
+}
+
+*>*>concept>title {
+  margin-top: 20pt;
+  font-size: 14pt;
+  font-weight: bold;
+  color: #000002;
+}
+
+conbody {
+  display: block;
+  margin-top: 6pt;
+}
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_classed_shell.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_classed_shell.css
new file mode 100644
index 0000000..2199d99
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_classed_shell.css
@@ -0,0 +1,31 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+
+@import url(topic_classed.css);
+/*
+@import url(task.css);
+
+@import url(concept.css);
+
+@import url(reference.css);
+*/
+@import url(domains_classed.css);
+
+
+/* === support overrides and "delivery context" markup here === */
+
+/* revert the ph class */
+
+*[class~="topic\/xph"] {
+      color: black;
+}
+
+
+dita {
+  display: block;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_classed_shell_vex.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_classed_shell_vex.css
new file mode 100644
index 0000000..7a660a9
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_classed_shell_vex.css
@@ -0,0 +1,23 @@
+/*
+ | Wrapper for dita_shell.css that overcomes some of Vex's CSS limitations.
+ */
+
+@import url(dita_classed_shell.css);
+
+
+/* Elements that can contain block-formatted children must be explicitly block-formatted */
+*[class~="topic\/body"] {
+  display: block;
+}
+
+*[class~="topic\/ol"] {
+  display: block;
+  list-style-type: decimal;
+  margin: 20px 0;
+}
+
+*[class~="topic\/li"] {
+  display: list-item;
+  margin-left: 40px;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_shell.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_shell.css
new file mode 100644
index 0000000..9e3fa24
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/dita_shell.css
@@ -0,0 +1,24 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+
+@import url(topic.css);
+
+@import url(task.css);
+
+@import url(concept.css);
+
+@import url(reference.css);
+
+@import url(domains.css);
+
+
+/* support overrides and "delivery context" markup here */
+
+dita {
+  display: block;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains.css
new file mode 100644
index 0000000..5f654a4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains.css
@@ -0,0 +1,254 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+/* programming domain (pr-d) generic class support */
+
+/* ph classed */
+codeph, var, synph, oper, delim, sep, repsep {
+  display: inline;
+}
+
+var {
+  font-style: italic;
+}
+
+var[importance="optional"]:before {
+  content: " [";
+}
+
+var[importance="optional"]:after {
+  content: "] ";
+}
+
+var:before, sep:before, delim:before, groupseq:before, groupcomp:before {
+  content: " ";
+}
+
+var:after, sep:after, delim:after, groupseq:after, groupcomp:after {
+  content: " ";
+}
+
+
+/* keyword classed */
+option, parmname, apiname, kwd {
+  display: inline;
+}
+
+apiname {
+  font-family: monospace;
+}
+
+xapiname:before {
+  content: "<";
+}
+
+xapiname:after {
+  content: ">";
+}
+
+
+/* pre classed */
+codeblock {
+  display: block;
+  white-space: pre;
+  margin-bottom: 6pt;
+  font-family: monospace;
+}
+
+/* dl classed */
+parml:before {
+  font-weight: bold;
+  font-size: 10pt;
+}
+
+parml {
+  display: table;
+}
+
+/* dlentry classed */
+plentry {
+  display: table-row;
+}
+
+/* dt classed */
+pt {
+  display: table-cell;
+  font-weight: bold;
+}
+
+/* dd classed */
+pd {
+  display: table-cell;
+}
+
+
+
+/* fn classed */
+synnote:before {
+  color: purple;
+  font-weight: bold;
+  content: " [Syntax note: ";
+}
+
+synnote:after {
+  color: purple;
+  font-weight: bold;
+  content: "] ";
+}
+
+synnote {
+  color: purple;
+  font-weight: bold;
+}
+
+
+
+/* xref classed */
+fragref, synnoteref {
+  text-decoration: underline;
+  color: red;
+}
+
+fragref[href], synnoteref[href] {
+  text-decoration: underline;
+  color: blue;
+}
+
+
+/* fig classed */
+syntaxdiagram {
+  display: block;
+  margin-bottom: 12pt;
+}
+
+
+/* figgroup classed */
+synblk, groupseq, groupchoice, groupcomp, fragment {
+  display: inline;
+}
+
+groupchoice>*:after {
+  content: " | ";
+}
+
+groupchoice:before {
+  content: " { ";
+}
+
+groupchoice:after {
+  content: " } ";
+}
+
+/* contextual items */
+groupcomp>title {
+  display: inline;
+  color: purple;
+}
+
+syntaxdiagram>title, fragment>title {
+  display: block;
+  font-weight: bold;
+  font-size: 12pt;
+  margin-top: 6pt;
+  margin-bottom: 12pt;
+}
+
+syntaxdiagram>title:after, fragment>title:after {
+  content: ": ";
+}
+
+
+/* software domain (sw-d) generic class support */
+
+/* ph classed */
+msgph, filepath, userinput, systemoutput {
+}
+
+/* pre classed */
+msgblock {
+  display: block;
+  white-space: pre;
+  margin-bottom: 6pt;
+  font-family: monospace;
+}
+
+/* keyword classed */
+msgnum, cmdname, varname {
+  display: inline;
+}
+
+varname {
+  font-style: italic;
+}
+
+
+
+/* user interface domain (ui-d) generic class support */
+
+/* ph classed */
+uicontrol, menucascade {
+  display: inline;
+}
+
+/* keyword classed */
+wintitle {
+  display: inline;
+  font-weight: bold;
+}
+
+shortcut {
+  display: inline;
+  text-decoration: underline;
+}
+
+screen {
+  display: block;
+  background-color: #404040;
+  color: lime;
+  white-space: pre;
+  font-family: monospace, "Courier New";
+  font-weight: bold;
+  font-size: 9pt;
+  margin-bottom: 6pt;
+  padding: 4pt;
+}
+
+/* need to add contexts for menucascade */
+
+
+/* highlight domain (hi-d) generic class support */
+
+/* all ph classed */
+b, i, tt, u, sup, sub {
+  display: inline;
+}
+
+b {
+  font-weight: bold;
+}
+
+i {
+  font-style: italic;
+}
+
+tt {
+  font-family: monospace;
+}
+
+u {
+  text-decoration: underline;
+}
+
+sup {
+  vertical-align: super;
+  font-size: smaller;
+}
+
+sub {
+  vertical-align: sub;
+  font-size: smaller;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains_classed.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains_classed.css
new file mode 100644
index 0000000..805da1a
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains_classed.css
@@ -0,0 +1,65 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+/* DOMAINS generic support (will fall through to base classes!) */
+
+
+/* software domain (sw-d) generic class support */
+
+
+
+/* user interface domain (ui-d) generic class support */
+
+
+*[class~="ui-d\/screen"] {
+	display: block;
+	background-color: black;
+	color: lime;
+	white-space: pre;
+	font-family: monospace, "Courier New";
+	font-weight: bold;
+	font-size: 10pt;
+	padding: 4pt;
+	margin-bottom: 6pt;
+}
+
+
+/* programming domain (pr-d) generic class support */
+
+*[class~="pr-d\/var"] {
+	font-style: italic;
+}
+
+
+
+/* highlight domain (hi-d) generic class support (dita12 dtds do not class these, tho) */
+
+*[class~="hi-d\/b"] {
+	font-weight: bold;
+}
+
+*[class~="hi-d\/i"] {
+	font-style: italic;
+}
+
+*[class~="hi-d\/tt"] {
+	font-family: monospace;
+}
+
+*[class~="hi-d\/u"] {
+	text-decoration: underline;
+}
+
+*[class~="topic\/sup"] {
+  vertical-align: super;
+  font-size: smaller;
+}
+
+*[class~="topic\/sup"] {
+  vertical-align: sub;
+  font-size: smaller;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains_unclassed.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains_unclassed.css
new file mode 100644
index 0000000..b23b4a4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/domains_unclassed.css
@@ -0,0 +1,65 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+/* DOMAINS particular support (selection on element names) */
+
+
+/* software domain (sw-d) particular class support */
+
+
+
+/* user interface domain (ui-d) particular class support */
+
+
+screen {
+	display: block;
+	background-color: black;
+	color: lime;
+	white-space: pre;
+	font-family: monospace, "Courier New";
+	font-weight: bold;
+	font-size: 9pt;
+	padding: 4pt;
+	margin-bottom: 6pt;
+}
+
+
+/* programming domain (pr-d) particular class support */
+
+var {
+	font-style: italic;
+}
+
+
+
+/* highlight domain (hi-d) particular class support */
+
+b {
+	font-weight: bold;
+}
+
+i {
+	font-style: italic;
+}
+
+tt {
+	font-family: monospace;
+}
+
+u {
+	text-decoration: underline;
+}
+
+/sup {
+  vertical-align: super;
+  font-size: smaller;
+}
+
+sup {
+  vertical-align: sub;
+  font-size: smaller;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/map_shell.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/map_shell.css
new file mode 100644
index 0000000..0612422
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/map_shell.css
@@ -0,0 +1,82 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+*[class~="map\/map"] {
+	display: block;
+  margin-top: 6pt;
+  margin-bottom: 9pt;
+  font-family: sans-serif;
+  padding-left: 5px;
+  padding-right: 5px;
+}
+
+*[class~="map\/map"]:before {
+	content: attr(title);
+	font-weight : bold;
+}
+
+*[class~="map\/topicref"]    {
+	display: list-item;
+	list-style-type: disc;
+	list-style-position: inherit;
+	margin-left: 10pt;
+}
+
+*[class~="mapgroup\/topichead"]    {
+	display: list-item;
+	list-style-type: circle;
+	list-style-position: inherit;
+	margin-left: 10pt;
+}
+
+*[class~="mapgroup\/topicgroup"]    {
+	display: list-item;
+	list-style-type: square;
+	list-style-position: inherit;
+	margin-left: 10pt;
+}
+
+*[class~="map\/topicref"]:before    {
+	content: attr(navtitle) " [" attr(href) "]";
+}
+
+*[class~="map\/navref"]:before    {
+	content: "[" attr(mapref) "]";
+}
+
+@media morphon {
+}
+/*== simple table markup ==*/
+*[class~="map\/reltable"]    {
+	display: table;
+	border: thin solid gray;
+}
+
+*[class~="map\/relcolspec"]    {
+	display: table-cell;
+}
+
+*[class~="map\/relcolspec"]:before    {
+	content: "[" attr(type) "]";
+}
+
+*[class~="map\/relrow"], *[class~="map\/relheader"]    {
+	display: table-row;
+	border: thin black solid;
+}
+
+*[class\~="map\/relhead"] > *[class\~="map\/relcell"]    {
+	display: table-cell;
+	font-weight: bold;
+	text-align: center;
+	border: thin solid black;
+}
+
+*[class\~="map\/relrow"] > *[class\~="map\/relcell"]    {
+	display: table-cell;
+	border: thin solid gray !important;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/reference.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/reference.css
new file mode 100644
index 0000000..e037b4b
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/reference.css
@@ -0,0 +1,104 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+reference {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 9pt;
+  font-family: sans-serif;
+  padding-left: 5px;
+  padding-right: 5px;
+}
+
+reference>title {
+  display: block;
+  margin-top: 16pt;
+  margin-bottom: 9pt;
+  font-size: 20pt;
+  font-weight: bold;
+  color: #000003;
+}
+
+*>reference>title {
+  margin-top: 20pt;
+  font-size: 16pt;
+  font-weight: bold;
+  color: #000003;
+}
+
+*>*>reference>title {
+  margin-top: 20pt;
+  font-size: 14pt;
+  font-weight: bold;
+  color: #000003;
+}
+
+refbody {
+  display: block;
+  margin-top: 6pt;
+}
+
+refsyn {
+  margin-top: 12pt;
+  display: block;
+}
+
+refsyn>title {
+  display: block;
+  font-weight: bold;
+  margin-top: 6pt;
+  margin-bottom: 2pt;
+}
+
+refsyn:before {
+  font-weight: bold;
+  display: block;
+  content: "Syntax: ";
+}
+
+refsyn[spectitle]:before {
+  font-weight: bold;
+  display: block;
+  content: attr(spectitle)": ";
+}
+
+flag {
+  color: red;
+}
+
+parm {
+  font-weight: bold;
+  color: navy;
+}
+
+plentry {
+  display: block;
+}
+
+pd {
+  margin-left: +20pt;
+  display: block;
+}
+
+example {
+  margin-top: 6pt;
+  display: block;
+}
+
+property {
+  display: block;
+  margin-top: 6pt;
+}
+
+proptype {
+  display: block;
+  font-weight: bold;
+}
+
+propvalue {
+  display: block;
+  margin-left: +20pt;
+}
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/task.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/task.css
new file mode 100644
index 0000000..480e4cf
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/task.css
@@ -0,0 +1,9 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+*[class~="task\/info"]:before {
+ content: "  ";
+}
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic-alt.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic-alt.css
new file mode 100644
index 0000000..406eef6
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic-alt.css
@@ -0,0 +1,86 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2002, 2003. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers.
+*/
+
+
+@import url(topic.css);
+
+/* following are editor-specific overrides of standard topic properties */
+
+
+/* list item support */
+
+ul { 
+    margin-left: 2ex;
+    margin-top: 1.33ex;
+    margin-bottom: 1.33ex;
+}
+ul > li {
+    margin-left: 2.5ex;
+}
+ul > li:before {
+    display: marker;
+    content: disc;
+}
+ul > li ul > li:before {
+    display: marker;
+    content: square;
+}
+ul > li ul > li ul > li:before {
+    display: marker;
+    content: icon(diamond);
+}
+ul > li ul > li ul > li ul > li:before {
+    display: marker;
+    content: circle;
+}
+
+ol { 
+    margin-left: 2ex;
+    margin-top: 1.33ex;
+    margin-bottom: 1.33ex;
+}
+ol > li {
+    margin-left: 6ex;
+}
+ol > li:before {
+    display: marker;
+    content: counter(n, decimal);
+    font-weight: bold;
+}
+ol[style~=lower-alpha] > li:before {
+    display: marker;
+    content: counter(n, lower-alpha);
+}
+ol[style~=upper-alpha] > li:before {
+    display: marker;
+    content: counter(n, upper-alpha);
+}
+ol[style~=lower-roman] > li:before {
+    display: marker;
+    content: counter(n, lower-roman);
+}
+ol[style~=upper-roman] > li:before {
+    display: marker;
+    content: counter(n, upper-roman);
+}
+
+ol ul, ul ol, ul ul, ol ol { 
+    margin-top: 0; 
+    margin-bottom: 0; 
+}
+
+
+/* image support */
+
+image, image[placement="inline"] {
+  display: inline;
+  content: image(attr(href),-400,-200);
+}
+
+image[placement="break"] {
+  display: block;
+  content: image(attr(href),-400,-200);
+}
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic.css
new file mode 100644
index 0000000..443a415
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic.css
@@ -0,0 +1,854 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+/* mods to update in topic_classed:
+	box model for link/linklist etc
+      CALS table model
+*/
+
+/* element-based lookups for a core DITA topic */
+
+author, copyright, critdates, permissions, audience, othermeta, language, category, context, dd, ddhd, desc, dl, dlentry, dt, dthd, example, fig, figbody, lq, note, ol, p, prolog, relgroup, longdesc, title, ul    {
+	display: block;
+}
+
+topic    {
+	display: block;
+	margin-top: 6pt;
+	margin-bottom: 9pt;
+	font-family: sans-serif;
+	padding-left: 5px;
+	padding-right: 5px;
+}
+
+topic > title    {
+	display: block;
+	margin-top: 16pt;
+	margin-bottom: 9pt;
+	font-size: 20pt;
+	font-weight: bold;
+	color: #000001;
+}
+
+* > topic > title    {
+	margin-top: 20pt;
+	font-size: 16pt;
+	font-weight: bold;
+	color: #000002;
+}
+
+* > * > topic > title    {
+	margin-top: 20pt;
+	font-size: 14pt;
+	font-weight: bold;
+	color: #000002;
+}
+
+* > * > * > topic > title    {
+	margin-top: 10pt;
+	font-size: 12pt;
+	font-weight: bold;
+	color: #000000;
+}
+
+searchtitle {
+	margin-top: 6pt;
+	margin-left: 24pt;
+	font-size: 12pt;
+	font-weight: bold;
+	display: block;
+	color: teal;
+}
+
+searchtitle:before {
+	color: blue;
+	font-weight: bold;
+	margin-left: 24pt;
+	display: inline;
+	margin-left: 24pt;
+	content: "Search Title: ";
+}
+
+
+/* For authoring, call attention to shortdesc by boxing it.  
+   For output, its just a paragraph. */
+shortdesc    {
+	display: block;
+	margin-top: 6pt;
+	margin-bottom: 6pt;
+	border: thin solid black;
+}
+
+
+prolog    {
+	margin-top: 1pc;
+	margin-left: 24pt;
+	background-color: #99FFCC;
+	padding-top: 3pt;
+	padding-right: 3pt;
+	padding-left: 3pt;
+	padding-bottom: 6pt;
+	border: thin solid olive;
+	margin-bottom: 1pc;
+}
+
+body    {
+	display: block;
+	margin-left: 12pt;
+}
+
+/* general setup for section-like divisions and exhibits */
+section, example, table, fig    {
+	margin-top: 12pt;
+	display: block;
+}
+
+section > title, example > title    {
+	display: block;
+	font-weight: bold;
+	margin-top: 6pt;
+	margin-bottom: 2pt;
+}
+
+
+/*== special content and exhibits ==*/
+
+*[spectitle]:before {
+	display: block;
+	font-weight: bold;
+	margin-bottom: 2pt;
+	content: attr(spectitle)": ";
+}
+
+section[spectitle]:before, 
+example[spectitle]:before    {
+	display: block;
+	font-weight: bold;
+	font-size: 10pt;
+	content: attr(spectitle)": ";
+}
+
+
+/*== body content ==*/
+
+/* apparently not supported in XXE */
+section > p:first-child {
+	display: block;
+	margin-top: 6pt;
+	margin-bottom: 6pt;
+}
+
+section > p {
+	display: block;
+	margin-top: 6pt;
+}
+
+p, note    {
+	display: block;
+	margin-bottom: 6pt;
+}
+
+note > p    {
+	display: block;
+	margin-top: 6pt;
+	margin-bottom: 6pt;
+}
+
+note[type="note"]:before    {
+	font-weight: bold;
+	content: "Note: ";
+}
+
+note[type="tip"]:before    {
+	font-weight: bold;
+	content: "Tip: ";
+}
+
+note[type="fastpath"]:before    {
+	font-weight: bold;
+	content: "Fastpath: ";
+}
+
+/* additional to add here: attention, caution, danger, important, remember, restriction, other */ 
+
+note:before    {
+	font-weight: bold;
+	content: attr(type) ": ";
+}
+
+/*== list item ==*/
+
+li    {
+	margin-left: 20pt;
+	display: list-item;
+	margin-bottom: 2pt;
+	margin-top: 6pt;
+}
+
+ul, ol    {
+	margin-top: 6pt;
+        margin-bottom: 6pt;
+}
+
+ul > li    {
+	list-style-type: disc;
+}
+
+ol > li    {
+	list-style-type: decimal;
+}
+
+sl    {
+	list-style: none;
+}
+
+sli    {
+	display: list-item;
+}
+
+
+
+/*== phrase markup ==*/
+q:before    {
+	content: "\"";
+}
+
+q:after    {
+	content: "\"";
+}
+
+cite    {
+	font-style: italic;
+}
+
+fn:before    {
+	color: purple;
+	font-weight: bold;
+	content: " [Footnote: ";
+}
+
+fn:after    {
+	color: purple;
+	font-weight: bold;
+	content: "] ";
+}
+
+fn    {
+	color: purple;
+	font-weight: bold;
+}
+
+
+/*== default (preferred) rendering of dl as indented list ==*/
+
+dl[title]:before, *[title]:before    {
+	font-weight: bold;
+	font-size: 10pt;
+	content: attr(title) ": ";
+}
+
+dlhead    {
+	font-weight: bold;
+}
+
+dl    {
+	margin-left: 2ex;
+	margin-top: 1.33ex;
+	margin-bottom: 1.33ex;
+}
+
+dt, dthd    {
+	font-weight: bold;
+}
+
+dd, ddhd    {
+	margin-left: 4ex;
+}
+
+
+/*== line-oriented content ==*/
+
+pre    {
+	display: block;
+	white-space: pre;
+	background-color: #e0e0e0;
+	border: thin solid gray;
+	font-family: monospace;
+//	font-size: .83em;
+	margin-top: 1.33ex;
+	margin-bottom: 1.33ex;
+}
+
+lines    {
+	white-space: pre;
+	display: block;
+	font-style: normal;
+}
+
+
+/*== blocked paragraphs and contexts ==*/
+
+lq    {
+	margin-left: 20pt;
+	display: block;
+	margin-top: 6pt;
+}
+
+p > pre    {
+	margin-top: 6pt;
+}
+
+note:before    {
+	font-weight: bold;
+	content: attr(type) ": ";
+}
+
+
+/* generic support for the scale attribute (must match an e*/
+/*display-atts:
+scale (50|60|70|80|90|100|110|120|140|160|180|200) #IMPLIED
+frame (top | bottom |topbot | all | sides | none) #IMPLIED
+expanse (page|column|textline) #IMPLIED
+*/
+*[scale="50"]    {
+	font-size: 50%;
+}
+
+*[scale="60"]    {
+	font-size: 60%;
+}
+
+*[scale="70"]    {
+	font-size: 70%;
+}
+
+*[scale="80"]    {
+	font-size: 80%;
+}
+
+*[scale="90"]    {
+	font-size: 90%;
+}
+
+*[scale="100"]    {
+	font-size: 100%;
+}
+
+*[scale="110"]    {
+	font-size: 110%;
+}
+
+*[scale="120"]    {
+	font-size: 120%;
+}
+
+*[scale="140"]    {
+	font-size: 140%;
+}
+
+*[scale="160"]    {
+	font-size: 160%;
+}
+
+*[scale="180"]    {
+	font-size: 180%;
+}
+
+*[scale="200"]    {
+	font-size: 200%;
+}
+
+
+/*== figure markup ==*/
+
+fig[frame="all"]    {
+	border: thin solid black;
+}
+
+
+/*== compact (for dl and its derivatives; considering deprecation) ==*/
+
+*[compact="yes"] > li {
+	margin-top: 0pt;
+}
+
+
+/* == titles for figs, tables == */
+
+fig > title    {
+	font-weight: bold;
+	display: block;
+	margin-bottom: 4pt;
+}
+
+fig > title:before    {
+	font-weight: bold;
+	content: "Figure: ";
+}
+
+table > title    {
+	font-weight: bold;
+	display: block;
+	margin-bottom: 4pt;
+}
+
+table > title:before    {
+	font-weight: bold;
+	content: "Table: ";
+}
+
+
+/*== CALS table markup ==*/
+
+table {
+	display: block;
+}
+
+thead > row > entry    {
+	font-weight: bold;
+}
+
+tgroup    {
+	display: table;
+}
+
+thead    {
+	display: table-header-group;
+}
+
+tfoot    {
+	display: table-footer-group;
+}
+
+tbody    {
+	display: table-row-group;
+}
+
+row    {
+	display: table-row;
+}
+
+entry    {
+	display: table-entry;
+	border: thin solid black;
+}
+
+
+/* rendering for context dependent table content */
+/*
+section > table, example > table    {
+	margin-top: 0pt;
+}
+*/
+
+entry > image    {
+	margin-top: 0pt;
+	margin-bottom: 0pt;
+}
+
+
+/*== simple table markup ==*/
+
+simpletable {
+	display: table;
+	border: thin solid gray;
+}
+
+strow, 
+sthead {
+	display: table-row;
+}
+
+sthead > stentry {
+	display: table-cell;
+	font-weight: bold;
+	text-align: center;
+	border: thin solid gray;
+}
+
+strow > stentry {
+	display: table-cell;
+	border: thin solid gray;
+}
+
+
+
+note    {
+	margin-top: 6pt;
+}
+
+
+/*== frame support for figures, tables ==*/
+
+*[class~="topic\/fig"][frame="topbot"] {
+	border: thin solid black;
+}
+
+
+/* index terms in phrase contexts */
+
+*[class~="topic\/indexterm"] {
+	display: block;
+	margin-left: +6pt;
+	border: thin inset gray; 
+	color: black;
+	background-color: #ffddff;
+}
+
+*[class~="topic\/indexterm"]:before {
+	content: "[index term: ";
+}
+
+*[class~="topic\/indexterm"]:after {
+	content: "]";
+}
+
+
+/*== prolog and metadata ==*/
+author:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Author [";
+}
+
+author:after    {
+	color: blue;
+	font-weight: bold;
+	content: "]";
+}
+
+copyrholder    {
+	display: block;
+}
+
+year:before    {
+	content: "Copyright year " attr(year) " ";
+}
+
+copyright:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Copyright [";
+}
+
+copyright:after    {
+	color: blue;
+	font-weight: bold;
+	content: "]";
+}
+
+critdates:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Critical dates [";
+}
+
+critdates:after    {
+	color: blue;
+	font-weight: bold;
+	content: "]";
+}
+
+permissions:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Permissions [";
+}
+
+permissions:after    {
+	color: blue;
+	font-weight: bold;
+	content: "]";
+}
+
+metadata    {
+	display: block;
+	background-color: #66FF66;
+	padding-top: 3pt;
+	padding-right: 3pt;
+	padding-left: 3pt;
+	padding-bottom: 6pt;
+	border: thin solid red;
+	margin-top: 2pt;
+	margin-left: 2pt;
+	margin-right: 2pt;
+	margin-bottom: 2pt;
+}
+
+prolog:before    {
+	color: black;
+	font-weight: bold;
+	content: "Prolog:";
+}
+
+metadata:before    {
+	color: black;
+	font-weight: bold;
+	content: "Metadata:";
+}
+
+prodinfo {
+	background-color: #e0e0e0;
+	display: block;
+	margin-left: 16pt;
+	margin-top: 6pt;
+	border: thin solid black;
+}
+
+category:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Category [";
+}
+
+category:after    {
+	color: blue;
+	font-weight: bold;
+	content: "]";
+}
+
+audience:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Audience [" attr(type) "]";
+}
+
+keywords:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Keywords [";
+}
+
+keywords:after    {
+	color: blue;
+	font-weight: bold;
+	content: "]";
+}
+
+language:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Language [" attr(lang) "]";
+}
+
+othermeta:before    {
+	color: blue;
+	font-weight: bold;
+	content: "Other Metadata: name=[" attr(name) "] content=[" attr(content) "]";
+}
+
+
+/*== image data ==*/
+
+image, image[placement="inline"] {
+	display: inline;
+	content: image(attr(href),-400,-200);
+}
+
+image[placement="break"] {
+	display: block;
+	content: image(attr(href),-400,-200);
+}
+
+
+
+/*== specially highlighted elements ==*/
+
+required-cleanup {
+	color: #CC3333;
+	background-color: #FFFF99;
+	border: thick solid black;
+}
+
+draft-comment {
+	display: block;
+	margin-top: 6pt;
+	margin-bottom: 2pt;
+	background-color: #FF99FF;
+	border: thin solid black;
+}
+/*  color: #CC3333; */
+
+
+draft-comment:before {
+	font-weight: bold;
+	content: "Comment by "attr(reviewer)": ";
+}
+
+
+
+
+/*== linking in topics ==*/
+
+related-links {
+	display: block;
+}
+
+related-links:before {
+	display: block;
+	color: black;
+	font-weight: bold;
+	content: "Related Links:";
+}
+
+links, linklist, linkpool    {
+	margin-top: 1.33ex;
+	margin-bottom: 1.33ex;
+	display: block;
+	margin-left: 2ex;
+}
+
+links:before, linklist:before, linkpool:before    {
+	color: green;
+	font-weight: bold;
+	content: "Links:";
+}
+
+links > title, linklist > title, linkpool > title    {
+	display: block;
+	font-weight: bold;
+	margin-top: 6pt;
+}
+
+/*== common and separate behaviors of link, xref, cite ==*/
+
+link {
+	display: block;
+	margin-left: +20pt;
+}
+
+xref, cite    {
+	display: inline;
+}
+
+link, xref, cite {
+	text-decoration: underline;
+	color: red;
+}
+
+link[href], xref[href], cite[href] {
+	text-decoration: underline;
+	color: blue;
+}
+
+xref:before    {
+	font-weight: bold;
+	content: "[" attr(type) "--" attr(href) "]";
+}
+
+*[class~="topic\/xref"]:before {
+	font-weight: bold;
+	content: "["attr(type)"--"attr(href)"]";
+}
+
+
+/* rendering support for XML meta elements (comments, PIs) */
+
+*:comment, *:processing-instruction    {
+	padding: 2px;
+	font-size: smaller;
+	font-family: monospace;
+}
+
+*:comment    {
+	border: thin solid rgb(128, 128, 0);
+	background-color: rgb(192, 192, 128);
+}
+
+*:processing-instruction    {
+	border: thin solid rgb(0, 128, 0);
+	background-color: rgb(192, 255, 192);
+}
+
+*:comment, *:processing-instruction    {
+	display: block;
+	white-space: pre;
+	margin: 2px;
+}
+
+
+
+
+
+/* process specific behaviors */
+
+
+@media morphon {
+	*    {
+		additional-helpset-location: url(dita-help.jar);
+		additional-helpset-mapfile: url(morphon-map.xml);
+		additional-helpset-name: dita-help;
+	}
+	entry    {
+		display: table-cell;
+	}
+	xtgroup    {
+		table-model: cals;
+	}
+	image[format="GIF"]    {
+		plugin-view: "com.morphon.visualplugins.docbook.DocBook_ImageData";
+	}
+
+}
+
+
+@media xxe {
+/* list item */
+
+}
+
+
+/*== dl, table-like rendering ==*/
+xdl:before    {
+	font-weight: bold;
+	font-size: 10pt;
+}
+
+xdl    {
+	display: table;
+}
+
+xdlhead    {
+	display: table-row;
+}
+
+xdthd    {
+	display: table-cell;
+	list-style-type: none;
+	font-weight: bold;
+	background-color: silver;
+}
+
+xddhd    {
+	content: " - ";
+	display: table-cell;
+	font-weight: bold;
+	background-color: silver;
+}
+
+xdlentry    {
+	display: table-row;
+}
+
+xdt    {
+	display: table-cell;
+	font-weight: bold;
+}
+
+xdd    {
+	display: table-cell;
+}
+
+/* yet another dl version */
+xdt    {
+	font-weight: bold;
+}
+
+xdd    {
+	display: list-item;
+	list-style-type: none;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic_classed.css b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic_classed.css
new file mode 100644
index 0000000..7385e56
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/css/topic_classed.css
@@ -0,0 +1,887 @@
+/*
+ | (C) Copyright IBM Corporation 2001, 2004. All Rights Reserved.
+ | This file is part of the DITA package on IBM's developerWorks site.
+ | See license.txt for disclaimers and permissions.
+*/
+
+*[class\~="topic\/ol"] > li > *[class\~="topic\/ol"] > *[class\~="topic\/li"]    {
+  list-style-type: lower-alpha !important;
+}
+
+/* mods to update in topic_classed:
+  box model for link/linklist etc
+      CALS table model
+*/
+/* class-based lookups for DITA */
+author, copyright, critdates, permissions, audience, othermeta, language, category, context, dd, ddhd, desc, dl, dlhead, dlentry, dt, dthd, example, fig, figbody, lq, note, ol, p, prolog, relgroup, longdesc, title, ul    {
+  display: block;
+}
+
+*[class~="topic\/topic"]    {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 9pt;
+  font-family: sans-serif;
+  padding-left: 5px;
+  padding-right: 5px;
+}
+
+*[class~="topic\/topic"] > *[class~="topic\/title"]    {
+  display: block;
+  margin-top: 16pt;
+  margin-bottom: 9pt;
+  font-size: 22pt;
+  font-weight: bold;
+  color: #000001;
+}
+
+* > *[class~="topic\/topic"] > *[class~="topic\/title"]    {
+  margin-top: 20pt;
+  font-size: 18pt;
+  font-weight: bold;
+  color: #000002;
+}
+
+* > * > *[class~="topic\/topic"] > *[class~="topic\/title"]    {
+  margin-top: 20pt;
+  font-size: 16pt;
+  font-weight: bold;
+  color: #000002;
+}
+
+* > * > * > *[class~="topic\/topic"] > *[class~="topic\/title"]    {
+  margin-top: 10pt;
+  font-size: 14pt;
+  font-weight: bold;
+  color: #000000;
+}
+
+*[class~="topic\/searchtitle"]    {
+  margin-top: 6pt;
+  margin-left: 24pt;
+  font-size: 14pt;
+  font-weight: bold;
+  display: block;
+  color: teal;
+}
+
+*[class~="topic\/searchtitle"]:before    {
+  color: blue;
+  font-weight: bold;
+  margin-left: 24pt;
+  display: inline;
+  margin-left: 24pt;
+  content: "Search Title: ";
+}
+
+/* For authoring, call attention to shortdesc by boxing it.
+   For output, its just a paragraph. */
+*[class~="topic\/shortdesc"]    {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 6pt;
+  border: thin solid black;
+}
+
+*[class~="topic\/prolog"]    {
+  margin-top: 1pc;
+  margin-left: 24pt;
+  background-color: #99FFCC;
+  padding-top: 3pt;
+  padding-right: 3pt;
+  padding-left: 3pt;
+  padding-bottom: 6pt;
+  border: thin solid olive;
+  margin-bottom: 1pc;
+}
+
+*[class~="topic\/body"]    {
+  display: block;
+  margin-left: 12pt;
+}
+
+/* general setup for section-like divisions and exhibits */
+*[class~="topic\/section"], *[class~="topic\/example"], *[class~="topic\/table"], *[class~="topic\/fig"]    {
+  margin-top: 12pt;
+  display: block;
+}
+
+*[class~="topic\/section"] > *[class~="topic\/title"], *[class~="topic\/example"] > *[class~="topic\/title"]    {
+  display: block;
+  font-weight: bold;
+  margin-top: 6pt;
+  margin-bottom: 2pt;
+}
+
+/*== special content and exhibits ==*/
+*[spectitle]:before    {
+  display: block;
+  font-weight: bold;
+  margin-bottom: 2pt;
+  content: attr(spectitle) ": ";
+}
+
+*[spectitle][class~="topic\/section"]:before, *[spectitle][class~="topic\/example"]:before    {
+  display: block;
+  font-weight: bold;
+  font-size: 11pt;
+  content: attr(spectitle) ": ";
+}
+
+*[specentry]:before    {
+  display: block;
+  font-weight: bold;
+  margin-bottom: 2pt;
+  content: attr(specentry) ": ";
+}
+
+*[conref]:before    {
+  content: "Conref: [" attr(conref) "]";
+}
+
+/*== body content ==*/
+/* apparently not supported in XXE */
+*[class~="topic\/section"] > p:first-child    {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 6pt;
+}
+
+*[class~="topic\/section"] > *[class~="topic\/p"]    {
+  display: block;
+  margin-top: 6pt;
+}
+
+*[class~="topic\/p"], *[class~="topic\/note"]    {
+  display: block;
+  margin-bottom: 6pt;
+}
+
+*[class~="topic\/note"] > *[class~="topic\/p"]    {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 6pt;
+}
+
+*[type="note"][class~="topic\/note"]:before    {
+  font-weight: bold;
+  content: "Note: ";
+}
+
+*[type="tip"][class~="topic\/note"]:before    {
+  font-weight: bold;
+  content: "Tip: ";
+}
+
+*[type="fastpath"][class~="topic\/note"]:before    {
+  font-weight: bold;
+  content: "Fastpath: ";
+}
+
+/* additional to add here: attention, caution, danger, important, remember, restriction, other */
+note:before    {
+  font-weight: bold;
+  content: attr(type) "Note: ";
+}
+
+/*== list item ==*/
+*[class~="topic\/li"]    {
+  margin-left: 20pt;
+  display: list-item;
+  margin-bottom: 2pt;
+  margin-top: 6pt;
+}
+
+*[class~="topic\/ul"], *[class~="topic\/ol"]    {
+  margin-top: 6pt;
+  margin-bottom: 6pt;
+}
+
+*[class~="topic\/ul"] > *[class~="topic\/li"]    {
+  list-style-type: disc;
+}
+
+*[class~="topic\/ol"] > *[class~="topic\/li"]    {
+  list-style-type: decimal;
+}
+
+*[class~="topic\/ol"] > *[class~="topic\/li"] > *[class~="topic\/ol"] > *[class~="topic\/li"] {
+  list-style-type: lower-alpha;
+}
+
+*[class~="topic\/sl"]    {
+  list-style: none;
+}
+
+*[class~="topic\/sli"]    {
+  display: list-item;
+}
+
+/*== phrase markup ==*/
+*[class\~="hi-d\/b"]  {
+  font-weight: bold;
+}
+*[class\~="hi-d\/i"]    {
+  font-style : italic;
+}
+*[class\~="hi-d\/u"]    {
+  text-decoration : underline;
+}
+*[class\~="hi-d\/tt"], *[class\~="sw-d\/systemoutput"]    {
+  font-family : monospace;
+}
+*[class\~="ui-d\/uicontrol"] , *[class\~="pr-d/parmname"]   {
+  font-weight: bold;
+}
+
+*[class~="topic\/q"]:before    {
+  content: "\"";
+}
+
+*[class~="topic\/q"]:after    {
+  content: "\"";
+}
+
+*[class~="topic\/cite"]    {
+  font-style: italic;
+}
+
+*[class~="topic\/fn"]:before    {
+  color: purple;
+  font-weight: bold;
+  content: " [Footnote: ";
+}
+
+*[class~="topic\/fn"]:after    {
+  color: purple;
+  font-weight: bold;
+  content: "] ";
+}
+
+*[class~="topic\/fn"]    {
+  color: purple;
+  font-weight: bold;
+}
+
+/*== default (preferred) rendering of dl as indented list ==*/
+dl[title]:before, *[title]:before    {
+  font-weight: bold;
+  font-size: 11pt;
+  content: attr(title) ": ";
+}
+
+*[class~="topic\/dlhead"]    {
+  font-weight: bold;
+}
+
+*[class~="topic\/dl"]    {
+  margin-left: 2ex;
+  margin-top: 1.33ex;
+  margin-bottom: 1.33ex;
+}
+
+*[class~="topic\/dt"], *[class~="topic\/dthd"]    {
+  font-weight: bold;
+}
+
+*[class~="topic\/dd"], *[class~="topic\/ddhd"]    {
+  margin-left: 4ex;
+}
+
+/*== line-oriented content ==*/
+*[class~="topic\/pre"]    {
+  display: block;
+  white-space: pre;
+  background-color: #e0e0e0;
+  border: thin solid gray;
+  font-family: Courier;
+  margin-top: 1.33ex;
+  margin-bottom: 1.33ex;
+}
+
+*[class~="topic\/lines"]    {
+  white-space: pre;
+  display: block;
+  font-style: normal;
+}
+
+/*== blocked paragraphs and contexts ==*/
+*[class~="topic\/lq"]    {
+  margin-left: 20pt;
+  display: block;
+  margin-top: 6pt;
+}
+
+*[class~="topic\/p"] > *[class~="topic\/pre"]    {
+  margin-top: 6pt;
+}
+
+/* generic support for the scale attribute (must match an e*/
+/*display-atts:
+scale (50|60|70|80|90|100|110|120|140|160|180|200) #IMPLIED
+frame (top | bottom |topbot | all | sides | none) #IMPLIED
+expanse (page|column|textline) #IMPLIED
+*/
+*[scale="50"]    {
+  font-size: 50%;
+}
+
+*[scale="60"]    {
+  font-size: 60%;
+}
+
+*[scale="70"]    {
+  font-size: 70%;
+}
+
+*[scale="80"]    {
+  font-size: 80%;
+}
+
+*[scale="90"]    {
+  font-size: 90%;
+}
+
+*[scale="100"]    {
+  font-size: 100%;
+}
+
+*[scale="110"]    {
+  font-size: 110%;
+}
+
+*[scale="120"]    {
+  font-size: 120%;
+}
+
+*[scale="140"]    {
+  font-size: 140%;
+}
+
+*[scale="160"]    {
+  font-size: 160%;
+}
+
+*[scale="180"]    {
+  font-size: 180%;
+}
+
+*[scale="200"]    {
+  font-size: 200%;
+}
+
+/*== figure markup ==*/
+*[frame="all"][class~="topic\/fig"]    {
+  border: thin solid black;
+  margin-bottom: 6pt;
+}
+
+/*== compact (for dl and its derivatives; considering deprecation) ==*/
+*[compact="yes"] > *[class~="topic\/li"]    {
+  margin-top: 0pt;
+}
+
+/* == titles for figs, tables == */
+*[class~="topic\/fig"] > *[class~="topic\/title"]    {
+  font-weight: bold;
+  display: block;
+  margin-bottom: 4pt;
+}
+
+*[class~="topic\/fig"] > *[class~="topic\/title"]:before    {
+  font-weight: bold;
+  content: "Figure: ";
+}
+
+*[class~="topic\/table"] > *[class~="topic\/title"]    {
+  font-weight: bold;
+  display: block;
+  margin-bottom: 4pt;
+}
+
+*[class~="topic\/table"] > *[class~="topic\/title"]:before    {
+  font-weight: bold;
+  content: "Table: ";
+}
+
+/*== CALS table markup ==*/
+*[class~="topic\/table"]    {
+  display: block;
+}
+
+*[class~="topic\/thead"] > *[class~="topic\/row"] > *[class~="topic\/entry"]    {
+  font-weight: bold;
+}
+
+*[class~="topic\/tgroup"]    {
+  display: table;
+}
+
+*[class~="topic\/thead"]    {
+  display: table-header-group;
+}
+
+*[class~="topic\/tfoot"]    {
+  display: table-footer-group;
+}
+
+*[class~="topic\/tbody"]    {
+  display: table-row-group;
+}
+
+*[class~="topic\/row"]    {
+  display: table-row;
+}
+
+*[class~="topic\/entry"]    {
+  display: table-entry;
+  border: thin solid black;
+}
+
+/* rendering for context dependent table content */
+/*
+*[class~="topic\/section"] > *[class~="topic\/table"],
+*[class~="topic\/example"] > *[class~="topic\/table"] {
+  margin-top: 0pt;
+}
+*/
+*[class~="topic\/entry"] > *[class~="topic\/image"]    {
+  margin-top: 0pt;
+  margin-bottom: 0pt;
+}
+
+/*== simple table markup ==*/
+*[class~="topic\/simpletable"]    {
+  display: table;
+  border: thin solid gray;
+}
+
+*[class~="topic\/strow"], *[class~="topic\/sthead"]    {
+  display: table-row;
+}
+
+*[class~="topic\/sthead"] > *[class~="topic\/stentry"]    {
+  display: table-cell;
+  font-weight: bold;
+  text-align: center;
+  border: thin solid gray;
+}
+
+*[class~="topic\/strow"] > *[class~="topic\/stentry"]    {
+  display: table-cell;
+  border: thin solid gray;
+}
+
+*[class~="topic\/note"]    {
+  margin-top: 6pt;
+}
+
+/*== frame support for figures, tables ==*/
+fig[frame="topbot"]    {
+  border: thin solid black;
+}
+
+/* index terms in phrase contexts */
+indexterm    {
+  display: block;
+  margin-left: 6pt;
+  border: thin inset gray;
+  color: black;
+  background-color: #ffddff;
+}
+
+indexterm:before    {
+  content: "[index term: ";
+}
+
+indexterm:after    {
+  content: "]";
+}
+
+/*== prolog and metadata ==*/
+*[class~="topic\/author"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Author [";
+}
+
+*[class~="topic\/author"]:after    {
+  color: blue;
+  font-weight: bold;
+  content: "]";
+}
+
+*[class~="topic\/copyrholder"]    {
+  display: block;
+}
+
+*[class~="topic\/year"]:before    {
+  content: "Copyright year " attr(year) " ";
+}
+
+*[class~="topic\/copyright"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Copyright [";
+}
+
+*[class~="topic\/copyright"]:after    {
+  color: blue;
+  font-weight: bold;
+  content: "]";
+}
+
+*[class~="topic\/critdates"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Critical dates [";
+}
+
+*[class~="topic\/critdates"]:after    {
+  color: blue;
+  font-weight: bold;
+  content: "]";
+}
+
+*[class~="topic\/permissions"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Permissions [";
+}
+
+*[class~="topic\/permissions"]:after    {
+  color: blue;
+  font-weight: bold;
+  content: "]";
+}
+
+*[class~="topic\/metadata"]    {
+  display: block;
+  background-color: #66FF66;
+  padding-top: 3pt;
+  padding-right: 3pt;
+  padding-left: 3pt;
+  padding-bottom: 6pt;
+  border: thin solid red;
+  margin-top: 2pt;
+  margin-left: 2pt;
+  margin-right: 2pt;
+  margin-bottom: 2pt;
+}
+
+*[class~="topic\/prolog"]:before    {
+  color: black;
+  font-weight: bold;
+  content: "Prolog:";
+}
+
+*[class~="topic\/metadata"]:before    {
+  color: black;
+  font-weight: bold;
+  content: "Metadata:";
+}
+
+*[class~="topic\/prodinfo"]    {
+  background-color: #e0e0e0;
+  display: block;
+  margin-left: 16pt;
+  margin-top: 6pt;
+  border: thin solid black;
+}
+
+*[class~="topic\/category"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Category [";
+}
+
+*[class~="topic\/category"]:after    {
+  color: blue;
+  font-weight: bold;
+  content: "]";
+}
+
+*[class~="topic\/audience"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Audience [" attr(type) "]";
+}
+
+*[class~="topic\/keywords"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Keywords [";
+}
+
+*[class~="topic\/keywords"]:after    {
+  color: blue;
+  font-weight: bold;
+  content: "]";
+}
+
+*[class~="topic\/language"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Language [" attr(lang) "]";
+}
+
+*[class~="topic\/othermeta"]:before    {
+  color: blue;
+  font-weight: bold;
+  content: "Other Metadata: name=[" attr(name) "] content=[" attr(content) "]";
+}
+
+/*== image data ==*/
+*[class\~="topic\/image"], *[placement="inline"][class\~="topic\/image"]    {
+  display: inline;
+  plugin-view: "com.morphon.visualplugins.docbook.DocBook_ImageData";
+  x-morphon-docbook-imagedata-xml-file-name: "href";
+}
+
+*[placement="break"][class~="topic\/image"]    {
+  display: block;
+  plugin-view: "com.morphon.visualplugins.docbook.DocBook_ImageData";
+  x-morphon-docbook-imagedata-xml-file-name: "href";
+}
+
+*[class~="topic\/image"][alt]:after {
+ content: "Alt: [" attr(alt) "]";
+}
+
+/*== specially highlighted elements ==*/
+*[class~="topic\/required-cleanup"]    {
+  color: #CC3333;
+  background-color: #FFFF99;
+  border: thick solid black;
+}
+
+*[class~="topic\/draft-comment"]    {
+  display: block;
+  margin-top: 6pt;
+  margin-bottom: 2pt;
+  background-color: #FF99FF;
+  border: thin solid black;
+}
+
+/*  color: #CC3333; */
+*[class~="topic\/draft-comment"]:before    {
+  font-weight: bold;
+  content: "Comment by " attr(reviewer) ": ";
+}
+
+/*== linking in topics ==*/
+*[class~="topic\/related-links"]    {
+  display: block;
+}
+
+*[class~="topic\/related-links"]:before    {
+  display: block;
+  color: black;
+  font-weight: bold;
+  content: "Related Links:";
+}
+
+*[class~="topic\/links"], *[class~="topic\/linklist"], *[class~="topic\/linkpool"]    {
+  margin-top: 1.33ex;
+  margin-bottom: 1.33ex;
+  display: block;
+  margin-left: 2ex;
+}
+
+*[class~="topic\/links"]:before, *[class~="topic\/linklist"]:before, *[class~="topic\/linkpool"]:before    {
+  color: green;
+  font-weight: bold;
+  content: "Links:";
+}
+
+*[class~="topic\/links"] > *[class~="topic\/title"], *[class~="topic\/linklist"] > *[class~="topic\/title"], *[class~="topic\/linkpool"] > *[class~="topic\/title"]    {
+  display: block;
+  font-weight: bold;
+  margin-top: 6pt;
+}
+
+/*== common and separate behaviors of link, xref, cite ==*/
+*[class~="topic\/link"]    {
+  display: block;
+  margin-left: 20pt;
+}
+
+*[class~="topic\/xref"], *[class~="topic\/cite"]    {
+  display: inline;
+}
+
+*[class~="topic\/link"], *[class~="topic\/xref"], *[class~="topic\/cite"]    {
+  text-decoration: underline;
+  color: red;
+}
+
+*[href][class~="topic\/link"], *[href][class~="topic\/xref"], *[href][class~="topic\/cite"]    {
+  text-decoration: underline;
+  color: blue;
+}
+
+*[class~="topic\/xref"]:before    {
+  font-weight: bold;
+  content: "[" attr(type) "--" attr(href) "]";
+}
+
+/* linking in topics */
+*[class~="topic\/link"], *[class~="topic\/xref"]    {
+  text-decoration: underline;
+  color: red;
+}
+
+*[href][class~="topic\/link"], *[href][class~="topic\/xref"]    {
+  text-decoration: underline;
+  color: blue;
+}
+
+*[class~="topic\/link"]    {
+  display: block;
+  margin-left: 20pt;
+}
+
+*[class~="topic\/xref"]:before    {
+  font-weight: bold;
+  content: "[" attr(type) "--" attr(href) "]";
+}
+
+/* rendering support for XML meta elements (comments, PIs) */
+*:comment, *:processing-instruction    {
+  padding: 2px;
+  font-size: smaller;
+  font-family: monospace;
+}
+
+*:comment    {
+  border: thin solid rgb(128, 128, 0);
+  background-color: rgb(192, 192, 128);
+}
+
+*:processing-instruction    {
+  border: thin solid rgb(0, 128, 0);
+  background-color: rgb(192, 255, 192);
+}
+
+*:comment, *:processing-instruction    {
+  display: block;
+  white-space: pre;
+  margin: 2px;
+}
+
+/* process specific behaviors */
+@media morphon {
+  *    {
+    additional-helpset-location: url(dita-help.jar);
+    additional-helpset-mapfile: url(morphon-map.xml);
+    additional-helpset-name: dita-help;
+  }
+  *[class~="topic\/entry"]    {
+    display: table-cell;
+  }
+  *[class~="topic\/xtgroup"]    {
+    table-model: cals;
+  }
+  *[format="GIF"][class~="topic\/image"]    {
+    plugin-view: "com.morphon.visualplugins.docbook.DocBook_ImageData";
+  }
+
+}
+
+@media xxe {
+  /* list item */
+  *[class~="topic\/ul"]    {
+    margin-left: 2ex;
+    margin-top: 1.33ex;
+    margin-bottom: 1.33ex;
+  }
+  *[class~="topic\/ul"] > li    {
+    margin-left: 2.5ex;
+  }
+  *[class~="topic\/ul"] > li:before    {
+    display: marker;
+    content: disc;
+  }
+  *[class~="topic\/ul"] > li *[class~="topic\/ul"] > li:before    {
+    display: marker;
+    content: square;
+  }
+  *[class~="topic\/ul"] > li *[class~="topic\/ul"] > li *[class~="topic\/ul"] > li:before    {
+    display: marker;
+    content: icon(diamond);
+  }
+  *[class~="topic\/ul"] > li *[class~="topic\/ul"] > li *[class~="topic\/ul"] > li *[class~="topic\/ul"] > li:before    {
+    display: marker;
+    content: circle;
+  }
+  *[class~="topic\/ol"]    {
+    margin-left: 2ex;
+    margin-top: 1.33ex;
+    margin-bottom: 1.33ex;
+  }
+  *[class~="topic\/ol"] > li    {
+    margin-left: 6ex;
+  }
+  *[class~="topic\/ol"] > li:before    {
+    display: marker;
+    content: counter(n,decimal);
+    font-weight: bold;
+  }
+  *[style~=lower-alpha][class~="topic\/ol"] > li:before    {
+    display: marker;
+    content: counter(n,lower-alpha);
+  }
+  *[style~=upper-alpha][class~="topic\/ol"] > li:before    {
+    display: marker;
+    content: counter(n,upper-alpha);
+  }
+  *[style~=lower-roman][class~="topic\/ol"] > li:before    {
+    display: marker;
+    content: counter(n,lower-roman);
+  }
+  *[style~=upper-roman][class~="topic\/ol"] > li:before    {
+    display: marker;
+    content: counter(n,upper-roman);
+  }
+  *[class~="topic\/ol"] ul, ul *[class~="topic\/ol"], ul ul, *[class~="topic\/ol"] *[class~="topic\/ol"]    {
+    margin-top: 0;
+    margin-bottom: 0;
+  }
+
+}
+
+/* alternate dl rendering as a table */
+xdl    {
+  display: table;
+}
+
+xdlhead    {
+  display: table-row;
+}
+
+xdthd    {
+  display: table-cell;
+  font-weight: bold;
+  background-color: silver;
+}
+
+xddhd    {
+  content: " - ";
+  display: table-cell;
+  font-weight: bold;
+  background-color: silver;
+}
+
+xdlentry    {
+  display: table-row;
+}
+
+xdt    {
+  display: table-cell;
+  font-weight: bold;
+}
+
+xdd    {
+  display: table-cell;
+}
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/bookmap.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/bookmap.dtd
new file mode 100644
index 0000000..c5cbbd3
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/bookmap.dtd
@@ -0,0 +1,124 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Bookmap DTD                                  -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//DTD DITA BookMap//EN"
+      Delivered as file "bookmap.dtd"                              -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 BookMap//EN"                        -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA Book Maps                    -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2004                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             (C) Copyright IBM Corporation 2004, 2005.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+<!ENTITY % mapgroup-d-dec 
+                        PUBLIC 
+"-//OASIS//ENTITIES DITA Map Group Domain//EN" 
+"mapGroup.ent"                                                       >
+%mapgroup-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!ENTITY % xnaldomain-d-dec 
+                        PUBLIC 
+"-//OASIS//ENTITIES DITA XNAL Domain//EN" 
+"xnalDomain.ent"                                                     >
+%xnaldomain-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+<!ENTITY % author       "author | %xnal-d-author;"                   >
+<!ENTITY % topicref     "topicref | %mapgroup-d-topicref;"           >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+<!ENTITY included-domains "&mapgroup-d-att; &indexing-d-att; 
+                           &xnal-d-att;"                             >
+
+<!-- ============================================================= -->
+<!--                    MAP ELEMENT INTEGRATION                    -->
+<!-- ============================================================= -->
+
+<!ENTITY % map-type PUBLIC 
+"-//OASIS//ELEMENTS DITA Map//EN" 
+"map.mod"                                                            >
+%map-type;
+
+<!ENTITY % bookmap-type PUBLIC 
+"-//OASIS//ELEMENTS DITA BookMap//EN" 
+"bookmap.mod"                                                        >
+%bookmap-type;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+<!ENTITY % mapgroup-d-def  
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Map Group Domain//EN" 
+"mapGroup.mod"                                                       >
+%mapgroup-d-def;
+
+<!ENTITY % indexing-d-def
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+<!ENTITY % xnaldomain-d-def  
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA XNAL Domain//EN" 
+"xnalDomain.mod"                                                     >
+%xnaldomain-d-def;
+
+<!-- ================== End DITA Bookmap DTD  ==================== -->
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/bookmap.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/bookmap.mod
new file mode 100644
index 0000000..38cb392
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/bookmap.mod
@@ -0,0 +1,653 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Bookmap                                      -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA BookMap//EN" 
+      Delivered as file "bookmap.mod"                              -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Define elements and specialization atttributes    -->
+<!--             for Book Maps                                     -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2004                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2004, 2005.         -->
+<!--             All Rights Reserved.                              -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+                               
+<!ENTITY % bookmap         "bookmap"                                 >
+
+<!ENTITY % abbrevlist      "abbrevlist"                              >
+<!ENTITY % bookabstract    "bookabstract"                            >
+<!ENTITY % amendments      "amendments"                              >
+<!ENTITY % appendix        "appendix"                                >
+<!ENTITY % approved        "approved"                                >
+<!ENTITY % backmatter      "backmatter"                              >
+<!ENTITY % bibliolist      "bibliolist"                              >
+<!ENTITY % bookchangehistory "bookchangehistory"                     >
+<!ENTITY % bookevent       "bookevent"                               >
+<!ENTITY % bookeventtype   "bookeventtype"                           >
+<!ENTITY % bookid          "bookid"                                  >
+<!ENTITY % booklibrary     "booklibrary"                             >
+<!ENTITY % booklist        "booklist"                                >
+<!ENTITY % booklists       "booklists"                               >
+<!ENTITY % bookmeta        "bookmeta"                                >
+<!ENTITY % booknumber      "booknumber"                              >
+<!ENTITY % bookowner       "bookowner"                               >
+<!ENTITY % bookpartno      "bookpartno"                              >
+<!ENTITY % bookrestriction "bookrestriction"                         >
+<!ENTITY % bookrights      "bookrights"                              >
+<!ENTITY % booktitle       "booktitle"                               >
+<!ENTITY % booktitlealt    "booktitlealt"                            >
+<!ENTITY % chapter         "chapter"                                 >
+<!ENTITY % colophon        "colophon"                                >
+<!ENTITY % completed       "completed"                               >
+<!ENTITY % copyrfirst      "copyrfirst"                              >
+<!ENTITY % copyrlast       "copyrlast"                               >
+<!ENTITY % day             "day"                                     >
+<!ENTITY % dedication      "dedication"                              >
+<!ENTITY % draftintro      "draftintro"                              >
+<!ENTITY % edited          "edited"                                  >
+<!ENTITY % edition         "edition"                                 >
+<!ENTITY % figurelist      "figurelist"                              >
+<!ENTITY % frontmatter     "frontmatter"                             >
+<!ENTITY % glossarylist    "glossarylist"                            >
+<!ENTITY % indexlist       "indexlist"                               >
+<!ENTITY % isbn            "isbn"                                    >
+<!ENTITY % mainbooktitle   "mainbooktitle"                           >
+<!ENTITY % maintainer      "maintainer"                              >
+<!ENTITY % month           "month"                                   >
+<!ENTITY % notices         "notices"                                 >
+<!ENTITY % organization    "organization"                            >
+<!ENTITY % part            "part"                                    >
+<!ENTITY % person          "person"                                  >
+<!ENTITY % preface         "preface"                                 >
+<!ENTITY % printlocation   "printlocation"                           >
+<!ENTITY % published       "published"                               >
+<!ENTITY % publisherinformation "publisherinformation"               >
+<!ENTITY % publishtype     "publishtype"                             >
+<!ENTITY % reviewed        "reviewed"                                >
+<!ENTITY % revisionid      "revisionid"                              >
+<!ENTITY % started         "started"                                 >
+<!ENTITY % summary         "summary"                                 >
+<!ENTITY % tablelist       "tablelist"                               >
+<!ENTITY % tested          "tested"                                  >
+<!ENTITY % trademarklist   "trademarklist"                           >
+<!ENTITY % toc             "toc"                                     >
+<!ENTITY % volume          "volume"                                  >
+<!ENTITY % year            "year"                                    >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY included-domains ""                                         >
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+<!-- Currently: same as topicref, minus @query -->
+<!ENTITY % chapter-atts 
+            'navtitle   CDATA                             #IMPLIED
+             href       CDATA                             #IMPLIED
+             keyref     CDATA                             #IMPLIED
+             copy-to    CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts;
+             %univ-atts;'                                            >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Book Map                        -->
+<!ELEMENT bookmap       (((%title;) | (%booktitle;))?,
+                         (%bookmeta;)?, 
+                         (%frontmatter;)?,
+                         (%chapter;)*, (%part;)*, (%appendix;)*,
+                         (%backmatter;)?,
+                         (%reltable;)*)                              >
+<!ATTLIST bookmap
+             id         ID                                #IMPLIED
+             conref     CDATA                             #IMPLIED
+             anchorref  CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %localization-atts;
+             %arch-atts;
+             domains    CDATA                  "&included-domains;" 
+             %topicref-atts;
+             %select-atts;                                           >
+             
+
+<!--                    LONG NAME: Book Metadata                   -->
+<!ELEMENT  bookmeta    ((%linktext;)?, (%searchtitle;)?, 
+                         (%shortdesc;)?, (%author;)*, (%source;)?, 
+                         (%publisherinformation;)*,
+                         (%critdates;)?, (%permissions;)?, 
+                         (%audience;)*, (%category;)*, 
+                         (%keywords;)*, (%prodinfo;)*, (%othermeta;)*, 
+                         (%resourceid;)*, (%bookid;)?,
+                         (%bookchangehistory;)*,
+                         (%bookrights;)*,
+                         (%data;)*)                                  >
+<!ATTLIST  bookmeta
+             lockmeta   (yes | no | -dita-use-conref-target)
+                                                          #IMPLIED
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Front Matter                    -->
+<!ELEMENT  frontmatter  (%booklists; | %notices; | %dedication; | 
+                         %colophon; | %bookabstract; | %draftintro; | 
+                         %preface; | %topicref;)*                    >
+<!ATTLIST  frontmatter
+             keyref     CDATA                             #IMPLIED
+             query      CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Back Matter                     -->
+<!ELEMENT  backmatter   (%booklists; | %notices; | %dedication; | 
+                         %colophon; | %amendments; | %topicref;)*    >
+<!ATTLIST  backmatter
+             keyref     CDATA                             #IMPLIED
+             query      CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Publisher Information           -->
+<!ELEMENT publisherinformation   
+                        (((%person;) | (%organization;))*, 
+                         (%printlocation;)*, (%published;)*, 
+                         (%data;)*)                                  >
+<!ATTLIST publisherinformation
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Person                          -->
+<!ELEMENT person        (%words.cnt;)*                               >
+<!ATTLIST person
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Organization                    -->
+<!ELEMENT organization  (%words.cnt;)*                               >
+<!ATTLIST organization
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Change History             -->
+<!ELEMENT bookchangehistory
+                        ((%reviewed;)*, (%edited;)*, (%tested;)*, 
+                         (%approved;)*, (%bookevent;)*)              >
+<!ATTLIST bookchangehistory
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book ID                         -->
+<!ELEMENT bookid        ((%bookpartno;)*, (%edition;)?, (%isbn;)?, 
+                         (%booknumber;)?, (%volume;)*, 
+                         (%maintainer;)?)                            >
+<!ATTLIST bookid
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Summary                         -->
+<!ELEMENT summary       (%words.cnt;)*                               >
+<!ATTLIST summary
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Print Location                  -->
+<!ELEMENT printlocation (%words.cnt;)*                               >
+<!ATTLIST printlocation
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Published                       -->
+<!ELEMENT published     (((%person;) | (%organization;))*,
+                         (%publishtype;)?, (%revisionid;)?,
+                         (%started;)?, (%completed;)?, (%summary;)?, 
+                         (%data;)*)                                  >
+<!ATTLIST published
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Publish Type                    -->
+<!ELEMENT publishtype   EMPTY                                        >
+<!ATTLIST publishtype
+             %univ-atts;
+             name       CDATA                            #IMPLIED
+             datatype   CDATA                            #IMPLIED
+             href       CDATA                            #IMPLIED
+             format     CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass
+                        CDATA                            #IMPLIED
+             value      (beta | limited | general  | 
+                         -dita-use-conref-target)        #REQUIRED   >
+             
+<!--                    LONG NAME: Revision ID                     -->
+<!ELEMENT revisionid    (#PCDATA)*>
+<!ATTLIST revisionid
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Start Date                      -->
+<!ELEMENT started       ( ((%year;), ((%month;), (%day;)?)?) | 
+                          ((%month;), (%day;)?, (%year;)) | 
+                          ((%day;), (%month;), (%year;)))            >
+<!ATTLIST started         
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Completion Date                 -->
+<!ELEMENT completed     ( ((%year;), ((%month;), (%day;)?)?) | 
+                          ((%month;), (%day;)?, (%year;)) | 
+                          ((%day;), (%month;), (%year;)))            >
+<!ATTLIST completed       
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Year                            -->
+<!ELEMENT year          (#PCDATA)*                                   >
+<!ATTLIST year
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Month                           -->
+<!ELEMENT month         (#PCDATA)*                                   >
+<!ATTLIST month
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Day                             -->
+<!ELEMENT day           (#PCDATA)*                                   >
+<!ATTLIST day
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Reviewed                        -->
+<!ELEMENT reviewed      (((%person;) | (%organization;))*, 
+                         (%revisionid;)?, (%started;)?, 
+                         (%completed;)?, (%summary;)?, (%data;)*)    >
+<!ATTLIST reviewed
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Editeded                        -->
+<!ELEMENT edited        (((%person;) | (%organization;))*, 
+                         (%revisionid;)?, (%started;)?, 
+                         (%completed;)?, (%summary;)?, (%data;)*)    >
+<!ATTLIST edited
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Tested                          -->
+<!ELEMENT tested        (((%person;) | (%organization;))*, 
+                         (%revisionid;)?, (%started;)?,
+                         (%completed;)?, (%summary;)?, (%data;)*)    >
+<!ATTLIST tested
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Approved                        -->
+<!ELEMENT approved      (((%person;) | (%organization;))*,
+                         (%revisionid;)?, (%started;)?, 
+                         (%completed;)?, (%summary;)?, (%data;)*)    >
+<!ATTLIST approved
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Event                      -->
+<!ELEMENT bookevent     ((%bookeventtype;)?, 
+                         ((%person;) | (%organization;))*,
+                         (%revisionid;)?, (%started;)?, 
+                         (%completed;)?, (%summary;)?, (%data;)*)    >
+<!ATTLIST bookevent 
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Event Type                 -->
+<!ELEMENT bookeventtype EMPTY                                        >
+<!-- Attributes are the same as on <data> except that @name is required -->
+<!ATTLIST bookeventtype 
+             %univ-atts;
+             datatype   CDATA                            #IMPLIED
+             value      CDATA                            #IMPLIED
+             href       CDATA                            #IMPLIED
+             format     CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass
+                        CDATA                            #IMPLIED
+             name       CDATA                            #REQUIRED   >
+
+<!--                    LONG NAME: Book Part Number                -->
+<!ELEMENT bookpartno    (%words.cnt;)*                               >
+<!ATTLIST bookpartno
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Edition                         -->
+<!ELEMENT edition       (#PCDATA)*                                   >
+<!ATTLIST edition
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: ISBN Number                     -->
+<!ELEMENT isbn          (#PCDATA)*                                   >
+<!ATTLIST isbn    
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Number                     -->
+<!ELEMENT booknumber    (%words.cnt;)*                               >
+<!ATTLIST booknumber   
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Volume                          -->
+<!ELEMENT volume        (#PCDATA)*                                   >
+<!ATTLIST volume
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Maintainer                      -->
+<!ELEMENT maintainer    (((%person;) | (%organization;))*, (%data;)*)>
+<!ATTLIST maintainer
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Rights                     -->
+<!ELEMENT bookrights    ((%copyrfirst;)?, (%copyrlast;)?,
+                         (%bookowner;), (%bookrestriction;)?, 
+                         (%summary;)?)                               >
+<!ATTLIST bookrights
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: First Copyright                 -->
+<!ELEMENT copyrfirst    (%year;)                                     >
+<!ATTLIST copyrfirst
+             %data-element-atts;                                     >
+                        
+<!--                    LONG NAME: Last Copyright                  -->
+<!ELEMENT copyrlast     (%year;)                                     >
+<!ATTLIST copyrlast
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Owner                      -->
+<!ELEMENT bookowner     ((%person;) | (%organization;))*             >
+<!ATTLIST bookowner 
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Book Restriction                -->
+<!ELEMENT bookrestriction   EMPTY                                        >
+<!-- Same attributes as data, except for @value -->
+<!ATTLIST bookrestriction
+             %univ-atts;
+             name       CDATA                            #IMPLIED
+             datatype   CDATA                            #IMPLIED
+             href       CDATA                            #IMPLIED
+             format     CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             scope      (local | peer | external |
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass
+                        CDATA                            #IMPLIED
+             value      (confidential | restricted |
+                         licensed | unclassified | 
+                         -dita-use-conref-target)        #REQUIRED>
+
+<!--                    LONG NAME: Book Title                      -->
+<!ELEMENT booktitle     ((%booklibrary;)?,(%mainbooktitle;),
+                         (%booktitlealt;)*)                          >
+<!ATTLIST booktitle
+             %id-atts;
+             %localization-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!-- The following three elements are specialized from <ph>. They are
+     titles, which have a more limited content model than phrases. The
+     content model here matches title.cnt; that entity is not reused
+     in case it is expanded in the future to include something not
+     allowed in a phrase.                                          -->
+<!--                    LONG NAME: Library Title                   -->
+<!ELEMENT booklibrary   (#PCDATA | %basic.ph.noxref; | %image;)*     >  
+<!ATTLIST booklibrary              
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Main Book Title                 -->
+<!ELEMENT mainbooktitle (#PCDATA | %basic.ph.noxref; | %image;)*     >
+<!ATTLIST mainbooktitle              
+             keyref     CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                           #IMPLIED     >
+                        
+<!--                    LONG NAME: Alternate Book Title            -->
+<!ELEMENT booktitlealt  (#PCDATA | %basic.ph.noxref; | %image;)*     >
+<!ATTLIST booktitlealt              
+             keyref     CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                           #IMPLIED     >
+
+<!--                    LONG NAME: Draft Introduction              -->
+<!ELEMENT draftintro    ((%topicmeta;)?, (%topicref;)*)              >
+<!ATTLIST draftintro
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Book Abstract                   -->
+<!ELEMENT bookabstract  EMPTY                                        >
+<!ATTLIST bookabstract
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Dedication                      -->
+<!ELEMENT dedication    EMPTY                                        >
+<!ATTLIST dedication
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Preface                         -->
+<!ELEMENT preface       ((%topicmeta;)?, (%topicref;)*)              >
+<!ATTLIST preface
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Chapter                         -->
+<!ELEMENT chapter       ((%topicmeta;)?, (%topicref;)*)              >
+<!ATTLIST chapter
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Part                            -->
+<!ELEMENT part          ((%topicmeta;)?,
+                         ((%topicref;) | (%chapter;))* )             >
+<!ATTLIST part
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Appendix                        -->
+<!ELEMENT appendix      ((%topicmeta;)?, (%topicref;)*)              >
+<!ATTLIST appendix
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Notices                         -->
+<!ELEMENT notices       ((%topicmeta;)?, (%topicref;)*)              >
+<!ATTLIST notices
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Amendments                      -->
+<!ELEMENT amendments    EMPTY                                        >
+<!ATTLIST amendments
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Colophon                        -->
+<!ELEMENT colophon      EMPTY                                        >
+<!ATTLIST colophon
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Book Lists                      -->
+<!ELEMENT booklists     ((%toc;) |
+                         (%figurelist;) |
+                         (%tablelist;) |
+                         (%abbrevlist;) |
+                         (%trademarklist;) |
+                         (%bibliolist;) |
+                         (%glossarylist;) |
+                         (%indexlist;) |
+                         (%booklist;))*                              >
+<!ATTLIST booklists
+             keyref     CDATA                             #IMPLIED
+             %topicref-atts;
+             %id-atts;
+             %select-atts;
+             %localization-atts;                                     >
+
+<!--                    LONG NAME: Table of Contents               -->
+<!ELEMENT toc           EMPTY                                        >
+<!ATTLIST toc
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Figure List                     -->
+<!ELEMENT figurelist    EMPTY                                        >
+<!ATTLIST figurelist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Table List                      -->
+<!ELEMENT tablelist     EMPTY                                        >
+<!ATTLIST tablelist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Abbreviation List               -->
+<!ELEMENT abbrevlist    EMPTY                                        >
+<!ATTLIST abbrevlist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Trademark List                  -->
+<!ELEMENT trademarklist EMPTY                                        >
+<!ATTLIST trademarklist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Bibliography List               -->
+<!ELEMENT bibliolist    EMPTY                                        >
+<!ATTLIST bibliolist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Glossary List                   -->
+<!ELEMENT glossarylist  ((%topicmeta;)?, (%topicref;)*)              >
+<!ATTLIST glossarylist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Index List                      -->
+<!ELEMENT indexlist     EMPTY                                        >
+<!ATTLIST indexlist
+             %chapter-atts;                                          >
+
+<!--                    LONG NAME: Book List                       -->
+<!ELEMENT booklist      EMPTY                                        >
+<!ATTLIST booklist
+             %chapter-atts;                                          >
+
+                     
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ATTLIST bookmap     %global-atts; class CDATA "- map/map bookmap/bookmap ">
+<!ATTLIST abbrevlist  %global-atts; class CDATA "- map/topicref bookmap/abbrevlist ">
+<!ATTLIST amendments  %global-atts; class CDATA "- map/topicref bookmap/amendments ">
+<!ATTLIST appendix    %global-atts; class CDATA "- map/topicref bookmap/appendix ">
+<!ATTLIST approved    %global-atts; class CDATA "- topic/data bookmap/approved ">
+<!ATTLIST backmatter  %global-atts; class CDATA "- map/topicref bookmap/backmatter ">
+<!ATTLIST bibliolist  %global-atts; class CDATA "- map/topicref bookmap/bibliolist ">
+<!ATTLIST bookabstract %global-atts; class CDATA "- map/topicref bookmap/bookabstract ">
+<!ATTLIST bookchangehistory %global-atts; class CDATA "- topic/data bookmap/bookchangehistory ">
+<!ATTLIST bookevent   %global-atts; class CDATA "- topic/data bookmap/bookevent ">
+<!ATTLIST bookeventtype %global-atts; class CDATA "- topic/data bookmap/bookeventtype ">
+<!ATTLIST bookid      %global-atts; class CDATA "- topic/data bookmap/bookid ">
+<!ATTLIST booklibrary %global-atts;  class CDATA "- topic/ph bookmap/booklibrary ">
+<!ATTLIST booklist    %global-atts; class CDATA "- map/topicref bookmap/booklist ">
+<!ATTLIST booklists   %global-atts; class CDATA "- map/topicref bookmap/booklists ">
+<!ATTLIST bookmeta    %global-atts; class CDATA "- map/topicmeta bookmap/bookmeta ">
+<!ATTLIST booknumber  %global-atts; class CDATA "- topic/data bookmap/booknumber ">
+<!ATTLIST bookowner   %global-atts; class CDATA "- topic/data bookmap/bookowner ">
+<!ATTLIST bookpartno  %global-atts; class CDATA "- topic/data bookmap/bookpartno ">
+<!ATTLIST bookrestriction %global-atts; class CDATA "- topic/data bookmap/bookrestriction ">
+<!ATTLIST bookrights  %global-atts; class CDATA "- topic/data bookmap/bookrights ">
+<!ATTLIST booktitle   %global-atts;  class CDATA "- topic/title bookmap/booktitle ">
+<!ATTLIST booktitlealt %global-atts;  class CDATA "- topic/ph bookmap/booktitlealt ">
+<!ATTLIST chapter     %global-atts; class CDATA "- map/topicref bookmap/chapter ">
+<!ATTLIST colophon    %global-atts; class CDATA "- map/topicref bookmap/colophon ">
+<!ATTLIST completed   %global-atts; class CDATA "- topic/ph bookmap/completed ">
+<!ATTLIST copyrfirst  %global-atts; class CDATA "- topic/data bookmap/copyrfirst ">
+<!ATTLIST copyrlast   %global-atts; class CDATA "- topic/data bookmap/copyrlast ">
+<!ATTLIST day         %global-atts; class CDATA "- topic/ph bookmap/day ">
+<!ATTLIST dedication  %global-atts; class CDATA "- map/topicref bookmap/dedication ">
+<!ATTLIST draftintro  %global-atts; class CDATA "- map/topicref bookmap/draftintro ">
+<!ATTLIST edited      %global-atts; class CDATA "- topic/data bookmap/edited ">
+<!ATTLIST edition     %global-atts; class CDATA "- topic/data bookmap/edition ">
+<!ATTLIST figurelist  %global-atts; class CDATA "- map/topicref bookmap/figurelist ">
+<!ATTLIST frontmatter %global-atts; class CDATA "- map/topicref bookmap/frontmatter ">
+<!ATTLIST glossarylist %global-atts; class CDATA "- map/topicref bookmap/glossarylist ">
+<!ATTLIST indexlist   %global-atts; class CDATA "- map/topicref bookmap/indexlist ">
+<!ATTLIST isbn        %global-atts; class CDATA "- topic/data bookmap/isbn ">
+<!ATTLIST mainbooktitle %global-atts;  class CDATA "- topic/ph bookmap/mainbooktitle ">
+<!ATTLIST maintainer  %global-atts; class CDATA "- topic/data bookmap/maintainer ">
+<!ATTLIST month       %global-atts; class CDATA "- topic/ph bookmap/month ">
+<!ATTLIST notices     %global-atts; class CDATA "- map/topicref bookmap/notices ">
+<!ATTLIST organization %global-atts; class CDATA "- topic/data bookmap/organization ">
+<!ATTLIST part        %global-atts; class CDATA "- map/topicref bookmap/part ">
+<!ATTLIST person      %global-atts; class CDATA "- topic/data bookmap/person ">
+<!ATTLIST preface     %global-atts; class CDATA "- map/topicref bookmap/preface ">
+<!ATTLIST printlocation %global-atts; class CDATA "- topic/data bookmap/printlocation ">
+<!ATTLIST published   %global-atts; class CDATA "- topic/data bookmap/published ">
+<!ATTLIST publisherinformation %global-atts; class CDATA "- topic/publisher bookmap/publisherinformation ">
+<!ATTLIST publishtype %global-atts; class CDATA "- topic/data bookmap/publishtype ">
+<!ATTLIST reviewed    %global-atts; class CDATA "- topic/data bookmap/reviewed ">
+<!ATTLIST revisionid  %global-atts; class CDATA "- topic/ph bookmap/revisionid ">
+<!ATTLIST started     %global-atts; class CDATA "- topic/ph bookmap/started ">
+<!ATTLIST summary     %global-atts; class CDATA "- topic/ph bookmap/summary ">
+<!ATTLIST tablelist   %global-atts; class CDATA "- map/topicref bookmap/tablelist ">
+<!ATTLIST tested      %global-atts; class CDATA "- topic/data bookmap/tested ">
+<!ATTLIST toc         %global-atts; class CDATA "- map/topicref bookmap/toc ">
+<!ATTLIST trademarklist %global-atts; class CDATA "- map/topicref bookmap/trademarklist ">
+<!ATTLIST volume      %global-atts; class CDATA "- topic/data bookmap/volume ">
+<!ATTLIST year        %global-atts; class CDATA "- topic/ph bookmap/year ">
+
+
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/catalog-dita.txt b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/catalog-dita.txt
new file mode 100644
index 0000000..1b5adff
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/catalog-dita.txt
@@ -0,0 +1,94 @@
+-- Catalog for Dita --
+--             (C) Copyright OASIS Open 2005, 2006.              --
+--             (C) Copyright IBM Corporation 2001, 2004.         --
+--             All Rights Reserved.                              --
+-- UPDATES:                                                      --
+--     2005.11.15 RDA: Corrected system ID for topicAttr.mod,    --
+--                     topicDefn.ent                             -- 
+--     2005.11.15 RDA: Corrected public ID for tblDecl.mod       --
+--     2006.06.07 RDA: Added commonElements.mod                  --
+--     2006.06.07 RDA: Added indexing domain                     --
+--     2006.06.20 RDA: Added bookmap and XNAL domain             --
+--     2006.11.30 RDA: Added version specific public IDs         --
+
+-- Dita DTDs --
+
+PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Concept//EN" "concept.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA Concept//EN" "concept.mod"
+
+PUBLIC "-//OASIS//DTD DITA Composite//EN" "ditabase.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Composite//EN" "ditabase.dtd"
+
+PUBLIC "-//OASIS//DTD DITA Glossary//EN" "glossary.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Glossary//EN" "glossary.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA Glossary//EN" "glossary.mod"
+
+PUBLIC "-//OASIS//DTD DITA Reference//EN" "reference.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Reference//EN" "reference.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA Reference//EN" "reference.mod"
+
+PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Task//EN" "task.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA Task//EN" "task.mod"
+
+PUBLIC "-//OASIS//DTD DITA Topic//EN" "topic.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Topic//EN" "topic.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA Topic//EN" "topic.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Topic Definitions//EN" "topicDefn.ent"
+
+-- topicAttr.mod is no longer used --
+PUBLIC "-//OASIS//ENTITIES DITA Topic Class//EN" "topicAttr.mod"
+
+-- Maps --
+
+PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 Map//EN" "map.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA Map//EN" "map.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Map Group Domain//EN" "mapGroup.ent"
+PUBLIC "-//OASIS//ELEMENTS DITA Map Group Domain//EN" "mapGroup.mod"
+
+PUBLIC "-//OASIS//DTD DITA BookMap//EN" "bookmap.dtd"
+PUBLIC "-//OASIS//DTD DITA 1.1 BookMap//EN" "bookmap.dtd"
+PUBLIC "-//OASIS//ELEMENTS DITA BookMap//EN" "bookmap.mod"
+
+-- Domains --
+
+PUBLIC "-//OASIS//ELEMENTS DITA Highlight Domain//EN" "highlightDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Highlight Domain//EN" "highlightDomain.ent"
+
+PUBLIC "-//OASIS//ELEMENTS DITA Indexing Domain//EN" "indexingDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Indexing Domain//EN" "indexingDomain.ent"
+
+PUBLIC "-//OASIS//ELEMENTS DITA Programming Domain//EN" "programmingDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Programming Domain//EN" "programmingDomain.ent"
+
+PUBLIC "-//OASIS//ELEMENTS DITA Software Domain//EN" "softwareDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Software Domain//EN" "softwareDomain.ent"
+
+PUBLIC "-//OASIS//ELEMENTS DITA User Interface Domain//EN" "uiDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA User Interface Domain//EN" "uiDomain.ent"
+
+PUBLIC "-//OASIS//ELEMENTS DITA Utilities Domain//EN" "utilitiesDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Utilities Domain//EN" "utilitiesDomain.ent"
+
+PUBLIC "-//OASIS//ELEMENTS DITA XNAL Domain//EN" "xnalDomain.mod"
+PUBLIC "-//OASIS//ENTITIES DITA XNAL Domain//EN" "xnalDomain.ent"
+
+-- Common --
+
+PUBLIC "-//OASIS//ELEMENTS DITA Common Elements//EN" "commonElements.mod"
+PUBLIC "-//OASIS//ENTITIES DITA Common Elements//EN" "commonElements.ent"
+PUBLIC "-//OASIS//ELEMENTS DITA Metadata//EN" "metaDecl.mod"
+PUBLIC "-//OASIS//ELEMENTS DITA Exchange Table Model//EN" "tblDecl.mod"
+
+-- The following identifiers may be used to refer to DITA 1.0 DTDs. --
+-- Those DTDs are not shipped with this package, so the IDs are     --
+-- commented out.
+-- PUBLIC "-//OASIS//DTD DITA 1.0 Concept//EN" "concept.dtd" --
+-- PUBLIC "-//OASIS//DTD DITA 1.0 Composite//EN" "ditabase.dtd" --
+-- PUBLIC "-//OASIS//DTD DITA 1.0 Reference//EN" "reference.dtd" --
+-- PUBLIC "-//OASIS//DTD DITA 1.0 Task//EN" "task.dtd" --
+-- PUBLIC "-//OASIS//DTD DITA 1.0 Topic//EN" "topic.dtd" --
+-- PUBLIC "-//OASIS//DTD DITA 1.0 Map//EN" "map.dtd" --
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/catalog-dita.xml b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/catalog-dita.xml
new file mode 100644
index 0000000..85b1365
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/catalog-dita.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" ?>
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected system ID for topicAttr.mod      -->
+<!--    2005.11.15 RDA: Corrected public ID for tblDecl.mod        -->
+<!--    2005.11.15 RDA: Removed @xml:base from <group>             -->
+<!--    2006.06.07 RDA: Added commonElements.mod                   -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.20 RDA: Added bookmap and XNAL domain              -->
+<!--    2006.11.30 RDA: Added version specific public IDs          -->
+<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"
+         prefer="public">
+
+<!-- Catalog for Dita -->
+
+<!-- Dita DTDs -->
+
+<group>
+
+  <public publicId="-//OASIS//DTD DITA Concept//EN"
+          uri="concept.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Concept//EN"
+          uri="concept.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Concept//EN"
+          uri="concept.mod"/>
+
+  <public publicId="-//OASIS//DTD DITA Composite//EN"
+          uri="ditabase.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Composite//EN"
+          uri="ditabase.dtd"/>
+
+  <public publicId="-//OASIS//DTD DITA Glossary//EN"
+          uri="glossary.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Glossary//EN"
+          uri="glossary.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Glossary//EN"
+          uri="glossary.mod"/>
+
+  <public publicId="-//OASIS//DTD DITA Reference//EN"
+          uri="reference.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Reference//EN"
+          uri="reference.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Reference//EN"
+          uri="reference.mod"/>
+
+  <public publicId="-//OASIS//DTD DITA Task//EN"
+          uri="task.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Task//EN"
+          uri="task.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Task//EN"
+          uri="task.mod"/>
+
+  <public publicId="-//OASIS//DTD DITA Topic//EN"
+          uri="topic.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Topic//EN"
+          uri="topic.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Topic//EN"
+          uri="topic.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Topic Definitions//EN"
+          uri="topicDefn.ent"/>
+  <!-- topicAttr.mod is no longer used in DITA 1.1; kept for backwards compatibility -->
+  <public publicId="-//OASIS//ENTITIES DITA Topic Class//EN"
+          uri="topicAttr.mod"/>
+
+<!-- Maps -->
+
+  <public publicId="-//OASIS//DTD DITA Map//EN"
+          uri="map.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 Map//EN"
+          uri="map.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Map//EN"
+          uri="map.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Map Group Domain//EN"
+          uri="mapGroup.ent"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Map Group Domain//EN"
+          uri="mapGroup.mod"/>
+
+  <public publicId="-//OASIS//DTD DITA BookMap//EN"
+          uri="bookmap.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.1 BookMap//EN"
+          uri="bookmap.dtd"/>
+  <public publicId="-//OASIS//ELEMENTS DITA BookMap//EN"
+          uri="bookmap.mod"/>
+
+<!-- Domains -->
+
+  <public publicId="-//OASIS//ELEMENTS DITA Highlight Domain//EN"
+          uri="highlightDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Highlight Domain//EN"
+          uri="highlightDomain.ent"/>
+
+  <public publicId="-//OASIS//ELEMENTS DITA Indexing Domain//EN"
+          uri="indexingDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Indexing Domain//EN"
+          uri="indexingDomain.ent"/>
+
+  <public publicId="-//OASIS//ELEMENTS DITA Programming Domain//EN"
+          uri="programmingDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Programming Domain//EN"
+          uri="programmingDomain.ent"/>
+
+  <public publicId="-//OASIS//ELEMENTS DITA Software Domain//EN"
+          uri="softwareDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Software Domain//EN"
+          uri="softwareDomain.ent"/>
+
+  <public publicId="-//OASIS//ELEMENTS DITA User Interface Domain//EN"
+          uri="uiDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA User Interface Domain//EN"
+          uri="uiDomain.ent"/>
+
+  <public publicId="-//OASIS//ELEMENTS DITA Utilities Domain//EN"
+          uri="utilitiesDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Utilities Domain//EN"
+          uri="utilitiesDomain.ent"/>
+
+  <public publicId="-//OASIS//ELEMENTS DITA XNAL Domain//EN"
+          uri="xnalDomain.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA XNAL Domain//EN"
+          uri="xnalDomain.ent"/>
+
+<!-- Common -->
+
+  <public publicId="-//OASIS//ELEMENTS DITA Common Elements//EN"
+          uri="commonElements.mod"/>
+  <public publicId="-//OASIS//ENTITIES DITA Common Elements//EN"
+          uri="commonElements.ent"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Metadata//EN"
+          uri="metaDecl.mod"/>
+  <public publicId="-//OASIS//ELEMENTS DITA Exchange Table Model//EN"
+          uri="tblDecl.mod"/>
+</group>
+
+<!-- The following identifiers may be used to refer to DITA 1.0 DTDs.
+     Those DTDs are not shipped with this package, so the IDs are
+     commented out. -->
+<!--<group>
+  <public publicId="-//OASIS//DTD DITA 1.0 Concept//EN"
+          uri="concept.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.0 Composite//EN"
+          uri="ditabase.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.0 Reference//EN"
+          uri="reference.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.0 Task//EN"
+          uri="task.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.0 Topic//EN"
+          uri="topic.dtd"/>
+  <public publicId="-//OASIS//DTD DITA 1.0 Map//EN"
+          uri="map.dtd"/>
+</group>-->
+
+</catalog>
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/commonElements.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/commonElements.ent
new file mode 100644
index 0000000..acdfd68
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/commonElements.ent
@@ -0,0 +1,128 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Common Element Entities                      -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+PUBLIC"-//OASIS//ENTITIES DITA Common Elements//EN"
+      Delivered as file "commonElements.ent"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the definitions for elements used in    -->
+<!--             both maps and topics                              -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+<!--                    Elements in commonElements.mod             -->
+<!ENTITY % alt          "alt"                                        >
+<!ENTITY % boolean      "boolean"                                    >
+<!ENTITY % cite         "cite"                                       >
+<!ENTITY % data         "data"                                       >
+<!ENTITY % data-about   "data-about"                                 >
+<!ENTITY % dd           "dd"                                         >
+<!ENTITY % ddhd         "ddhd"                                       >
+<!ENTITY % desc         "desc"                                       >
+<!ENTITY % dl           "dl"                                         >
+<!ENTITY % dlentry      "dlentry"                                    >
+<!ENTITY % dlhead       "dlhead"                                     >
+<!ENTITY % draft-comment 
+                        "draft-comment"                              >
+<!ENTITY % dt           "dt"                                         >
+<!ENTITY % dthd         "dthd"                                       >
+<!ENTITY % fig          "fig"                                        >
+<!ENTITY % figgroup     "figgroup"                                   >
+<!ENTITY % fn           "fn"                                         >
+<!ENTITY % foreign      "foreign"                                    >
+<!ENTITY % image        "image"                                      >
+<!ENTITY % indexterm    "indexterm"                                  >
+<!ENTITY % index-base   "index-base"                                 >
+<!ENTITY % indextermref "indextermref"                               >
+<!ENTITY % itemgroup    "itemgroup"                                  >
+<!ENTITY % keyword      "keyword"                                    >
+<!ENTITY % li           "li"                                         >
+<!ENTITY % lines        "lines"                                      >
+<!ENTITY % lq           "lq"                                         >
+<!ENTITY % note         "note"                                       >
+<!ENTITY % object       "object"                                     >
+<!ENTITY % ol           "ol"                                         >
+<!ENTITY % p            "p"                                          > 
+<!ENTITY % param        "param"                                      >
+<!ENTITY % ph           "ph"                                         >
+<!ENTITY % pre          "pre"                                        >
+<!ENTITY % q            "q"                                          >
+<!ENTITY % required-cleanup     
+                        "required-cleanup"                           >
+<!ENTITY % sl           "sl"                                         > 
+<!ENTITY % sli          "sli"                                        >
+<!ENTITY % simpletable  "simpletable"                                >
+<!ENTITY % state        "state"                                      >
+<!ENTITY % stentry      "stentry"                                    >
+<!ENTITY % sthead       "sthead"                                     >
+<!ENTITY % strow        "strow"                                      >
+<!ENTITY % term         "term"                                       >
+<!ENTITY % title        "title"                                      >
+<!ENTITY % tm           "tm"                                         >
+<!ENTITY % ul           "ul"                                         >
+<!ENTITY % unknown      "unknown"                                    >
+<!ENTITY % xref         "xref"                                       >
+
+<!--                    Elements in tblDecl.mod                    -->
+<!ENTITY % table        "table"                                      >
+<!ENTITY % colspec      "colspec"                                    >
+<!ENTITY % entry        "entry"                                      >
+<!ENTITY % row          "row"                                        >
+<!ENTITY % tbody        "tbody"                                      >
+<!ENTITY % tgroup       "tgroup"                                     >
+<!ENTITY % thead        "thead"                                      >
+
+<!--                    Elements in metaDecl.mod                   -->
+<!ENTITY % audience     "audience"                                   >
+<!ENTITY % author       "author"                                     >
+<!ENTITY % brand        "brand"                                      >
+<!ENTITY % category     "category"                                   >
+<!ENTITY % component    "component"                                  >
+<!ENTITY % copyrholder  "copyrholder"                                >
+<!ENTITY % copyright    "copyright"                                  >
+<!ENTITY % copyryear    "copyryear"                                  >
+<!ENTITY % created      "created"                                    >
+<!ENTITY % critdates    "critdates"                                  >
+<!ENTITY % featnum      "featnum"                                    >
+<!ENTITY % keywords     "keywords"                                   >
+<!ENTITY % othermeta    "othermeta"                                  >
+<!ENTITY % permissions  "permissions"                                >
+<!ENTITY % platform     "platform"                                   >
+<!ENTITY % prodinfo     "prodinfo"                                   >
+<!ENTITY % prodname     "prodname"                                   >
+<!ENTITY % prognum      "prognum"                                    >
+<!ENTITY % publisher    "publisher"                                  >
+<!ENTITY % resourceid   "resourceid"                                 >
+<!ENTITY % revised      "revised"                                    >
+<!ENTITY % series       "series"                                     >
+<!ENTITY % source       "source"                                     >
+<!ENTITY % vrm          "vrm"                                        >
+<!ENTITY % vrmlist      "vrmlist"                                    >
+
+<!-- ================== End Common Element Entities ============== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/commonElements.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/commonElements.mod
new file mode 100644
index 0000000..7a03c8c
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/commonElements.mod
@@ -0,0 +1,797 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Common Elements                              -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Common Elements//EN"
+      Delivered as file "commonElements.mod"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for content elements used in both      -->
+<!--             topics and maps.                                  -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2006.06.06 RDA: Add data element                           -->
+<!--    2006.06.07 RDA: Add @scale to image                        -->
+<!--    2006.06.07 RDA: Add index-base element                     -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.06.07 RDA: Add unknown element                        -->
+<!--    2006.06.14 RDA: Add dir attribute to localization-atts     -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+<!ENTITY % commonDefns   PUBLIC 
+                       "-//OASIS//ENTITIES DITA Common Elements//EN" 
+                       "commonElements.ent"                          >
+%commonDefns;
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+
+<!--                   Phrase/inline elements of various classes   -->
+<!ENTITY % basic.ph    "%ph; | %term; | %xref; | %cite; | %q; |
+                        %boolean; | %state; | %keyword; | %tm;"      >
+
+<!--                   Elements common to most body-like contexts  -->
+<!ENTITY % basic.block "%p; | %lq; | %note; | %dl; | %ul; | %ol;|  
+                        %sl; | %pre; | %lines; | %fig; | %image; | 
+                        %object; |  %table; | %simpletable;">
+
+<!-- class groupings to preserve in a schema -->
+
+<!ENTITY % basic.phandblock     "%basic.ph; | %basic.block;"         >
+
+
+<!-- Exclusions: models modified by removing excluded content      -->
+<!ENTITY % basic.ph.noxref
+                      "%ph;|%term;|              %q;|%boolean;|%state;|%keyword;|%tm;">
+<!ENTITY % basic.ph.notm
+                      "%ph;|%term;|%xref;|%cite;|%q;|%boolean;|%state;|%keyword;     ">
+
+
+<!ENTITY % basic.block.notbl
+                      "%p;|%lq;|%note;|%dl;|%ul;|%ol;|%sl;|%pre;|%lines;|%fig;|%image;|%object;">
+<!ENTITY % basic.block.nonote
+                      "%p;|%lq;|       %dl;|%ul;|%ol;|%sl;|%pre;|%lines;|%fig;|%image;|%object;|%table;|%simpletable;">
+<!ENTITY % basic.block.nopara
+                      "    %lq;|%note;|%dl;|%ul;|%ol;|%sl;|%pre;|%lines;|%fig;|%image;|%object;|%table;|%simpletable;">
+<!ENTITY % basic.block.nolq
+                      "%p;|     %note;|%dl;|%ul;|%ol;|%sl;|%pre;|%lines;|%fig;|%image;|%object;|%table;|%simpletable;">
+<!ENTITY % basic.block.notbnofg
+                      "%p;|%lq;|%note;|%dl;|%ul;|%ol;|%sl;|%pre;|%lines;|      %image;|%object;">
+<!ENTITY % basic.block.notbfgobj
+                      "%p;|%lq;|%note;|%dl;|%ul;|%ol;|%sl;|%pre;|%lines;|      %image;">
+
+
+<!-- Inclusions: defined sets that can be added into appropriate models -->
+<!ENTITY % txt.incl             '%draft-comment;|%required-cleanup;|%fn;|%indextermref;|%indexterm;'>
+
+<!-- Metadata elements intended for specialization -->
+<!ENTITY % data.elements.incl   "%data;|%data-about;"                >
+<!ENTITY % foreign.unknown.incl "%foreign;|%unknown;"                >
+
+<!-- Predefined content model groups, based on the previous, element-only categories: -->
+<!-- txt.incl is appropriate for any mixed content definitions (those that have PCDATA) -->
+<!-- the context for blocks is implicitly an InfoMaster "containing_division" -->
+<!ENTITY % listitem.cnt         "#PCDATA | %basic.ph; | %basic.block; |%itemgroup;| %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % itemgroup.cnt        "#PCDATA | %basic.ph; | %basic.block; |             %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % title.cnt            "#PCDATA | %basic.ph.noxref; | %image; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % xreftext.cnt         "#PCDATA | %basic.ph.noxref; | %image; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % xrefph.cnt           "#PCDATA | %basic.ph.noxref; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % shortquote.cnt       "#PCDATA | %basic.ph; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % para.cnt             "#PCDATA | %basic.ph; | %basic.block.nopara; | %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % note.cnt             "#PCDATA | %basic.ph; | %basic.block.nonote; | %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % longquote.cnt        "#PCDATA | %basic.ph; | %basic.block.nolq;   | %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % tblcell.cnt          "#PCDATA | %basic.ph; | %basic.block.notbl;  | %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % desc.cnt             "#PCDATA | %basic.ph; | %basic.block.notbfgobj; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % ph.cnt               "#PCDATA | %basic.ph; | %image;              | %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % fn.cnt               "#PCDATA | %basic.ph; | %basic.block.notbl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % term.cnt             "#PCDATA | %basic.ph; | %image; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % defn.cnt             "#PCDATA | %basic.ph; | %basic.block; |%itemgroup;| %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % pre.cnt              "#PCDATA | %basic.ph; | %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % fig.cnt              "%basic.block.notbnofg; | %simpletable; | %xref; | %fn;| %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % words.cnt            "#PCDATA | %keyword; | %term; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % data.cnt             "%words.cnt;|%image;|%object;|%ph;|%title;">
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+<!-- Copied into metaDecl.mod -->
+<!--<!ENTITY % date-format 'CDATA'                                       >-->
+
+<!ENTITY % display-atts  
+            'scale     (50|60|70|80|90|100|110|120|140|160|
+                        180|200|-dita-use-conref-target)   #IMPLIED
+             frame     (top | bottom |topbot | all |
+                        sides | none | 
+                        -dita-use-conref-target)           #IMPLIED
+             expanse   (page | column | textline | 
+                        -dita-use-conref-target)           #IMPLIED' >
+
+<!-- Provide a default of no attribute extensions -->
+<!ENTITY % props-attribute-extensions " ">
+<!ENTITY % base-attribute-extensions  " ">
+
+<!ENTITY % filter-atts
+            'props      CDATA                              #IMPLIED
+             platform   CDATA                              #IMPLIED
+             product    CDATA                              #IMPLIED
+             audience   CDATA                              #IMPLIED
+             otherprops CDATA                              #IMPLIED
+             %props-attribute-extensions;                          ' >
+
+<!ENTITY % select-atts   
+            '%filter-atts;
+             base       CDATA                              #IMPLIED
+             %base-attribute-extensions;
+             importance 
+                       (obsolete | deprecated | optional | 
+                        default | low | normal | high | 
+                        recommended | required | urgent | 
+                        -dita-use-conref-target )          #IMPLIED
+             rev        CDATA                              #IMPLIED
+             status    (new | changed | deleted | 
+                        unchanged | 
+                        -dita-use-conref-target)           #IMPLIED' >
+
+<!ENTITY % id-atts  
+            'id         NMTOKEN                            #IMPLIED
+             conref     CDATA                              #IMPLIED' >
+
+<!-- Attributes related to localization that are used everywhere   -->
+<!ENTITY % localization-atts  
+            'translate (yes | no | 
+                        -dita-use-conref-target)           #IMPLIED
+             xml:lang   NMTOKEN                            #IMPLIED
+             dir       (ltr | rtl | lro | rlo | 
+                        -dita-use-conref-target)           #IMPLIED' >
+<!-- The following entity should be used when defaulting a new
+     element to translate="no", so that other (or new) localization
+     attributes will always be included.   -->
+<!ENTITY % localization-atts-translate-no  
+            'translate (yes | no | 
+                        -dita-use-conref-target)           "no"
+             xml:lang   NMTOKEN                            #IMPLIED
+             dir       (ltr | rtl | lro | rlo | 
+                        -dita-use-conref-target)           #IMPLIED' >
+             
+<!ENTITY % univ-atts     
+            '%id-atts;
+             %select-atts;
+             %localization-atts;' >
+<!ENTITY % univ-atts-translate-no     
+            '%id-atts;
+             %select-atts;
+             %localization-atts-translate-no;' >
+
+<!ENTITY % global-atts    
+            'xtrc       CDATA                              #IMPLIED
+             xtrf       CDATA                              #IMPLIED'>
+             
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+<!--                    LONG NAME: Data About                      -->
+<!ELEMENT data-about  ((%data;), (%data;|%data-about;)*)>
+<!ATTLIST data-about  %univ-atts;
+             href       CDATA                            #IMPLIED
+             format     CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!ENTITY % data-element-atts
+            '%univ-atts;
+             name       CDATA                            #IMPLIED
+             datatype   CDATA                            #IMPLIED
+             value      CDATA                            #IMPLIED
+             href       CDATA                            #IMPLIED
+             format     CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass
+                        CDATA                            #IMPLIED'   >
+             
+<!--                    LONG NAME: Data element                    -->
+<!ELEMENT data    (%data.cnt;)*>
+<!ATTLIST data    %data-element-atts;                                >
+
+<!--                    LONG NAME: Unknown element                 -->
+<!ELEMENT unknown ANY>
+<!ATTLIST unknown
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Foreign content element         -->
+<!ELEMENT foreign ANY>
+<!ATTLIST foreign
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Title                           -->
+<!--                    This is referenced inside CALS table       -->
+<!ELEMENT title         (%title.cnt;)*                               > 
+<!ATTLIST title         
+             %id-atts;
+             %localization-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Short Description               -->
+<!ELEMENT shortdesc     (%title.cnt;)*                               >
+<!ATTLIST shortdesc    
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Description                     -->
+<!--                    Desc is used in context with figure and 
+                        table titles and also for content models 
+                        within linkgroup and object (for 
+                        accessibility)                             -->
+<!ELEMENT desc          (%desc.cnt;)*                                >
+<!ATTLIST desc           
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!-- ============================================================= -->
+<!--                    BASIC DOCUMENT ELEMENT DECLARATIONS        -->
+<!--                    (rich text)                                -->
+<!-- ============================================================= -->
+
+<!--                    LONG NAME: Paragraph                       -->
+<!ELEMENT p             (%para.cnt;)*                                >
+<!ATTLIST p              
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Note                            -->
+<!ELEMENT note          (%note.cnt;)*                                >
+<!ATTLIST note            
+             type       (note | tip | fastpath | restriction |
+                         important | remember| attention|
+                         caution | danger | other | 
+                         -dita-use-conref-target)        #IMPLIED             
+             spectitle  CDATA                            #IMPLIED
+             othertype  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Long Quote (Excerpt)            -->
+<!ELEMENT lq            (%longquote.cnt;)*                           >
+<!ATTLIST lq              
+             href       CDATA                           #IMPLIED
+             keyref     CDATA                           #IMPLIED
+             type       (external | internal | 
+                         bibliographic | 
+                         -dita-use-conref-target)       #IMPLIED
+             reftitle   CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Quoted text                     -->
+<!ELEMENT q             (%shortquote.cnt;)*                          >
+<!ATTLIST q              
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Simple List                     -->
+<!ELEMENT sl            (%sli;)+                                     >
+<!ATTLIST sl            
+             compact    (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Simple List Item                -->
+<!ELEMENT sli           (%ph.cnt;)*                                  >
+<!ATTLIST sli             
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Unordered List                  -->
+<!ELEMENT ul            (%li;)+                                      >
+<!ATTLIST ul            
+             compact    (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Ordered List                    -->
+<!ELEMENT ol            (%li;)+                                      >
+<!ATTLIST ol              
+             compact    (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: List Item                       -->
+<!ELEMENT li            (%listitem.cnt;)*                            >
+<!ATTLIST li             
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Item Group                      -->
+<!ELEMENT itemgroup     (%itemgroup.cnt;)*                           >
+<!ATTLIST itemgroup       
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Definition List                 -->
+<!ELEMENT dl            ((%dlhead;)?, (%dlentry;)+)                  >
+<!ATTLIST dl              
+             compact    (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Definition List Head            -->
+<!ELEMENT dlhead        ((%dthd;)?, (%ddhd;)? )                      >
+<!ATTLIST dlhead        
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Term Header                     -->
+<!ELEMENT dthd          (%title.cnt;)*                               >
+<!ATTLIST dthd           
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Definition Header               -->
+<!ELEMENT ddhd          (%title.cnt;)*                               >
+<!ATTLIST ddhd           
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Definition List Entry           -->
+<!ELEMENT dlentry       ((%dt;)+, (%dd;)+ )                          >
+<!ATTLIST dlentry       
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+
+<!--                    LONG NAME: Definition Term                 -->  
+<!ELEMENT dt            (%term.cnt;)*                                >
+<!ATTLIST dt            
+             keyref     CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Definition Description          -->
+<!ELEMENT dd            (%defn.cnt;)*                                >
+<!ATTLIST dd           
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Figure                          -->
+<!ELEMENT fig           ((%title;)?, (%desc;)?, 
+                         (%figgroup; | %fig.cnt;)* )                 >
+<!ATTLIST fig          
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Figure Group                    -->
+<!ELEMENT figgroup      ((%title;)?, 
+                         (%figgroup; | %xref; | %fn; | %ph; | 
+                          %keyword;)* )                              >
+<!ATTLIST figgroup     
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Preformatted Text               -->
+<!ELEMENT pre           (%pre.cnt;)*                                 >                                
+<!ATTLIST pre          
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             xml:space  (preserve)               #FIXED 'preserve'
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Line Respecting Text            -->
+<!ELEMENT lines         (%pre.cnt;)*                                 >
+<!ATTLIST lines           
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             xml:space  (preserve)               #FIXED 'preserve'
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!-- ============================================================= -->
+<!--                   BASE FORM PHRASE TYPES                      -->
+<!-- ============================================================= -->
+
+<!--                    LONG NAME: Keyword                         -->
+<!ELEMENT keyword       (#PCDATA | %tm;)*                            >
+<!ATTLIST keyword       
+             keyref     CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                           #IMPLIED     >
+
+
+<!--                    LONG NAME: Term                            -->
+<!ELEMENT term          (#PCDATA | %tm;)*                            >
+<!ATTLIST term          
+             keyref     CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Phrase                          -->
+<!ELEMENT ph            (%ph.cnt;)*                                  >  
+<!ATTLIST ph              
+             keyref     CDATA                           #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Trade Mark                      -->
+<!ELEMENT tm            (#PCDATA | %tm;)*                            >
+<!ATTLIST tm
+             %univ-atts;
+             trademark  CDATA                           #IMPLIED
+             tmowner    CDATA                           #IMPLIED
+             tmtype     (tm | reg | service | 
+                         -dita-use-conref-target)       #REQUIRED
+             tmclass    CDATA                           #IMPLIED     >
+
+
+<!--                    LONG NAME: Boolean  (deprecated)           -->
+<!ELEMENT boolean       EMPTY                                        >
+<!ATTLIST boolean           
+             state      (yes | no | 
+                         -dita-use-conref-target)        #REQUIRED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: State                           -->
+<!--                    A state can have a name and a string value, 
+                        even if empty or indeterminate             -->
+<!ELEMENT state         EMPTY                                        >
+<!ATTLIST state          
+             name       CDATA                            #REQUIRED
+             value      CDATA                            #REQUIRED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Image Data                      -->
+<!ELEMENT image         (%alt;)?                                     >
+<!ATTLIST image           
+             href       CDATA                            #REQUIRED
+             keyref     NMTOKEN                          #IMPLIED
+             alt        CDATA                            #IMPLIED
+             longdescref 
+                        CDATA                            #IMPLIED
+             height     NMTOKEN                          #IMPLIED
+             width      NMTOKEN                          #IMPLIED
+             align      CDATA                            #IMPLIED
+             scale      NMTOKEN                          #IMPLIED
+             placement  (inline | break | 
+                         -dita-use-conref-target)        "inline"
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Alternate text                  -->
+<!ELEMENT alt            (%words.cnt;)*>
+<!ATTLIST alt             %univ-atts;
+                          outputclass CDATA #IMPLIED
+>
+
+<!--                    LONG NAME: Object (Streaming/Executable 
+                                   Data)                           -->
+<!-- The longdescre attribute is an error which appeared in the
+     original DTD implementation of OASIS DITA. It is an error that
+     is not part of the standard. It was left here to provide time
+     to change documents, but it will be removed at a later date.
+     The longdescref (with ending F) should be used instead.       -->
+<!ELEMENT object        ((%desc;)?, (%param;)*, 
+                         (%foreign.unknown.incl;)*)                  >
+<!ATTLIST object
+             declare    (declare)                        #IMPLIED
+             classid    CDATA                            #IMPLIED
+             codebase   CDATA                            #IMPLIED
+             data       CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             codetype   CDATA                            #IMPLIED
+             archive    CDATA                            #IMPLIED
+             standby    CDATA                            #IMPLIED
+             height     NMTOKEN                          #IMPLIED
+             width      NMTOKEN                          #IMPLIED
+             usemap     CDATA                            #IMPLIED
+             name       CDATA                            #IMPLIED
+             tabindex   NMTOKEN                          #IMPLIED
+             longdescref
+                        CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    
+             longdescre CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Parameter                       -->
+<!ELEMENT param         EMPTY>
+<!ATTLIST param
+             %univ-atts;
+             name       CDATA                            #REQUIRED
+             value      CDATA                            #IMPLIED
+             valuetype  (data | ref | object | 
+                         -dita-use-conref-target)        #IMPLIED
+             type       CDATA                            #IMPLIED    >  
+
+
+<!--                    LONG NAME: Simple Table                    -->
+<!ELEMENT simpletable   ((%sthead;)?, (%strow;)+)                    >
+<!ATTLIST simpletable     
+             relcolwidth 
+                        CDATA                            #IMPLIED
+             keycol     NMTOKEN                          #IMPLIED
+             refcols    NMTOKENS                         #IMPLIED
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Simple Table Head               -->
+<!ELEMENT sthead        (%stentry;)+                                 >
+<!ATTLIST sthead     
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Simple Table Row                -->
+<!ELEMENT strow         (%stentry;)*                                 >
+<!ATTLIST strow        
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Simple Table Cell (entry)       -->
+<!ELEMENT stentry       (%tblcell.cnt;)*                             >
+<!ATTLIST stentry 
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Review Comments Block           -->
+<!ELEMENT draft-comment (#PCDATA | %basic.phandblock; | 
+                         %data.elements.incl; | 
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST draft-comment   
+             author     CDATA                            #IMPLIED
+             time       CDATA                            #IMPLIED
+             disposition  
+                        (issue | open | accepted | rejected |
+                         deferred| duplicate | reopened |
+                         unassigned | completed | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-translate-no;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Required Cleanup Block          -->
+<!ELEMENT required-cleanup 
+                        ANY                                          >
+<!ATTLIST required-cleanup 
+             remap      CDATA                            #IMPLIED
+             %univ-atts-translate-no;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Footnote                        -->
+<!ELEMENT fn            (%fn.cnt;)*                                  >
+<!ATTLIST fn              
+             callout    CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Index Term                      -->
+<!ELEMENT indexterm     (%words.cnt;|%indexterm;|%index-base;)*      >
+<!ATTLIST indexterm
+             keyref     CDATA                             #IMPLIED
+             start      CDATA                             #IMPLIED
+             end        CDATA                             #IMPLIED
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Index Base                      -->
+<!ELEMENT index-base    (%words.cnt;|%indexterm;)*                   >
+<!ATTLIST index-base
+             keyref     CDATA                             #IMPLIED
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Index term reference            -->
+<!ELEMENT indextermref   EMPTY>
+<!ATTLIST indextermref    keyref CDATA #REQUIRED
+                          %univ-atts;
+>
+
+<!--                    LONG NAME: Citation (bibliographic source) -->
+<!ELEMENT cite          (%xrefph.cnt;)*                              >
+<!ATTLIST cite            
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Cross Reference/Link            -->
+<!ELEMENT xref          (%xreftext.cnt; | %desc;)*                   >
+<!ATTLIST xref            
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED
+             type       CDATA                            #IMPLIED
+             %univ-atts;
+             format     CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!ENTITY % tableXML       PUBLIC  
+"-//OASIS//ELEMENTS DITA Exchange Table Model//EN" 
+"tblDecl.mod"                                                        >
+%tableXML;
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+             
+<!ATTLIST alt       %global-atts;  class CDATA "- topic/alt "        >
+<!ATTLIST boolean   %global-atts;  class CDATA "- topic/boolean "    >
+<!ATTLIST cite      %global-atts;  class CDATA "- topic/cite "       >
+<!ATTLIST dd        %global-atts;  class CDATA "- topic/dd "         >
+<!ATTLIST data      %global-atts;  class CDATA "- topic/data "       >
+<!ATTLIST data-about
+                    %global-atts;  class CDATA "- topic/data-about ">
+<!ATTLIST ddhd      %global-atts;  class CDATA "- topic/ddhd "       >
+<!ATTLIST desc      %global-atts;  class CDATA "- topic/desc "       >
+<!ATTLIST dl        %global-atts;  class CDATA "- topic/dl "         >
+<!ATTLIST dlentry   %global-atts;  class CDATA "- topic/dlentry "    >
+<!ATTLIST dlhead    %global-atts;  class CDATA "- topic/dlhead "     >
+<!ATTLIST draft-comment 
+                    %global-atts;  class CDATA "- topic/draft-comment ">
+<!ATTLIST dt        %global-atts;  class CDATA "- topic/dt "         >
+<!ATTLIST dthd      %global-atts;  class CDATA "- topic/dthd "       >
+<!ATTLIST fig       %global-atts;  class CDATA "- topic/fig "        >
+<!ATTLIST figgroup  %global-atts;  class CDATA "- topic/figgroup "   >
+<!ATTLIST fn        %global-atts;  class CDATA "- topic/fn "         >
+<!ATTLIST foreign   %global-atts;  class CDATA "- topic/foreign "    >
+<!ATTLIST image     %global-atts;  class CDATA "- topic/image "      >
+<!ATTLIST indexterm %global-atts;  class CDATA "- topic/indexterm "  >
+<!ATTLIST index-base %global-atts;  class CDATA "- topic/index-base ">
+<!ATTLIST indextermref 
+                    %global-atts;  class CDATA "- topic/indextermref ">
+<!ATTLIST itemgroup %global-atts;  class CDATA "- topic/itemgroup "  >
+<!ATTLIST keyword   %global-atts;  class CDATA "- topic/keyword "    >
+<!ATTLIST li        %global-atts;  class CDATA "- topic/li "         >
+<!ATTLIST lines     %global-atts;  class CDATA "- topic/lines "      >
+<!ATTLIST lq        %global-atts;  class CDATA "- topic/lq "         >
+<!ATTLIST note      %global-atts;  class CDATA "- topic/note "       >
+<!ATTLIST object    %global-atts;  class CDATA "- topic/object "     >
+<!ATTLIST ol        %global-atts;  class CDATA "- topic/ol "         >
+<!ATTLIST p         %global-atts;  class CDATA "- topic/p "          >
+<!ATTLIST param     %global-atts;  class CDATA "- topic/param "      >
+<!ATTLIST ph        %global-atts;  class CDATA "- topic/ph "         >
+<!ATTLIST pre       %global-atts;  class CDATA "- topic/pre "        >
+<!ATTLIST q         %global-atts;  class CDATA "- topic/q "          >
+<!ATTLIST required-cleanup 
+                    %global-atts;  class CDATA "- topic/required-cleanup ">
+<!ATTLIST simpletable 
+                    %global-atts;  class CDATA "- topic/simpletable ">
+<!ATTLIST sl        %global-atts;  class CDATA "- topic/sl "         >
+<!ATTLIST sli       %global-atts;  class CDATA "- topic/sli "        >
+<!ATTLIST state     %global-atts;  class CDATA "- topic/state "      >
+<!ATTLIST stentry   %global-atts;  class CDATA "- topic/stentry "    >
+<!ATTLIST sthead    %global-atts;  class CDATA "- topic/sthead "     >
+<!ATTLIST strow     %global-atts;  class CDATA "- topic/strow "      >
+<!ATTLIST term      %global-atts;  class CDATA "- topic/term "       >
+<!ATTLIST title     %global-atts;  class CDATA "- topic/title "      >
+<!ATTLIST tm        %global-atts;  class CDATA "- topic/tm "         >
+<!ATTLIST ul        %global-atts;  class CDATA "- topic/ul "         >
+<!ATTLIST unknown   %global-atts;  class CDATA "- topic/unknown "    >
+<!ATTLIST xref      %global-atts;  class CDATA "- topic/xref "       >
+
+
+<!-- ================== End Common Elements Module  ============== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/concept.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/concept.dtd
new file mode 100644
index 0000000..9ac4442
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/concept.dtd
@@ -0,0 +1,180 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Concept DTD                                  -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//DTD DITA Concept//EN"
+      Delivered as file "concept.dtd"                              -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Concept//EN"                        -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA Concepts                     -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.21 RDA: Added props attribute extensions           -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
+"uiDomain.ent"                                                       >
+%ui-d-dec;
+
+<!ENTITY % hi-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
+"highlightDomain.ent"                                                >
+%hi-d-dec;
+
+<!ENTITY % pr-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Programming Domain//EN" 
+"programmingDomain.ent"                                              >
+%pr-d-dec;
+
+<!ENTITY % sw-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Software Domain//EN" 
+"softwareDomain.ent"                                                 >
+%sw-d-dec;
+
+<!ENTITY % ut-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
+"utilitiesDomain.ent"                                                >
+%ut-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+
+<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
+                                   %ui-d-pre;"                       >
+<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
+                                   %ui-d-keyword;"                   >
+<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
+                                    %hi-d-ph;     | %ui-d-ph;"       >
+<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
+<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC NESTING OVERRIDE                     -->
+<!-- ============================================================= -->
+
+<!--                    Redefine the infotype entity to exclude 
+                        other topic types and disallow nesting     -->
+<!ENTITY % concept-info-types 
+                        "concept"                                    >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
+                         &ut-d-att; &indexing-d-att;"                >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC ELEMENT INTEGRATION                  -->
+<!-- ============================================================= -->
+
+<!--                    Embed topic to get generic elements        -->
+<!ENTITY % topic-type   PUBLIC 
+"-//OASIS//ELEMENTS DITA Topic//EN" 
+"topic.mod"                                                          >
+%topic-type;
+
+
+<!--                    Embed concept to get specific elements     -->
+<!ENTITY % concept-typemod 
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Concept//EN" 
+"concept.mod"                                                        >                                                     
+%concept-typemod;
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
+"uiDomain.mod"                                                       >
+%ui-d-def;
+
+<!ENTITY % hi-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
+"highlightDomain.mod"                                                >
+%hi-d-def;
+
+<!ENTITY % pr-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
+"programmingDomain.mod"                                              >
+%pr-d-def;
+
+<!ENTITY % sw-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Software Domain//EN" 
+"softwareDomain.mod"                                                 >
+%sw-d-def;
+
+<!ENTITY % ut-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
+"utilitiesDomain.mod"                                                >
+%ut-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN"
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+<!-- ================== End DITA Concept DTD  ==================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/concept.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/concept.mod
new file mode 100644
index 0000000..6e915e7
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/concept.mod
@@ -0,0 +1,129 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Concept                                      -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Concept//EN"
+      Delivered as file "concept.mod"                              -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Define elements and specialization atttributes    -->
+<!--             for Concepts                                      -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Removed old declaration for                -->
+<!--                    conceptClasses entity                      -->
+<!--    2006.06.07 RDA: Added <abstract> element                   -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.11.30 RDA: Remove #FIXED from DITAArchVersion         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ARCHITECTURE ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!-- default namespace prefix for DITAArchVersion attribute can be
+     overridden through predefinition in the document type shell   -->
+<!ENTITY % DITAArchNSPrefix
+                       "ditaarch"                                    >
+
+<!-- must be instanced on each topic type                          -->
+<!ENTITY % arch-atts "
+             xmlns:%DITAArchNSPrefix; 
+                        CDATA                              #FIXED
+                       'http://dita.oasis-open.org/architecture/2005/'
+             %DITAArchNSPrefix;:DITAArchVersion
+                        CDATA                              '1.1'"    >
+
+
+<!-- ============================================================= -->
+<!--                   SPECIALIZATION OF DECLARED ELEMENTS         -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % concept-info-types "%info-types;">
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+ 
+
+<!ENTITY % concept     "concept"                                     >
+<!ENTITY % conbody     "conbody"                                     >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY included-domains ""                                         >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Concept                         -->
+<!ELEMENT concept       ((%title;), (%titlealts;)?,
+                         (%shortdesc; | %abstract;)?, 
+                         (%prolog;)?, (%conbody;)?, (%related-links;)?,
+                         (%concept-info-types;)* )                   >
+<!ATTLIST concept        
+             id         ID                               #REQUIRED
+             conref     CDATA                            #IMPLIED
+             %select-atts;
+             %localization-atts;
+             %arch-atts;
+             outputclass 
+                        CDATA                            #IMPLIED
+             domains    CDATA                "&included-domains;"    >
+
+
+<!--                    LONG NAME: Concept Body                    -->
+<!ELEMENT conbody       ((%body.cnt;)*, (%section;|%example;)* )     >
+<!ATTLIST conbody         
+             %id-atts;
+             %localization-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST concept     %global-atts;  class CDATA "- topic/topic concept/concept ">
+<!ATTLIST conbody     %global-atts;  class CDATA "- topic/body  concept/conbody ">
+
+ 
+<!-- ================== End DITA Concept  ======================== -->
+
+
+
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/ditabase.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/ditabase.dtd
new file mode 100644
index 0000000..ec382b2
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/ditabase.dtd
@@ -0,0 +1,218 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA BASE DTD                                     -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//DTD DITA Composite//EN"
+      Delivered as file "ditabase.dtd"                             -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Composite//EN"                      -->
+ 
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Base DTD holds all the information types          -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.21 RDA: Added props attribute extensions           -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
+"uiDomain.ent"                                                       >
+%ui-d-dec;
+
+<!ENTITY % hi-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
+"highlightDomain.ent"                                                >
+%hi-d-dec;
+
+<!ENTITY % pr-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Programming Domain//EN" 
+"programmingDomain.ent"                                              >
+%pr-d-dec;
+
+<!ENTITY % sw-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Software Domain//EN" 
+"softwareDomain.ent"                                                 >
+%sw-d-dec;
+
+<!ENTITY % ut-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
+"utilitiesDomain.ent"                                                >
+%ut-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+
+<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
+                                   %ui-d-pre;"                       >
+<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
+                                   %ui-d-keyword;"                   >
+<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
+                                    %hi-d-ph;     | %ui-d-ph;"       >
+<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
+<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC NESTING OVERRIDE                     -->
+<!-- ============================================================= -->
+
+<!--                    Redefine the infotype entity to exclude 
+                        other topic types and disallow nesting     -->
+<!ENTITY % glossentry-info-types 
+                        "no-topic-nesting"                           >
+<!ENTITY % info-types   "topic | concept | task | reference |
+                         glossentry"                                 >
+
+
+<!-- ============================================================= -->
+<!--                    LOCALLY DEFINED CONTAINMENT                -->
+<!-- ============================================================= -->
+<!--                    Define a containment for topics for editor 
+                        support                                    -->
+
+<!ELEMENT dita          (%info-types;)+                              >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
+                         &ut-d-att; &indexing-d-att;"                >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC ELEMENT INTEGRATION                  -->
+<!-- ============================================================= -->
+<!--                    Embed topic to get generic elements        -->
+<!ENTITY % topic-type   PUBLIC 
+"-//OASIS//ELEMENTS DITA Topic//EN" 
+"topic.mod"                                                          >
+%topic-type;
+
+
+<!--                    Embed concept to get specific elements     -->
+<!ENTITY % concept-typemod 
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Concept//EN" 
+"concept.mod"                                                        >                                                     
+%concept-typemod;
+
+<!--                    Embed task to get specific elements        -->
+<!ENTITY % task-typemod PUBLIC
+ "-//OASIS//ELEMENTS DITA Task//EN" 
+"task.mod"                                                           >
+%task-typemod;
+
+<!--                     Embed reference to get specific elements  -->
+<!ENTITY % reference-typemod 
+                         PUBLIC 
+"-//OASIS//ELEMENTS DITA Reference//EN" 
+"reference.mod"                                                      >
+%reference-typemod;
+
+<!--                    Embed glossary to get specific elements    -->
+<!ENTITY % glossary-typemod 
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Glossary//EN" 
+"glossary.mod"                                                       >                                                     
+%glossary-typemod;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
+"uiDomain.mod"                                                       >
+%ui-d-def;
+
+<!ENTITY % hi-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
+"highlightDomain.mod"                                                >
+%hi-d-def;
+
+<!ENTITY % pr-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
+"programmingDomain.mod"                                              >
+%pr-d-def;
+
+<!ENTITY % sw-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Software Domain//EN" 
+"softwareDomain.mod"                                                 >
+%sw-d-def;
+
+<!ENTITY % ut-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
+"utilitiesDomain.mod"                                                >
+%ut-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTES                  -->
+<!-- ============================================================= -->
+
+<!ATTLIST dita          %global-atts;                                >
+
+
+<!-- ================== End DITA Base DTD  ======================= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/glossary.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/glossary.dtd
new file mode 100644
index 0000000..686dbd7
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/glossary.dtd
@@ -0,0 +1,182 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Glossary DTD                                 -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//DTD DITA Glossary//EN"
+      Delivered as file "glossary.dtd"                             -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Glossary//EN"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA Glossary topics              -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
+"uiDomain.ent"                                                       >
+%ui-d-dec;
+
+<!ENTITY % hi-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
+"highlightDomain.ent"                                                >
+%hi-d-dec;
+
+<!ENTITY % pr-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Programming Domain//EN" 
+"programmingDomain.ent"                                              >
+%pr-d-dec;
+
+<!ENTITY % sw-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Software Domain//EN" 
+"softwareDomain.ent"                                                 >
+%sw-d-dec;
+
+<!ENTITY % ut-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
+"utilitiesDomain.ent"                                                >
+%ut-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+
+<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
+                                   %ui-d-pre;"                       >
+<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
+                                   %ui-d-keyword;"                   >
+<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
+                                    %hi-d-ph;     | %ui-d-ph;"       >
+<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
+<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC NESTING OVERRIDE                     -->
+<!-- ============================================================= -->
+
+<!--                    Redefine the infotype entity to exclude 
+                        other topic types and disallow nesting     -->
+<!ENTITY % glossentry-info-types 
+                        "no-topic-nesting"                           >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
+                         &ut-d-att; &indexing-d-att;"                >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC ELEMENT INTEGRATION                  -->
+<!-- ============================================================= -->
+
+<!--                    Embed topic to get generic elements        -->
+<!ENTITY % topic-type   PUBLIC 
+"-//OASIS//ELEMENTS DITA Topic//EN" 
+"topic.mod"                                                          >
+%topic-type;
+
+<!ENTITY % concept-typemod 
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Concept//EN" 
+"concept.mod"                                                        >                                                     
+%concept-typemod;
+
+<!--                    Embed glossary to get specific elements    -->
+<!ENTITY % glossary-typemod 
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Glossary//EN" 
+"glossary.mod"                                                       >                                                     
+%glossary-typemod;
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
+"uiDomain.mod"                                                       >
+%ui-d-def;
+
+<!ENTITY % hi-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
+"highlightDomain.mod"                                                >
+%hi-d-def;
+
+<!ENTITY % pr-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
+"programmingDomain.mod"                                              >
+%pr-d-def;
+
+<!ENTITY % sw-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Software Domain//EN" 
+"softwareDomain.mod"                                                 >
+%sw-d-def;
+
+<!ENTITY % ut-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
+"utilitiesDomain.mod"                                                >
+%ut-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+<!-- ================== End DITA Glossary DTD  =================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/glossary.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/glossary.mod
new file mode 100644
index 0000000..94ecb7a
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/glossary.mod
@@ -0,0 +1,130 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Glossary                                     -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Glossary//EN"
+      Delivered as file "glossary.mod"                             -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Define elements and specialization atttributes    -->
+<!--             for Glossary topics                               -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             All Rights Reserved.                              -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ARCHITECTURE ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!-- default namespace prefix for DITAArchVersion attribute can be
+     overridden through predefinition in the document type shell   -->
+<!ENTITY % DITAArchNSPrefix
+                       "ditaarch"                                    >
+
+<!-- must be instanced on each topic type                          -->
+<!ENTITY % arch-atts "
+             xmlns:%DITAArchNSPrefix; 
+                        CDATA                              #FIXED
+                       'http://dita.oasis-open.org/architecture/2005/'
+             %DITAArchNSPrefix;:DITAArchVersion
+                        CDATA                              '1.1'"    >
+
+
+<!-- ============================================================= -->
+<!--                   SPECIALIZATION OF DECLARED ELEMENTS         -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % glossentry-info-types "no-topic-nesting">
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+ 
+
+<!ENTITY % glossentry  "glossentry"                                  >
+<!ENTITY % glossterm   "glossterm"                                   >
+<!ENTITY % glossdef    "glossdef"                                    >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY included-domains ""                                         >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Glossary Entry                  -->
+<!ELEMENT glossentry     ((%glossterm;), (%glossdef;), 
+                          (%related-links;)?,
+                          (%glossentry-info-types;)* )               >
+<!ATTLIST glossentry        
+             id         ID                               #REQUIRED
+             conref     CDATA                            #IMPLIED
+             %select-atts;
+             %localization-atts;
+             %arch-atts;
+             outputclass 
+                        CDATA                            #IMPLIED
+             domains    CDATA                "&included-domains;"    >
+
+
+<!--                    LONG NAME: Glossary Term                   -->
+<!ELEMENT glossterm     (%title.cnt;)*                               >
+<!ATTLIST glossterm         
+             %id-atts;
+             %localization-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Glossary Definition             -->
+<!ELEMENT glossdef      (%section.notitle.cnt; | %shortdesc;)*       >
+<!ATTLIST glossdef         
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST glossentry  %global-atts;  class CDATA "- topic/topic concept/concept glossentry/glossentry ">
+<!ATTLIST glossterm   %global-atts;  class CDATA "- topic/title concept/title glossentry/glossterm ">
+<!ATTLIST glossdef    %global-atts;  class CDATA "- topic/abstract concept/abstract glossentry/glossdef ">
+
+ 
+<!-- ================== End DITA Glossary ======================== -->
+
+
+
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/highlightDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/highlightDomain.ent
new file mode 100644
index 0000000..aa3fa41
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/highlightDomain.ent
@@ -0,0 +1,46 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Highlight Domain                             -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Highlight Domain//EN"
+      Delivered as file "higlightDomain.ent"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the highlight domain      -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    HIGHLIGHT DOMAIN ENTITIES                  -->
+<!-- ============================================================= -->
+
+<!ENTITY % hi-d-ph      "b | u | i | tt | sup | sub"                 >
+
+<!ENTITY   hi-d-att     "(topic hi-d)"                               >
+
+
+<!-- ================== End Highlight Domain Entities ============ -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/highlightDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/highlightDomain.mod
new file mode 100644
index 0000000..6bc59bb
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/highlightDomain.mod
@@ -0,0 +1,122 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Highlight Domain                             -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Highlight Domain//EN"
+      Delivered as file "highlightDomain.mod"                      -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Define elements and specialization attributes     -->
+<!--             for Highlight Domain                              -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected descriptive names for all        -->
+<!--                    elements except bold                       -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!ENTITY % b           "b"                                           >
+<!ENTITY % i           "i"                                           >
+<!ENTITY % u           "u"                                           >     
+<!ENTITY % tt          "tt"                                          >
+<!ENTITY % sup         "sup"                                         >
+<!ENTITY % sub         "sub"                                         >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Bold                            -->
+<!ELEMENT b             (#PCDATA | %basic.ph; | %data.elements.incl; |
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST b              
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Underlined                      -->
+<!ELEMENT u             (#PCDATA | %basic.ph; | %data.elements.incl; |
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST u              
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Italic                          -->
+<!ELEMENT i             (#PCDATA | %basic.ph; | %data.elements.incl; |
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST i             
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Teletype (monospaced)           -->
+<!ELEMENT tt            (#PCDATA | %basic.ph; | %data.elements.incl; |
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST tt            
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Superscript                     -->
+<!ELEMENT sup           (#PCDATA | %basic.ph; | %data.elements.incl; |
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST sup          
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Subscript                       -->
+<!ELEMENT sub           (#PCDATA | %basic.ph; | %data.elements.incl; |
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST sub           
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST b           %global-atts;  class CDATA "+ topic/ph hi-d/b "  >
+<!ATTLIST i           %global-atts;  class CDATA "+ topic/ph hi-d/i "  >
+<!ATTLIST sub         %global-atts;  class CDATA "+ topic/ph hi-d/sub ">
+<!ATTLIST sup         %global-atts;  class CDATA "+ topic/ph hi-d/sup ">
+<!ATTLIST tt          %global-atts;  class CDATA "+ topic/ph hi-d/tt " >
+<!ATTLIST u           %global-atts;  class CDATA "+ topic/ph hi-d/u "  >
+
+
+<!-- ================== DITA Highlight Domain ==================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/indexingDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/indexingDomain.ent
new file mode 100644
index 0000000..7cb52bd
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/indexingDomain.ent
@@ -0,0 +1,48 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Indexing Domain Entities                     -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Indexing Domain//EN"
+      Delivered as file "indexingDomain.ent"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the indexing domain       -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ENTITY % indexing-d-index-base 
+     "index-see | index-see-also | index-sort-as">
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+<!ENTITY indexing-d-att "(topic indexing-d)"                         >
+
+<!-- ================== End Indexing Domain Entities ============= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/indexingDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/indexingDomain.mod
new file mode 100644
index 0000000..2a8859b
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/indexingDomain.mod
@@ -0,0 +1,83 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Indexing  Domain                             -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Indexing Domain//EN"
+      Delivered as file "indexingDomain.mod"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the DITA Indexing Domain           -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!ENTITY % index-see       "index-see"                               >
+<!ENTITY % index-see-also  "index-see-also"                          >
+<!ENTITY % index-sort-as   "index-sort-as"                           >
+
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS for IMAGEMAP          -->
+<!-- ============================================================= -->
+
+<!--                    LONG NAME: Index See                       -->
+<!ELEMENT index-see     (%words.cnt;|%indexterm;)*                   >
+<!ATTLIST index-see
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Index See Also                  -->
+<!ELEMENT index-see-also
+                        (%words.cnt;|%indexterm;)*                   >
+<!ATTLIST index-see-also
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Index Sort As                   -->
+<!ELEMENT index-sort-as (%words.cnt;)*                               >
+<!ATTLIST index-sort-as
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                             >
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST index-see       %global-atts; class CDATA "+ topic/index-base indexing-d/index-see ">
+<!ATTLIST index-see-also  %global-atts; class CDATA "+ topic/index-base indexing-d/index-see-also ">
+<!ATTLIST index-sort-as   %global-atts; class CDATA "+ topic/index-base indexing-d/index-sort-as ">
+ 
+<!-- ================== End Indexing Domain ====================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/map.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/map.dtd
new file mode 100644
index 0000000..4345365
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/map.dtd
@@ -0,0 +1,119 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA MAP DTD                                      -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                        TYPICAL INVOCATION                     -->
+<!--                                                               -->
+<!-- Refer to this file by the following public identifier or an
+     appropriate system identifier:
+PUBLIC "-//OASIS//DTD DITA Map//EN"
+     Delivered as file "map.dtd"                                   -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Map//EN"                            -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA maps                         -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected public ID for map.mod            -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.21 RDA: Added props attribute extensions           -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % mapgroup-d-dec 
+                        PUBLIC 
+"-//OASIS//ENTITIES DITA Map Group Domain//EN" 
+"mapGroup.ent"                                                       >
+%mapgroup-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+<!ENTITY % topicref     "topicref | (%mapgroup-d-topicref;)"         >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&mapgroup-d-att; &indexing-d-att;"          >
+
+<!-- ============================================================= -->
+<!--                    MAP ELEMENT INTEGRATION                    -->
+<!-- ============================================================= -->
+
+
+<!--                    Embed map to get generic elements          -->
+<!--    2005.11.15 RDA: Corrected public ID for map.mod. It was    -->
+<!--             "-//OASIS//Elements DITA Map Group Domain//EN"    -->
+<!ENTITY % map-type     PUBLIC 
+"-//OASIS//ELEMENTS DITA Map//EN" 
+"map.mod"                                                            >
+%map-type;
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % mapgroup-d-def  
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Map Group Domain//EN" 
+"mapGroup.mod"                                                       >
+%mapgroup-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+
+<!-- ================== End DITA Map DTD  ======================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/map.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/map.mod
new file mode 100644
index 0000000..76d4922
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/map.mod
@@ -0,0 +1,338 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Map                                          -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Map//EN"
+      Delivered as file "map.mod"                                  -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the DITA Maps                      -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected public ID in the comment above   -->
+<!--    2005.11.15 RDA: Removed old declaration for topicreftypes  -->
+<!--                      entity                                   -->
+<!--    2006.06.06 RDA: Removed default locktitle="yes" from       -->
+<!--                      %topicref-atts-no-toc;                   -->
+<!--                    Remove keyword declaration                 -->
+<!--                    Add reference to commonElements            -->
+<!--                    Add title element to map                   -->
+<!--                    Add data element to topicmeta              -->
+<!--                    Remove shortdesc declaration               -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.06.14 RDA: Add dir attribute to localization-atts     -->
+<!--    2006.06.14 RDA: Add outputclass attribute to most elemetns -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+<!--    2006.11.30 RDA: Remove #FIXED from DITAArchVersion         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ARCHITECTURE ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!-- default namespace prefix for DITAArchVersion attribute can be
+     overridden through predefinition in the document type shell   -->
+<!ENTITY % DITAArchNSPrefix
+                       "ditaarch"                                    >
+
+<!-- must be instanced on each topic type                          -->
+<!ENTITY % arch-atts "
+             xmlns:%DITAArchNSPrefix; 
+                        CDATA                              #FIXED
+                       'http://dita.oasis-open.org/architecture/2005/'
+             %DITAArchNSPrefix;:DITAArchVersion
+                        CDATA                              '1.1'"    >
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % map         "map"                                         >
+<!ENTITY % anchor      "anchor"                                      >
+<!ENTITY % linktext    "linktext"                                    >
+<!ENTITY % navref      "navref"                                      >
+<!ENTITY % relcell     "relcell"                                     >
+<!ENTITY % relcolspec  "relcolspec"                                  >
+<!ENTITY % relheader   "relheader"                                   >
+<!ENTITY % relrow      "relrow"                                      >
+<!ENTITY % reltable    "reltable"                                    >
+<!ENTITY % searchtitle "searchtitle"                                 >
+<!ENTITY % shortdesc   "shortdesc"                                   >
+<!ENTITY % topicmeta   "topicmeta"                                   >
+<!ENTITY % topicref    "topicref"                                    >
+
+
+<!-- ============================================================= -->
+<!--                    ENTITY DECLARATIONS FOR ATTRIBUTE VALUES   -->
+<!-- ============================================================= -->
+
+
+<!--                    DATE FORMAT                                -->
+<!-- Copied into metaDecl.mod -->
+<!--<!ENTITY % date-format  'CDATA'                               >-->
+
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % topicref-atts 
+            'collection-type 
+                        (choice | unordered |
+                         sequence | family | 
+                         -dita-use-conref-target)         #IMPLIED
+             type       CDATA                             #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)         #IMPLIED
+             locktitle  (yes | no | 
+                         -dita-use-conref-target)         #IMPLIED
+             format     CDATA                             #IMPLIED
+             linking    (none | normal | 
+                         sourceonly | targetonly |
+                         -dita-use-conref-target)         #IMPLIED
+             toc        (yes | no | 
+                         -dita-use-conref-target)         #IMPLIED
+             print      (yes | no | printonly | 
+                         -dita-use-conref-target)         #IMPLIED
+             search     (yes | no | 
+                         -dita-use-conref-target)         #IMPLIED
+             chunk      CDATA                             #IMPLIED'  >
+
+
+<!ENTITY % topicref-atts-no-toc 
+            'collection-type
+                        (choice | unordered | 
+                         sequence | family |
+                         -dita-use-conref-target)         #IMPLIED
+             type       CDATA                             #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)         #IMPLIED
+             locktitle  (yes | no |
+                         -dita-use-conref-target)         #IMPLIED
+             format     CDATA                             #IMPLIED
+             linking    (targetonly | sourceonly | 
+                         normal | none | 
+                         -dita-use-conref-target)         #IMPLIED
+             toc        (yes | no | 
+                         -dita-use-conref-target)         "no"
+             print      (yes | no | printonly | 
+                         -dita-use-conref-target)         #IMPLIED
+             search     (yes | no | 
+                         -dita-use-conref-target)         #IMPLIED
+             chunk      CDATA                             #IMPLIED'  >
+
+
+
+<!-- ============================================================= -->
+<!--                    MODULES CALLS                              -->
+<!-- ============================================================= -->
+
+
+<!--                      Content elements common to map and topic -->
+<!ENTITY % commonElements      PUBLIC 
+"-//OASIS//ELEMENTS DITA Common Elements//EN" "commonElements.mod"   >
+%commonElements;
+
+<!--                      MetaData Elements                        -->
+<!ENTITY % metaXML      PUBLIC 
+"-//OASIS//ELEMENTS DITA Metadata//EN" "metaDecl.mod"                >
+%metaXML;
+  
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+<!ENTITY included-domains ""                                         >
+  
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+
+
+
+<!--                    LONG NAME: Map                             -->
+<!ELEMENT  map          ((%title;)?, (%topicmeta;)?, 
+                         (%navref;|%anchor;|%topicref;|%reltable;|
+                          %data.elements.incl;)* )                   >
+<!ATTLIST  map 
+             title      CDATA                             #IMPLIED
+             id         ID                                #IMPLIED
+             conref     CDATA                             #IMPLIED
+             anchorref  CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %localization-atts;
+             %arch-atts;
+             domains    CDATA                  "&included-domains;" 
+             %topicref-atts;
+             %select-atts;                                           >
+
+
+<!--                    LONG NAME: Navigation Reference            -->
+<!ELEMENT  navref       EMPTY                                        >
+<!ATTLIST  navref
+             %univ-atts;
+             outputclass 
+                        CDATA                             #IMPLIED
+             mapref     CDATA                             #IMPLIED   >
+
+
+<!--                    LONG NAME: Topic Reference                 -->
+<!ELEMENT  topicref     ((%topicmeta;)?, 
+                         (%topicref; | %navref; | %anchor; |
+                          %data.elements.incl;)* )                   >
+<!ATTLIST  topicref
+             navtitle   CDATA                             #IMPLIED
+             href       CDATA                             #IMPLIED
+             keyref     CDATA                             #IMPLIED
+             query      CDATA                             #IMPLIED
+             copy-to    CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Anchor                          -->
+<!ELEMENT  anchor       EMPTY                                        >
+<!ATTLIST  anchor
+             outputclass 
+                        CDATA                             #IMPLIED
+             %localization-atts;
+             id         ID                                #REQUIRED   
+             conref     CDATA                             #IMPLIED    
+             %select-atts;                                           >
+
+
+<!--                    LONG NAME: Relationship Table              -->
+<!ELEMENT  reltable     ((%topicmeta;)?, (%relheader;)?, 
+                         (%relrow;)+)                                >
+<!ATTLIST  reltable        
+             title      CDATA                             #IMPLIED
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts-no-toc;
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Relationship Header             -->
+<!ELEMENT  relheader    (%relcolspec;)+                              >
+<!ATTLIST  relheader
+             %univ-atts;                                             >        
+
+
+<!--                    LONG NAME: Relationship Column Specification
+                                                                   -->
+<!ELEMENT  relcolspec   (%topicmeta;)?                               >
+<!ATTLIST  relcolspec
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Relationship Table Row          -->
+<!ELEMENT relrow        (%relcell;)*                                 >
+<!ATTLIST relrow
+             outputclass 
+                        CDATA                             #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Relationship Table Cell         -->
+<!ELEMENT relcell         ((%topicref;|%data.elements.incl;)*)>
+<!ATTLIST relcell
+             outputclass 
+                        CDATA                             #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Topic Metadata                  -->
+<!ELEMENT  topicmeta    ((%linktext;)?, (%searchtitle;)?, 
+                         (%shortdesc;)?, (%author;)*, (%source;)?, 
+                         (%publisher;)?, (%copyright;)*, 
+                         (%critdates;)?, (%permissions;)?, 
+                         (%audience;)*, (%category;)*, 
+                         (%keywords;)*, (%prodinfo;)*, (%othermeta;)*, 
+                         (%resourceid;)*, 
+                         (%data.elements.incl; | 
+                          %foreign.unknown.incl;)*)                  >
+<!ATTLIST  topicmeta
+             lockmeta   (yes | no | 
+                         -dita-use-conref-target)         #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Link Text                       -->
+<!ELEMENT  linktext     (%words.cnt;)*                               >
+<!ATTLIST  linktext
+             outputclass 
+                        CDATA                             #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Search Title                    -->
+<!ELEMENT  searchtitle  (%words.cnt;)*                               >
+<!ATTLIST  searchtitle
+             outputclass 
+                        CDATA                             #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Short Description               -->
+<!--<!ELEMENT  shortdesc    (%words.cnt;)*                        >-->
+         
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST map         %global-atts;  class CDATA "- map/map "        >
+<!ATTLIST navref      %global-atts;  class CDATA "- map/navref "     >
+<!ATTLIST topicref    %global-atts;  class CDATA "- map/topicref "   >
+<!ATTLIST anchor      %global-atts;  class CDATA "- map/anchor "     >
+<!ATTLIST reltable    %global-atts;  class CDATA "- map/reltable "   >
+<!ATTLIST relheader   %global-atts;  class CDATA "- map/relheader "  >
+<!ATTLIST relcolspec  %global-atts;  class CDATA "- map/relcolspec " >
+<!ATTLIST relrow      %global-atts;  class CDATA "- map/relrow "     >
+<!ATTLIST relcell     %global-atts;  class CDATA "- map/relcell "    >
+<!ATTLIST topicmeta   %global-atts;  class CDATA "- map/topicmeta "  >
+<!ATTLIST linktext    %global-atts;  class CDATA "- map/linktext "   >
+<!ATTLIST searchtitle %global-atts;  class CDATA "- map/searchtitle ">
+
+<!-- Shortdesc in topic uses topic/shortdesc so this one must be 
+     included, even though the element is common. -->
+<!ATTLIST shortdesc   %global-atts;  class CDATA "- map/shortdesc "  >
+
+
+<!-- ================== End DITA Map ============================= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/mapGroup.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/mapGroup.ent
new file mode 100644
index 0000000..2730656
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/mapGroup.ent
@@ -0,0 +1,51 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Map Group Domain Entities                    -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Map Group Domain//EN"
+      Delivered as file "mapGroup.ent"                             -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the map group domain      -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ENTITY % mapgroup-d-topicref 
+                        "topichead | topicgroup"                     >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+<!ENTITY mapgroup-d-att "(map mapgroup-d)"                           >
+
+
+<!-- ================== End Map Group Domain Entities ============ -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/mapGroup.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/mapGroup.mod
new file mode 100644
index 0000000..b344a3d
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/mapGroup.mod
@@ -0,0 +1,83 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Map Group Domain                             -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Map Group Domain//EN"
+      Delivered as file "mapGroup.mod"                             -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Define elements and specialization attributes     -->
+<!--             for Map Group Domain                              -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+<!ENTITY % topichead    "topichead"                                  >
+<!ENTITY % topicgroup   "topicgroup"                                 >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Topic Head                      -->
+<!ELEMENT topichead     ((%topicmeta;)?, 
+                          (%topicref; | %navref; | %anchor; | 
+                           %data.elements.incl;)* )                  >
+<!ATTLIST topichead
+             navtitle   CDATA                            #REQUIRED
+             outputclass 
+                        CDATA                            #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Topic Group                     -->
+<!ELEMENT topicgroup    ((%topicmeta;)?, 
+                         (%topicref; | %navref; | %anchor; | 
+                          %data.elements.incl;)* )                   >
+<!ATTLIST topicgroup
+             outputclass 
+                        CDATA                            #IMPLIED
+             %topicref-atts;
+             %univ-atts;                                             >
+
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ATTLIST topichead     %global-atts;  class CDATA "+ map/topicref mapgroup-d/topichead ">
+<!ATTLIST topicgroup    %global-atts;  class CDATA "+ map/topicref mapgroup-d/topicgroup ">
+
+
+<!-- ================== DITA Map Group Domain  =================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/metaDecl.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/metaDecl.mod
new file mode 100644
index 0000000..bbe32f7
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/metaDecl.mod
@@ -0,0 +1,286 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Metadata                                     -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Metadata//EN"
+      Delivered as file "metaDecl.mod"                             -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the DITA XML Metadata              -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!--    2006.06.06 RDA: Move indexterm into commonElements         -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % date-format 'CDATA'                                       >
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+<!--                    LONG NAME: Author                          -->
+<!ELEMENT author        (%words.cnt;)*                               >
+<!ATTLIST author 
+             %univ-atts;
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED
+             type       (creator | contributor | 
+                         -dita-use-conref-target)        #IMPLIED    >
+
+
+<!--                     LONG NAME: Source                         -->
+<!ELEMENT source        (%words.cnt;)*                               >
+<!ATTLIST source 
+             %univ-atts;
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Publisher                       -->
+<!ELEMENT publisher     (%words.cnt;)*                               >
+<!ATTLIST publisher
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Copyright                       -->
+<!ELEMENT copyright     ((%copyryear;)+, %copyrholder;)              >
+<!ATTLIST copyright 
+             %univ-atts;
+             type       (primary | secondary | 
+                         -dita-use-conref-target)        #IMPLIED    >
+
+
+<!--                    LONG NAME: Copyright Year                  -->
+<!ELEMENT copyryear     EMPTY                                        >
+<!ATTLIST copyryear
+             year       %date-format;                    #REQUIRED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Copyright Holder                -->
+<!ELEMENT copyrholder   (%words.cnt;)*                               >
+<!ATTLIST copyrholder
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Critical Dates                  -->
+<!ELEMENT critdates     (%created;, (%revised;)*)                    >
+<!ATTLIST critdates
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Created Date                    -->
+<!ELEMENT created       EMPTY                                        >
+<!ATTLIST created 
+             %univ-atts;
+             date       %date-format;                    #REQUIRED
+             golive     %date-format;                    #IMPLIED
+             expiry     %date-format;                    #IMPLIED    >
+
+
+<!--                    LONG NAME: Revised Date                    -->
+<!ELEMENT revised       EMPTY                                        >
+<!ATTLIST revised  
+             modified   %date-format;                    #REQUIRED
+             golive     %date-format;                    #IMPLIED
+             expiry     %date-format;                    #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Permissions                     -->
+<!ELEMENT permissions   EMPTY                                        >
+<!ATTLIST permissions
+             %univ-atts;
+             view       (internal | classified | all | 
+                         entitled | 
+                         -dita-use-conref-target)        #REQUIRED   >
+
+
+<!--                    LONG NAME: Category                        -->
+<!ELEMENT category      (%words.cnt;)*                               >
+<!ATTLIST category     
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Audience                        -->
+<!ELEMENT audience      EMPTY                                        >
+<!ATTLIST audience
+             type       (user | purchaser |
+                         administrator | programmer |
+                         executive | services | other | 
+                         -dita-use-conref-target)        #IMPLIED
+             othertype  CDATA                            #IMPLIED
+             job        (installing | customizing | 
+                         administering | programming |
+                         using | maintaining |
+                         troubleshooting | evaluating |
+                         planning | migrating | other | 
+                         -dita-use-conref-target)        #IMPLIED
+             otherjob   CDATA                            #IMPLIED
+             experiencelevel
+                        (novice | general | expert | 
+                         -dita-use-conref-target)        #IMPLIED
+             name       NMTOKEN                          #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Keywords                        -->
+<!ELEMENT keywords      (%indexterm; | %keyword;)*                   >
+<!ATTLIST keywords
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Product Information             -->
+<!ELEMENT prodinfo      ((%prodname;), (%vrmlist;),
+                         (%brand; | %series; | %platform; | 
+                          %prognum; | %featnum; | %component;)* )    >
+<!ATTLIST prodinfo
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Product Name                    -->
+<!ELEMENT prodname      (%words.cnt;)*                               > 
+<!ATTLIST prodname
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Version Release and Modification
+                                   List                            -->
+<!ELEMENT vrmlist       (%vrm;)+                                     >
+<!ATTLIST vrmlist
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Version Release and Modification-->
+<!ELEMENT vrm           EMPTY                                        >
+<!ATTLIST vrm
+             %univ-atts;               
+             version    CDATA                            #REQUIRED
+             release    CDATA                            #IMPLIED
+             modification 
+                        CDATA                            #IMPLIED    >
+             
+<!--                    LONG NAME: Brand                           -->
+<!ELEMENT brand         (%words.cnt;)*                               >
+<!ATTLIST brand
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Series                          -->
+<!ELEMENT series        (%words.cnt;)*                               >
+<!ATTLIST series
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Platform                        -->
+<!ELEMENT platform      (%words.cnt;)*                               >
+<!ATTLIST platform
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Program Number                  -->
+<!ELEMENT prognum       (%words.cnt;)*                               >
+<!ATTLIST prognum
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Feature Number                  -->
+<!ELEMENT featnum       (%words.cnt;)*                               >
+<!ATTLIST featnum
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Component                       -->
+<!ELEMENT component     (%words.cnt;)*                               >
+<!ATTLIST component
+             %univ-atts;                                             >                                     
+
+
+<!--                    LONG NAME: Other Metadata                  -->
+<!--                    NOTE: needs to be HTML-equiv, at least     -->
+<!ELEMENT othermeta     EMPTY                                        >
+<!ATTLIST othermeta 
+             name       CDATA                            #REQUIRED
+             content    CDATA                            #REQUIRED
+             translate-content
+                        (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Resource Identifier             -->
+<!ELEMENT resourceid    EMPTY                                        >
+<!ATTLIST resourceid
+             %select-atts;
+             %localization-atts;
+             id         CDATA                            #REQUIRED
+             conref     CDATA                            #IMPLIED
+             appname    CDATA                            #IMPLIED    >
+
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+             
+
+<!ATTLIST author      %global-atts;  class CDATA "- topic/author "      >
+<!ATTLIST source      %global-atts;  class CDATA "- topic/source "      >
+<!ATTLIST publisher   %global-atts;  class CDATA "- topic/publisher "   >
+<!ATTLIST copyright   %global-atts;  class CDATA "- topic/copyright "   >
+<!ATTLIST copyryear   %global-atts;  class CDATA "- topic/copyryear "   >
+<!ATTLIST copyrholder %global-atts;  class CDATA "- topic/copyrholder " >
+<!ATTLIST critdates   %global-atts;  class CDATA "- topic/critdates "   >
+<!ATTLIST created     %global-atts;  class CDATA "- topic/created "     >
+<!ATTLIST revised     %global-atts;  class CDATA "- topic/revised "     >
+<!ATTLIST permissions %global-atts;  class CDATA "- topic/permissions " >
+<!ATTLIST category    %global-atts;  class CDATA "- topic/category "    >
+<!ATTLIST audience    %global-atts;  class CDATA "- topic/audience "    >
+<!ATTLIST keywords    %global-atts;  class CDATA "- topic/keywords "    >
+<!ATTLIST prodinfo    %global-atts;  class CDATA "- topic/prodinfo "    >
+<!ATTLIST prodname    %global-atts;  class CDATA "- topic/prodname "    >
+<!ATTLIST vrmlist     %global-atts;  class CDATA "- topic/vrmlist "     >
+<!ATTLIST vrm         %global-atts;  class CDATA "- topic/vrm "         >
+<!ATTLIST brand       %global-atts;  class CDATA "- topic/brand "       >
+<!ATTLIST series      %global-atts;  class CDATA "- topic/series "      >
+<!ATTLIST platform    %global-atts;  class CDATA "- topic/platform "    >
+<!ATTLIST prognum     %global-atts;  class CDATA "- topic/prognum "     >
+<!ATTLIST featnum     %global-atts;  class CDATA "- topic/featnum "     >
+<!ATTLIST component   %global-atts;  class CDATA "- topic/component "   >
+<!ATTLIST othermeta   %global-atts;  class CDATA "- topic/othermeta "   >
+<!ATTLIST resourceid  %global-atts;  class CDATA "- topic/resourceid "  >
+
+<!-- ================== End Metadata  ================================ -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/programmingDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/programmingDomain.ent
new file mode 100644
index 0000000..8b82cff
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/programmingDomain.ent
@@ -0,0 +1,55 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Programming Domain Entities                  -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2005                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Programming Domain//EN"
+      Delivered as file "programmingDomain.ent"                    -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the programming domain    -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % pr-d-ph      "codeph | synph"                             >
+<!ENTITY % pr-d-pre     "codeblock"                                  >
+<!ENTITY % pr-d-keyword "option | parmname | apiname"                >
+<!ENTITY % pr-d-fig     "syntaxdiagram"                              >
+<!ENTITY % pr-d-dl      "parml"                                      >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+
+<!ENTITY pr-d-att "(topic pr-d)">
+
+<!-- ================== End Programming Domain Entities ========== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/programmingDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/programmingDomain.mod
new file mode 100644
index 0000000..5ac8299
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/programmingDomain.mod
@@ -0,0 +1,395 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA DITA Programming Domain                      -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Programming Domain//EN"
+      Delivered as file "programmingDomain.mod"                    -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the Programming Domain             -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2005.11.15 RDA: Corrected Long Names for syntax groups,    -->
+<!--                    codeph, and kwd                            -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % apiname      "apiname"                                    >
+<!ENTITY % codeblock    "codeblock"                                  >
+<!ENTITY % codeph       "codeph"                                     >
+<!ENTITY % delim        "delim"                                      >
+<!ENTITY % kwd          "kwd"                                        >
+<!ENTITY % oper         "oper"                                       >
+<!ENTITY % option       "option"                                     >
+<!ENTITY % parmname     "parmname"                                   >
+<!ENTITY % sep          "sep"                                        >
+<!ENTITY % synph        "synph"                                      >
+<!ENTITY % var          "var"                                        >
+
+<!ENTITY % parml        "parml"                                      >
+<!ENTITY % pd           "pd"                                         >
+<!ENTITY % plentry      "plentry"                                    >
+<!ENTITY % pt           "pt"                                         >
+
+<!ENTITY % fragment     "fragment"                                   >
+<!ENTITY % fragref      "fragref"                                    >
+<!ENTITY % groupchoice  "groupchoice"                                >
+<!ENTITY % groupcomp    "groupcomp"                                  >
+<!ENTITY % groupseq     "groupseq"                                   >
+<!ENTITY % repsep       "repsep"                                     >
+<!ENTITY % synblk       "synblk"                                     >
+<!ENTITY % synnote      "synnote"                                    >
+<!ENTITY % synnoteref   "synnoteref"                                 >
+<!ENTITY % syntaxdiagram 
+                        "syntaxdiagram"                              >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Universal Attributes Local
+                                   Importance                      -->
+<!--                    Povide an alternative set of univ-atts that 
+                        allows importance to be redefined locally  -->
+<!ENTITY % univ-atts-no-importance
+            '%id-atts;
+             %filter-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             rev        CDATA                            #IMPLIED
+             status     (new | changed | deleted |
+                         unchanged | 
+                         -dita-use-conref-target)        #IMPLIED
+             %localization-atts;                                 '   > 
+
+
+<!--                    LONG NAME: Code Phrase                     -->
+<!ELEMENT codeph        (#PCDATA | %basic.ph.notm; | 
+                         %data.elements.incl; | 
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST codeph      
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Code Block                      -->
+<!ELEMENT codeblock     (#PCDATA | %basic.ph.notm; | %txt.incl; |
+                         %data.elements.incl; | 
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST codeblock       
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             xml:space  (preserve)                #FIXED 'preserve'
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Option                          -->
+<!ELEMENT option        (#PCDATA)                                    >
+<!ATTLIST  option       keyref CDATA #IMPLIED
+                        %univ-atts;
+                        outputclass CDATA #IMPLIED                   >
+
+
+<!--                    LONG NAME: Variable                        -->
+<!ELEMENT var           (%words.cnt;)*                               >
+<!ATTLIST var         
+             importance (optional | required | default | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Parameter Name                  -->
+<!ELEMENT parmname      (#PCDATA)                                    >
+<!ATTLIST parmname
+             keyref      CDATA #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Syntax Phrase                   -->
+<!ELEMENT synph         (#PCDATA | %codeph; | %option; | %parmname; |
+                         %var; | %kwd; | %oper; | %delim; | %sep; | 
+                         %synph;)*                                   >
+<!ATTLIST  synph   
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Operator                        -->
+<!ELEMENT oper          (%words.cnt;)*                               >
+<!ATTLIST oper            
+             importance (optional | required | default | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Delimiter                       -->
+<!ELEMENT delim         (%words.cnt;)*                               >
+<!ATTLIST delim           
+             importance (optional | required | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Separator                       -->
+<!ELEMENT sep           (%words.cnt;)*                               >
+<!ATTLIST sep             
+             importance (optional | required | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: API Name                        -->
+<!ELEMENT apiname       (#PCDATA)                                    >
+<!ATTLIST apiname         
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Parameter List                  -->
+<!ELEMENT parml         (%plentry;)+                                 >
+<!ATTLIST parml           
+             compact    (yes | no |
+                         -dita-use-conref-target)        #IMPLIED
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Parameter List Entry            -->
+<!ELEMENT plentry       ((%pt;)+, (%pd;)+)                           >
+<!ATTLIST plentry       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Parameter Term                  -->
+<!ELEMENT pt            (%term.cnt;)*                                > 
+<!ATTLIST pt           
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Parameter Description           -->
+<!ELEMENT pd            (%defn.cnt;)*                                >
+<!ATTLIST pd             
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Syntax Diagram                  -->
+<!ELEMENT syntaxdiagram ((%title;)?,
+                         (%groupseq; | %groupchoice; | %groupcomp; |
+                          %fragref; | %fragment; | %synblk; |
+                          %synnote; | %synnoteref;)* )               >
+<!ATTLIST syntaxdiagram   
+             %display-atts;
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Syntax Block                    -->
+<!ELEMENT synblk        ((%title;)?, 
+                         (%groupseq; | %groupchoice; | %groupcomp; |
+                          %fragref; | %fragment;| %synnote; |
+                          %synnoteref;)* )                           >
+<!ATTLIST synblk
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Sequence Group                  -->
+<!ELEMENT groupseq      ((%title;)?, (%repsep;)?,
+                         (%groupseq; | %groupchoice; | %groupcomp; |
+                          %fragref; | %kwd; | %var; | %delim; | 
+                          %oper; | %sep; | %synnote; | 
+                          %synnoteref;)* )                           >
+<!ATTLIST groupseq        
+             importance (optional | required | default |
+                         -dita-use-conref-target)    
+                                                         #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Group                    -->
+<!ELEMENT groupchoice   ((%title;)?, (%repsep;)?,
+                         (%groupseq; | %groupchoice; | %groupcomp; |
+                          %fragref;| %kwd; | %var; | %delim; |
+                          %oper; | %sep; | %synnote; | 
+                          %synnoteref;)* )                           > 
+<!ATTLIST  groupchoice     
+             importance (optional | required | default | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Composite group                 -->
+<!ELEMENT groupcomp     ((%title;)?, (%repsep;)?,
+                         (%groupseq; | %groupchoice; | %groupcomp; |
+                          %fragref; | %kwd; | %var; | %delim; |
+                          %oper; | %sep; | %synnote; | 
+                          %synnoteref;)* )                           > 
+<!ATTLIST  groupcomp       
+             importance (optional | required | default | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Fragment                        -->
+<!ELEMENT fragment      ((%title;)?, 
+                         (%groupseq; | %groupchoice; | %groupcomp; |
+                          %fragref; | %synnote; | %synnoteref;)* )   >
+<!ATTLIST fragment        
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+  
+
+
+<!--                    LONG NAME: Fragment Reference              -->
+<!ELEMENT fragref       (%xrefph.cnt;)*><!--xref-->
+<!ATTLIST fragref         
+             href       CDATA                            #IMPLIED
+             importance (optional | required | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Syntax Diagram Note             -->
+<!ELEMENT synnote       (#PCDATA | %basic.ph;)*                      >     
+<!ATTLIST synnote        
+             callout    CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Syntax Note Reference           -->
+<!ELEMENT synnoteref     EMPTY >
+<!ATTLIST synnoteref      
+             href       CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Repeat Separator                -->
+<!ELEMENT repsep         (%words.cnt;)*                              >
+<!ATTLIST repsep          
+            importance  (optional | required | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Syntax Keyword                  -->
+<!ELEMENT kwd           (#PCDATA)                                    >
+<!ATTLIST kwd             
+             keyref     CDATA                            #IMPLIED
+             importance (optional | required | default | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance;                             
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+             
+
+<!ATTLIST  apiname    %global-atts; class CDATA "+ topic/keyword pr-d/apiname "  >
+<!ATTLIST  codeblock  %global-atts; class CDATA "+ topic/pre pr-d/codeblock "    >
+<!ATTLIST  codeph     %global-atts; class CDATA "+ topic/ph pr-d/codeph "        >
+<!ATTLIST  delim      %global-atts; class CDATA "+ topic/ph pr-d/delim "         >
+<!ATTLIST  fragment   %global-atts; class CDATA "+ topic/figgroup pr-d/fragment ">
+<!ATTLIST  fragref    %global-atts; class CDATA "+ topic/xref pr-d/fragref "     >
+<!ATTLIST  groupchoice 
+                      %global-atts; class CDATA "+ topic/figgroup pr-d/groupchoice ">
+<!ATTLIST  groupcomp  %global-atts; class CDATA "+ topic/figgroup pr-d/groupcomp ">
+<!ATTLIST  groupseq   %global-atts; class CDATA "+ topic/figgroup pr-d/groupseq ">
+<!ATTLIST  kwd        %global-atts; class CDATA "+ topic/keyword pr-d/kwd "      >
+<!ATTLIST  oper       %global-atts; class CDATA "+ topic/ph pr-d/oper "          >
+<!ATTLIST  option     %global-atts; class CDATA "+ topic/keyword pr-d/option "   >
+<!ATTLIST  parml      %global-atts; class CDATA "+ topic/dl pr-d/parml "         >
+<!ATTLIST  parmname   %global-atts; class CDATA "+ topic/keyword pr-d/parmname " >
+<!ATTLIST  pd         %global-atts; class CDATA "+ topic/dd pr-d/pd "            >
+<!ATTLIST  plentry    %global-atts; class CDATA "+ topic/dlentry pr-d/plentry "  >
+<!ATTLIST  pt         %global-atts; class CDATA "+ topic/dt pr-d/pt "            >
+<!ATTLIST  repsep     %global-atts; class CDATA "+ topic/ph pr-d/repsep "        >
+<!ATTLIST  sep        %global-atts; class CDATA "+ topic/ph pr-d/sep "           >
+<!ATTLIST  synblk     %global-atts; class CDATA "+ topic/figgroup pr-d/synblk "  >
+<!ATTLIST  synnote    %global-atts; class CDATA "+ topic/fn pr-d/synnote "       >
+<!ATTLIST  synnoteref %global-atts; class CDATA "+ topic/xref pr-d/synnoteref "  >
+<!ATTLIST  synph      %global-atts; class CDATA "+ topic/ph pr-d/synph "         >
+<!ATTLIST  syntaxdiagram 
+                      %global-atts; class CDATA "+ topic/fig pr-d/syntaxdiagram ">
+<!ATTLIST  var        %global-atts; class CDATA "+ topic/ph pr-d/var "           >
+
+
+<!-- ================== End Programming Domain  ====================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/reference.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/reference.dtd
new file mode 100644
index 0000000..9097a7c
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/reference.dtd
@@ -0,0 +1,180 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Reference DTD                                -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//DTD DITA Reference//EN"
+      Delivered as file "reference.dtd"                            -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Reference//EN"                      -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA References                   -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.21 RDA: Added props attribute extensions           -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
+"uiDomain.ent"                                                       >
+%ui-d-dec;
+
+<!ENTITY % hi-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
+"highlightDomain.ent"                                                >
+%hi-d-dec;
+
+<!ENTITY % pr-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Programming Domain//EN" 
+"programmingDomain.ent"                                              >
+%pr-d-dec;
+
+<!ENTITY % sw-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Software Domain//EN" 
+"softwareDomain.ent"                                                 >
+%sw-d-dec;
+
+<!ENTITY % ut-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
+"utilitiesDomain.ent"                                                >
+%ut-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+
+<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
+                                   %ui-d-pre;"                       >
+<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
+                                   %ui-d-keyword;"                   >
+<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
+                                    %hi-d-ph;     | %ui-d-ph;"       >
+<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
+<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC NESTING OVERRIDE                     -->
+<!-- ============================================================= -->
+
+<!--                    Redefine the infotype entity to exclude 
+                        other topic types and disallow nesting     -->
+<!ENTITY % reference-info-types 
+                        "reference"                                  >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
+                         &ut-d-att; &indexing-d-att;"                >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC ELEMENT INTEGRATION                  -->
+<!-- ============================================================= -->
+
+<!--                    Embed topic to get generic elements        -->
+<!ENTITY % topic-type   PUBLIC 
+"-//OASIS//ELEMENTS DITA Topic//EN" 
+"topic.mod"                                                          >
+%topic-type;
+
+<!--                     Embed reference to get specific elements  -->
+<!ENTITY % reference-typemod 
+                        PUBLIC 
+"-//OASIS//ELEMENTS DITA Reference//EN" 
+"reference.mod"                                                      >
+ %reference-typemod;
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
+"uiDomain.mod"                                                       >
+%ui-d-def;
+
+<!ENTITY % hi-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
+"highlightDomain.mod"                                                >
+%hi-d-def;
+
+<!ENTITY % pr-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
+"programmingDomain.mod"                                              >
+%pr-d-def;
+
+<!ENTITY % sw-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Software Domain//EN" 
+"softwareDomain.mod"                                                 >
+%sw-d-def;
+
+<!ENTITY % ut-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
+"utilitiesDomain.mod"                                                >
+%ut-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+
+<!-- ================== End DITA Reference DTD  ================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/reference.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/reference.mod
new file mode 100644
index 0000000..9f1c75e
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/reference.mod
@@ -0,0 +1,248 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Reference                                    -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Reference//EN"
+      Delivered as file "reference.mod"                            -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for Reference                          -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Removed old declaration for                -->
+<!--                    referenceClasses entity                    -->
+<!--    2005.11.15 RDA: Corrected LONG NAME for propdeschd         -->
+<!--    2006.06.07 RDA: Added <abstract> element                   -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.11.30 RDA: Remove #FIXED from DITAArchVersion         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ARCHITECTURE ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!-- default namespace prefix for DITAArchVersion attribute can be
+     overridden through predefinition in the document type shell   -->
+<!ENTITY % DITAArchNSPrefix
+                       "ditaarch"                                    >
+
+<!-- must be instanced on each topic type                          -->
+<!ENTITY % arch-atts "
+             xmlns:%DITAArchNSPrefix; 
+                        CDATA                              #FIXED
+                       'http://dita.oasis-open.org/architecture/2005/'
+             %DITAArchNSPrefix;:DITAArchVersion
+                        CDATA                              '1.1'"    >
+
+
+<!-- ============================================================= -->
+<!--                   SPECIALIZATION OF DECLARED ELEMENTS         -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % reference-info-types 
+                      "%info-types;"                                 >
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % reference   "reference"                                   >
+<!ENTITY % refbody     "refbody"                                     >
+<!ENTITY % refsyn      "refsyn"                                      >
+<!ENTITY % properties  "properties"                                  >
+<!ENTITY % property    "property"                                    >
+<!ENTITY % proptype    "proptype"                                    >
+<!ENTITY % propvalue   "propvalue"                                   >
+<!ENTITY % propdesc    "propdesc"                                    >
+<!ENTITY % prophead    "prophead"                                    >
+<!ENTITY % proptypehd  "proptypehd"                                  >
+<!ENTITY % propvaluehd "propvaluehd"                                 >
+<!ENTITY % propdeschd  "propdeschd"                                  >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY included-domains ""                                         >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Reference                       -->
+<!ELEMENT reference     ((%title;), (%titlealts;)?,
+                         (%shortdesc; | %abstract;)?, 
+                         (%prolog;)?, (%refbody;)?, (%related-links;)?, 
+                         (%reference-info-types;)* )                 >
+<!ATTLIST reference
+             id         ID                               #REQUIRED
+             conref     CDATA                            #IMPLIED
+             %select-atts;
+             %localization-atts;
+             %arch-atts;
+             domains    CDATA                  "&included-domains;"
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Reference Body                  -->
+<!ELEMENT refbody       ((%section; | %refsyn; | %example; | %table; | 
+                          %simpletable; |  %properties; | 
+                          %data.elements.incl; | 
+                          %foreign.unknown.incl;)* )                 >
+<!ATTLIST refbody         
+             %id-atts;
+             %localization-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Reference Syntax                -->
+<!ELEMENT refsyn        (%section.cnt;)*                             >  
+<!ATTLIST refsyn          
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Properties                      -->
+<!ELEMENT properties    ((%prophead;)?, (%property;)+)               >
+<!ATTLIST properties      
+             relcolwidth 
+                        CDATA                           #IMPLIED
+             keycol     NMTOKEN                         #IMPLIED
+             refcols    NMTOKENS                        #IMPLIED
+             spectitle  CDATA                           #IMPLIED
+             %display-atts;
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME:  Property Head                  -->
+<!ELEMENT prophead      ((%proptypehd;)?, (%propvaluehd;)?, 
+                         (%propdeschd;)?)                            >
+<!ATTLIST prophead       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Property Type Head              -->
+<!ELEMENT proptypehd    (%tblcell.cnt;)*                             >
+<!ATTLIST proptypehd     
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Property Value Head             -->
+<!ELEMENT propvaluehd   (%tblcell.cnt;)*                             >
+<!ATTLIST propvaluehd     
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Property Description Head       -->
+<!ELEMENT propdeschd    (%tblcell.cnt;)*                             >
+<!ATTLIST propdeschd    
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Property                        -->
+<!ELEMENT property      ((%proptype;)?, (%propvalue;)?, 
+                         (%propdesc;)?)                              >
+<!ATTLIST property       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Property Type                   -->
+<!ELEMENT proptype      (%ph.cnt;)*                                  >
+<!ATTLIST proptype       
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Property Value                  -->
+<!ELEMENT propvalue     (%ph.cnt;)*                                  >
+<!ATTLIST propvalue      
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Property Descrption             -->
+<!ELEMENT propdesc      (%desc.cnt;)*                                >
+<!ATTLIST propdesc        
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST reference   %global-atts;  class  CDATA "- topic/topic       reference/reference " >
+<!ATTLIST refbody     %global-atts;  class  CDATA "- topic/body        reference/refbody "   >
+<!ATTLIST refsyn      %global-atts;  class  CDATA "- topic/section     reference/refsyn "    >
+<!ATTLIST properties  %global-atts;  class  CDATA "- topic/simpletable reference/properties ">
+<!ATTLIST property    %global-atts;  class  CDATA "- topic/strow       reference/property "  >
+<!ATTLIST proptype    %global-atts;  class  CDATA "- topic/stentry     reference/proptype "  >
+<!ATTLIST propvalue   %global-atts;  class  CDATA "- topic/stentry     reference/propvalue " >
+<!ATTLIST propdesc    %global-atts;  class  CDATA "- topic/stentry     reference/propdesc "  >
+
+<!ATTLIST prophead    %global-atts;  class  CDATA "- topic/sthead      reference/prophead "  >
+<!ATTLIST proptypehd  %global-atts;  class  CDATA "- topic/stentry     reference/proptypehd ">
+<!ATTLIST propvaluehd %global-atts;  class  CDATA "- topic/stentry     reference/propvaluehd ">
+<!ATTLIST propdeschd  %global-atts;  class  CDATA "- topic/stentry     reference/propdeschd ">
+
+ 
+<!-- ================== End DITA Reference  =========================== -->
+
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/softwareDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/softwareDomain.ent
new file mode 100644
index 0000000..7a18a90
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/softwareDomain.ent
@@ -0,0 +1,53 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Software Domain Entities                     -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Software Domain//EN"
+      Delivered as file "softwareDomain.ent"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the software domain       -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ENTITY % sw-d-pre     "msgblock"                                   >
+<!ENTITY % sw-d-ph      "filepath | msgph  | userinput |systemoutput">
+<!ENTITY % sw-d-keyword "cmdname  | msgnum | varname"                >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+<!ENTITY sw-d-att       "(topic sw-d)"                               >
+
+
+<!-- ================== End Software Domain Entities ============= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/softwareDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/softwareDomain.mod
new file mode 100644
index 0000000..e461db4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/softwareDomain.mod
@@ -0,0 +1,145 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Software Domain                              -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Software Domain//EN"
+      Delivered as file "softwareDomain.mod"                       -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the Software Domain                -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the PURPOSE in this comment      -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % msgph       "msgph"                                       >
+<!ENTITY % msgblock    "msgblock"                                    >
+<!ENTITY % msgnum      "msgnum"                                      >
+<!ENTITY % cmdname     "cmdname"                                     >
+<!ENTITY % varname     "varname"                                     >
+<!ENTITY % filepath    "filepath"                                    >
+<!ENTITY % userinput   "userinput"                                   >
+<!ENTITY % systemoutput 
+                       "systemoutput"                                >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Message Phrase                  -->
+<!ELEMENT msgph         (%words.cnt;)*                               >
+<!ATTLIST msgph          
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Message Block                   -->
+<!ELEMENT msgblock      (%words.cnt;)*                               >
+<!ATTLIST msgblock        
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    
+             xml:space  (preserve)                #FIXED "preserve"  >
+
+
+<!--                    LONG NAME: Message Number                  -->
+<!ELEMENT msgnum         (#PCDATA)                                   >
+<!ATTLIST msgnum          
+             keyref      CDATA                           #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Command Name                    -->
+<!ELEMENT cmdname       (#PCDATA)                                    >
+<!ATTLIST cmdname       
+             keyref      CDATA                           #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Variable Name                   -->
+<!ELEMENT varname       (#PCDATA)                                    >
+<!ATTLIST varname         
+             keyref      CDATA                           #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: File Path                       -->
+<!ELEMENT filepath      (%words.cnt;)*                               >
+<!ATTLIST filepath       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: User Input                      -->
+<!ELEMENT userinput     (%words.cnt;)*                               >
+<!ATTLIST userinput      
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: System Output                   -->
+<!ELEMENT systemoutput  (%words.cnt;)*                               >
+<!ATTLIST systemoutput   
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+             
+
+<!ATTLIST cmdname     %global-atts;  class CDATA "+ topic/keyword sw-d/cmdname ">
+<!ATTLIST filepath    %global-atts;  class CDATA "+ topic/ph sw-d/filepath "    >
+<!ATTLIST msgblock    %global-atts;  class CDATA "+ topic/pre sw-d/msgblock "   >
+<!ATTLIST msgnum      %global-atts;  class CDATA "+ topic/keyword sw-d/msgnum " >
+<!ATTLIST msgph       %global-atts;  class CDATA "+ topic/ph sw-d/msgph "       >
+<!ATTLIST systemoutput
+                      %global-atts;  class CDATA "+ topic/ph sw-d/systemoutput ">
+<!ATTLIST userinput   %global-atts;  class CDATA "+ topic/ph sw-d/userinput "   >
+<!ATTLIST varname     %global-atts;  class CDATA "+ topic/keyword sw-d/varname ">
+
+ 
+<!-- ================== End Software Domain ====================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/task.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/task.dtd
new file mode 100644
index 0000000..0499061
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/task.dtd
@@ -0,0 +1,178 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Task DTD                                     -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+PUBLIC "-//OASIS//DTD DITA Task//EN"
+      Delivered as file "task.dtd"                                 -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Task//EN"                           -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA Tasks                        -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.21 RDA: Added props attribute extensions           -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
+"uiDomain.ent"                                                       >
+%ui-d-dec;
+
+<!ENTITY % hi-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
+"highlightDomain.ent"                                                >
+%hi-d-dec;
+
+<!ENTITY % pr-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Programming Domain//EN" 
+"programmingDomain.ent"                                              >
+%pr-d-dec;
+
+<!ENTITY % sw-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Software Domain//EN" 
+"softwareDomain.ent"                                                 >
+%sw-d-dec;
+
+<!ENTITY % ut-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
+"utilitiesDomain.ent"                                                >
+%ut-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+
+<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
+                                   %ui-d-pre;"                       >
+<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
+                                   %ui-d-keyword;"                   >
+<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
+                                    %hi-d-ph;     | %ui-d-ph;"       >
+<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
+<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC NESTING OVERRIDE                     -->
+<!-- ============================================================= -->
+
+<!--                    Redefine the infotype entity to exclude 
+                        other topic types and disallow nesting     -->
+<!ENTITY % task-info-types 
+                        "task"                                       >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
+                         &ut-d-att; &indexing-d-att;"                >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC ELEMENT INTEGRATION                  -->
+<!-- ============================================================= -->
+
+<!--                    Embed topic to get generic elements        -->
+<!ENTITY % topic-type   PUBLIC 
+"-//OASIS//ELEMENTS DITA Topic//EN" 
+"topic.mod"                                                          >
+%topic-type;
+        
+<!--                    Embed task to get specific elements        -->
+<!ENTITY % task-typemod PUBLIC 
+"-//OASIS//ELEMENTS DITA Task//EN" 
+"task.mod"                                                           >
+%task-typemod;
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
+"uiDomain.mod"                                                       >
+%ui-d-def;
+
+<!ENTITY % hi-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
+"highlightDomain.mod"                                                >
+%hi-d-def;
+
+<!ENTITY % pr-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
+"programmingDomain.mod"                                              >
+%pr-d-def;
+
+<!ENTITY % sw-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Software Domain//EN" 
+"softwareDomain.mod"                                                 >
+%sw-d-def;
+
+<!ENTITY % ut-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
+"utilitiesDomain.mod"                                                >
+%ut-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+
+<!-- ================== End DITA Task DTD  ======================= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/task.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/task.mod
new file mode 100644
index 0000000..85e77c2
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/task.mod
@@ -0,0 +1,418 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Task                                         -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Task//EN"
+      Delivered as file "task.mod"                                 -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the DITA Tasks                     -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Removed old declaration for                -->
+<!--                    taskClasses entity                         -->
+<!--    2005.11.15 RDA: Corrected LONG NAME for chdeschd           -->
+<!--    2006.06.06 RDA: Changed model of choice to listitem.cnt    -->
+<!--                    for completeness                           -->
+<!--    2006.06.07 RDA: Added <abstract> element                   -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+<!--    2006.11.30 RDA: Remove #FIXED from DITAArchVersion         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ARCHITECTURE ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!-- default namespace prefix for DITAArchVersion attribute can be
+     overridden through predefinition in the document type shell   -->
+<!ENTITY % DITAArchNSPrefix
+                       "ditaarch"                                    >
+
+<!-- must be instanced on each topic type                          -->
+<!ENTITY % arch-atts "
+             xmlns:%DITAArchNSPrefix; 
+                        CDATA                              #FIXED
+                       'http://dita.oasis-open.org/architecture/2005/'
+             %DITAArchNSPrefix;:DITAArchVersion
+                        CDATA                              '1.1'"    >
+
+
+<!-- ============================================================= -->
+<!--                   SPECIALIZATION OF DECLARED ELEMENTS         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!ENTITY % task        "task"                                        >
+<!ENTITY % taskbody    "taskbody"                                    >
+<!ENTITY % steps       "steps"                                       >
+<!ENTITY % steps-unordered 
+                       "steps-unordered"                             >
+<!ENTITY % step        "step"                                        >
+<!ENTITY % cmd         "cmd"                                         >
+<!ENTITY % substeps    "substeps"                                    >
+<!ENTITY % substep     "substep"                                     >
+<!ENTITY % tutorialinfo 
+                       "tutorialinfo"                                >
+<!ENTITY % info        "info"                                        >
+<!ENTITY % stepxmp     "stepxmp"                                     >
+<!ENTITY % stepresult  "stepresult"                                  >
+<!ENTITY % choices     "choices"                                     >
+<!ENTITY % choice      "choice"                                      >
+<!ENTITY % result      "result"                                      >
+<!ENTITY % prereq      "prereq"                                      >
+<!ENTITY % postreq     "postreq"                                     >
+<!ENTITY % context     "context"                                     >
+<!ENTITY % choicetable "choicetable"                                 >
+<!ENTITY % chhead      "chhead"                                      >
+<!ENTITY % chrow       "chrow"                                       >
+<!ENTITY % choptionhd  "choptionhd"                                  >
+<!ENTITY % chdeschd    "chdeschd"                                    >
+<!ENTITY % choption    "choption"                                    >
+<!ENTITY % chdesc      "chdesc"                                      >
+
+
+<!-- ============================================================= -->
+<!--                    SHARED ATTRIBUTE LISTS                     -->
+<!-- ============================================================= -->
+
+
+<!--                    Provide an alternative set of univ-atts 
+                        that allows importance to be redefined 
+                        locally                                    -->
+<!ENTITY % univ-atts-no-importance-task
+            '%id-atts;
+             %filter-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             rev        CDATA                            #IMPLIED
+             status     (new | changed | deleted |   
+                         unchanged | 
+                         -dita-use-conref-target)        #IMPLIED
+             %localization-atts;                                 '   >
+
+<!ENTITY % task-info-types 
+                        "%info-types;"                               >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY included-domains ""                                         >
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Task                            -->
+<!ELEMENT task          ((%title;), (%titlealts;)?,
+                         (%shortdesc; | %abstract;)?, 
+                         (%prolog;)?, (%taskbody;)?, 
+                         (%related-links;)?, (%task-info-types;)* )  >
+<!ATTLIST task            
+             id         ID                               #REQUIRED
+             conref     CDATA                            #IMPLIED
+             %select-atts;
+             %localization-atts;
+             %arch-atts;
+             outputclass 
+                        CDATA                            #IMPLIED
+             domains    CDATA                "&included-domains;"    >
+
+
+<!--                    LONG NAME: Task Body                       -->
+<!ELEMENT taskbody      ((%prereq;)?, (%context;)?, 
+                         (%steps; | %steps-unordered;)?, 
+                         (%result;)?, (%example;)?, (%postreq;)?)    >
+<!ATTLIST taskbody        
+             %id-atts;
+             %localization-atts;
+             base       CDATA                            #IMPLIED
+             %base-attribute-extensions;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Prerequisites                   -->
+<!ELEMENT prereq        (%section.notitle.cnt;)*                     >
+<!ATTLIST prereq        
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Context                         -->
+<!ELEMENT context       (%section.notitle.cnt;)*                     >
+<!ATTLIST context        
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Steps                           -->
+<!ELEMENT steps         ((%step;)+)                                  >
+<!ATTLIST steps         
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Steps: Unordered                -->
+<!ELEMENT steps-unordered 
+                        ((%step;)+)                                  >
+<!ATTLIST steps-unordered 
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Step                            -->
+<!ELEMENT step          (%cmd;, 
+                         (%info;  |%substeps; | %tutorialinfo; |
+                          %stepxmp; | %choicetable; | %choices;)*, 
+                         (%stepresult;)? )                           >
+<!ATTLIST step            
+             importance (optional | required | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance-task;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--ATTLIST step          
+               importance (optional | required)          #IMPLIED  -->
+
+
+<!--                    LONG NAME: Command                         -->
+<!ELEMENT cmd           (%ph.cnt;)*                                  >
+<!ATTLIST cmd             
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Information                     -->
+<!ELEMENT info          (%itemgroup.cnt;)*                           >
+<!ATTLIST info           
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Sub-steps                       -->
+<!ELEMENT substeps      (%substep;)+                                 >
+<!ATTLIST substeps       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Sub-step                        -->
+<!ELEMENT substep       (%cmd;, 
+                         (%info; | %tutorialinfo; | %stepxmp;)*, 
+                         (%stepresult;)? )                           >
+<!ATTLIST substep         
+             importance (optional | required | 
+                         -dita-use-conref-target)        #IMPLIED
+             %univ-atts-no-importance-task;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--ATTLIST substep       
+               importance 
+                        (optional | required)            #IMPLIED  -->
+
+
+<!--                    LONG NAME: Tutorial Information            -->
+<!ELEMENT tutorialinfo  (%itemgroup.cnt;)*                           >
+<!ATTLIST tutorialinfo   
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Step Example                    -->
+<!ELEMENT stepxmp       (%itemgroup.cnt;)*                           >
+<!ATTLIST stepxmp       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choices                         -->
+<!ELEMENT choices       ((%choice;)+)                                >
+<!ATTLIST choices       
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice                          -->
+<!ELEMENT choice        (%listitem.cnt;)*                            >
+<!ATTLIST choice          
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Table                    -->
+<!ELEMENT choicetable   ((%chhead;)?, (%chrow;)+ )                   >
+<!ATTLIST choicetable     
+             relcolwidth 
+                        CDATA                            #IMPLIED
+             keycol     NMTOKEN                          "1"
+             refcols    NMTOKENS                         #IMPLIED
+             spectitle  CDATA                            #IMPLIED
+             %display-atts;
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Head                     -->
+<!ELEMENT chhead        ((%choptionhd;), (%chdeschd;) )              >
+<!ATTLIST chhead         
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Option Head              -->
+<!ELEMENT choptionhd    (%tblcell.cnt;)*                             >
+<!ATTLIST choptionhd     
+             specentry  CDATA                           #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Description Head         -->
+<!ELEMENT chdeschd      (%tblcell.cnt;)*                             >
+<!ATTLIST chdeschd      
+             specentry  CDATA                           #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Row                      -->
+<!ELEMENT chrow         ((%choption;), (%chdesc;) )                  >
+<!ATTLIST chrow        
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Option                   -->
+<!ELEMENT choption      (%tblcell.cnt;)*>
+<!ATTLIST choption        
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Choice Description              -->
+<!ELEMENT chdesc        (%tblcell.cnt;)*>
+<!ATTLIST chdesc                
+             specentry  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Step Result                     -->
+<!ELEMENT stepresult    (%itemgroup.cnt;)*                           >
+<!ATTLIST stepresult    
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Result                          -->
+<!ELEMENT result        (%section.notitle.cnt;)*                     >
+<!ATTLIST result         
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Post Requirements               -->
+<!ELEMENT postreq       (%section.notitle.cnt;)*                     >
+<!ATTLIST postreq        
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST task        %global-atts;  class  CDATA "- topic/topic task/task "        >
+<!ATTLIST taskbody    %global-atts;  class  CDATA "- topic/body task/taskbody "     >
+<!ATTLIST steps       %global-atts;  class  CDATA "- topic/ol task/steps "          >
+<!ATTLIST steps-unordered 
+                      %global-atts;  class  CDATA "- topic/ul task/steps-unordered ">
+<!ATTLIST step        %global-atts;  class  CDATA "- topic/li task/step "           >
+<!ATTLIST cmd         %global-atts;  class  CDATA "- topic/ph task/cmd "            >
+<!ATTLIST substeps    %global-atts;  class  CDATA "- topic/ol task/substeps "       >
+<!ATTLIST substep     %global-atts;  class  CDATA "- topic/li task/substep "        >
+<!ATTLIST tutorialinfo 
+                      %global-atts;  class  CDATA "- topic/itemgroup task/tutorialinfo ">
+<!ATTLIST info        %global-atts;  class  CDATA "- topic/itemgroup task/info "    >
+<!ATTLIST stepxmp     %global-atts;  class  CDATA "- topic/itemgroup task/stepxmp " >
+<!ATTLIST stepresult  %global-atts;  class  CDATA "- topic/itemgroup task/stepresult ">
+
+<!ATTLIST choices     %global-atts;  class  CDATA "- topic/ul task/choices "        >
+<!ATTLIST choice      %global-atts;  class  CDATA "- topic/li task/choice "         >
+<!ATTLIST result       %global-atts;  class  CDATA "- topic/section task/result "   >
+<!ATTLIST prereq      %global-atts;  class  CDATA "- topic/section task/prereq "    >
+<!ATTLIST postreq     %global-atts;  class  CDATA "- topic/section task/postreq "   >
+<!ATTLIST context     %global-atts;  class  CDATA "- topic/section task/context "   >
+
+<!ATTLIST choicetable %global-atts;  class  CDATA "- topic/simpletable task/choicetable ">
+<!ATTLIST chhead      %global-atts;  class  CDATA "- topic/sthead task/chhead "     >
+<!ATTLIST chrow       %global-atts;  class  CDATA "- topic/strow task/chrow "       >
+<!ATTLIST choptionhd  %global-atts;  class  CDATA "- topic/stentry task/choptionhd ">
+<!ATTLIST chdeschd    %global-atts;  class  CDATA "- topic/stentry task/chdeschd "  >
+<!ATTLIST choption    %global-atts;  class  CDATA "- topic/stentry task/choption "  >
+<!ATTLIST chdesc      %global-atts;  class  CDATA "- topic/stentry task/chdesc "    >
+
+ 
+<!-- ================== End DITA Task  =========================== -->
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/tblDecl.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/tblDecl.mod
new file mode 100644
index 0000000..5b7a5b4
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/tblDecl.mod
@@ -0,0 +1,397 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    XML EXCHANGE TABLE MODEL DECLARATION MODULE       -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+
+<!-- ============================================================= -->
+<!--  Delivered as file "tblDecl.mod"                              -->
+<!-- ============================================================= -->
+
+
+<!-- XML EXCHANGE TABLE MODEL DECLARATION MODULE                   -->
+
+<!-- OASIS DITA 1.0 notes:
+     The Exchange Table Model replaces the original CALS-based model
+     used in development versions of the DITA definition.
+     This set of declarations defines the XML version of the Exchange
+     Table Model as adapted for OASIS DITA version 1.0.
+     The base for the DITA version of the Exchange Table Model is
+     defined at http://www.oasis-open.org/specs/tm9901.htm .
+     The DITA version specifically extends this model with these DITA-
+     specific content and attribute adaptations to the DITA processing
+     requirements:
+
+STRUCTURE:
+
+Introduce the DITA-unique <desc> element (optional after <title>); this element
+enables more consistent presentation of both figures and tables.
+
+
+ATTRIBUTES:
+
+For frame, align, and valign attributes on any element:
+  Add the enumerated value -dita-use-conref-target for DITA 1.1.  
+
+For the <table> element, add:
+  %univ-atts; which consists of:
+    %select-atts; [for selection, conditional processing]
+    %id-atts; [for conref and linking]
+    %localization-atts (@translate + @xml:lang) [for NLS processing support]
+    %global-atts; (@xtrf + @xtrc) [for tracing and messaging support in processors]
+    @class [for specialization support]
+  @outputclass [for role designation (ie, styles, future migrations)]
+  @rowheader [for accessibility support in processing]
+  %display-atts; which consists of:
+    @scale [for presentational equivalence with other scaled exhibits: fig, pre, lines, simpletable]
+    @frame (already part of table)
+    @pgwide (already part of table, same intent as original @expanse)
+
+For <tgroup>, <thead>, <tbody>, and <row>, add:
+  %univ-atts;
+  %global-atts;
+  @class
+  @outputclass [for role designation (ie, styles, future migrations)]
+
+For <entry>, add:
+  %id-atts;
+  %global-atts
+  @class
+  @outputclass [for role designation (ie, styles, future migrations)]
+  @rev [for indication of revised content for flag-based processing]
+
+-->
+
+<!-- DITA specialization support: element redefinition for expansion -->
+
+<!ENTITY % table "table">
+<!ENTITY % tgroup "tgroup">
+<!ENTITY % colspec "colspec">
+<!ENTITY % thead "thead">
+<!ENTITY % tbody "tbody">
+<!ENTITY % row "row">
+<!ENTITY % entry "entry">
+
+<!-- The Formal Public Identifier (FPI) for this DITA adaptation of
+     the Exchange Table Model shall be:
+
+     "-//OASIS//ELEMENTS DITA Exchange Table Model//EN"
+
+     This set of declarations may be referred to using a public external
+     entity declaration and reference as shown in the following three
+     lines:
+
+     <!ENTITY % tableXML
+       PUBLIC "-//OASIS//ELEMENTS DITA Exchange Table Model//EN">
+       %tableXML;
+-->
+
+
+
+<!-- In order to use the Exchange table model, various parameter entity
+     declarations are required.  A brief description is as follows:
+
+     ENTITY NAME      WHERE USED              WHAT IT IS
+
+     %yesorno         In ATTLIST of:          An attribute declared value
+                      almost all elements     for a "boolean" attribute
+
+     %paracon         In content model of:    The "text" (logical content)
+                      <entry>                 of the model group for <entry>
+
+     %titles          In content model of:    The "title" part of the model
+                      table element           group for the table element
+
+     %tbl.table.name  In declaration of:      The name of the "table"
+                      table element           element
+
+     %tbl.table-titles.mdl In content model of: The model group for the title
+                      table elements          part of the content model for
+                                              table element
+
+     %tbl.table.mdl   In content model of:    The model group for the content
+                      table elements          model for table element,
+                                              often (and by default) defined
+                                              in terms of %tbl.table-titles.mdl
+                                              and tgroup
+
+     %tbl.table.att   In ATTLIST of:          Additional attributes on the
+                      table element           table element
+
+     %bodyatt         In ATTLIST of:          Additional attributes on the
+                      table element           table element (for backward
+                                              compatibility with the SGML
+                                              model)
+
+     %tbl.tgroup.mdl  In content model of:    The model group for the content
+                      <tgroup>                model for <tgroup>
+
+     %tbl.tgroup.att  In ATTLIST of:          Additional attributes on the
+                      <tgroup>                <tgroup> element
+
+     %tbl.thead.att   In ATTLIST of:          Additional attributes on the
+                      <thead>                 <thead> element
+
+     %tbl.tbody.att   In ATTLIST of:          Additional attributes on the
+                      <tbody>                 <tbody> element
+
+     %tbl.colspec.att In ATTLIST of:          Additional attributes on the
+                      <colspec>               <colspec> element
+
+     %tbl.row.mdl     In content model of:    The model group for the content
+                      <row>                   model for <row>
+
+     %tbl.row.att     In ATTLIST of:          Additional attributes on the
+                      <row>                   <row> element
+
+     %tbl.entry.mdl   In content model of:    The model group for the content
+                      <entry>                 model for <entry>
+
+     %tbl.entry.att   In ATTLIST of:          Additional attributes on the
+                      <entry>                 <entry> element
+
+     This set of declarations will use the default definitions shown below
+     for any of these parameter entities that are not declared before this
+     set of declarations is referenced.
+
+     Note that DITA properties are added in cumulative declarations at the end.
+-->
+
+<!-- These definitions are not directly related to the table model, but are
+     used in the default CALS table model and may be defined elsewhere (and
+     prior to the inclusion of this table module) in the referencing DTD. -->
+
+<!ENTITY % yesorno 'NMTOKEN'> <!-- no if zero(s), yes if any other value -->
+<!ENTITY % titles  'title?'>
+<!ENTITY % paracon '%tblcell.cnt;'> <!-- default for use in entry content -->
+
+<!--
+The parameter entities as defined below change and simplify the CALS table
+model as published (as part of the Example DTD) in MIL-HDBK-28001.  The
+resulting simplified DTD has support from the SGML Open vendors and is
+therefore more interoperable among different systems.
+
+These following declarations provide the Exchange default definitions
+for these entities.  However, these entities can be redefined (by giving
+the appropriate parameter entity declaration(s) prior to the reference
+to this Table Model declaration set entity) to fit the needs of the
+current application.
+
+Note, however, that changes may have significant effect on the ability to
+interchange table information.  These changes may manifest themselves
+in useability, presentation, and possible structure information degradation.
+-->
+
+<!ENTITY % tbl.table.name       "table">
+<!ENTITY % tbl.table-titles.mdl "((%title;)?, (%desc;)?)?,">
+<!ENTITY % tbl.table-main.mdl   "(%tgroup;)+">
+<!ENTITY % tbl.table.mdl        "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
+<!ENTITY % tbl.table.att        "
+    pgwide      %yesorno;       #IMPLIED ">
+<!ENTITY % bodyatt              "">
+<!ENTITY % tbl.tgroup.mdl       "(%colspec;)*, (%thead;)?, %tbody;">
+<!ENTITY % tbl.tgroup.att       "">
+<!ENTITY % tbl.thead.att        "">
+<!ENTITY % tbl.tbody.att        "">
+<!ENTITY % tbl.colspec.att      "base    CDATA   #IMPLIED
+                                 %base-attribute-extensions;">
+<!ENTITY % tbl.row.mdl          "(%entry;)+">
+<!ENTITY % tbl.row.att          "">
+<!ENTITY % tbl.entry.mdl        "(%paracon;)*">
+<!ENTITY % tbl.entry.att        "base    CDATA   #IMPLIED
+                                 %base-attribute-extensions;">
+
+<!-- =====  Element and attribute declarations follow. =====  -->
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % tbl.table.name       "table"
+     ENTITY % tbl.table-titles.mdl "%titles;,"
+     ENTITY % tbl.table.mdl        "%tbl.table-titles; tgroup+"
+     ENTITY % tbl.table.att        "
+                        pgwide          %yesorno;       #IMPLIED "
+-->
+
+<!ELEMENT %tbl.table.name; (%tbl.table.mdl;)>
+
+<!ATTLIST %tbl.table.name;
+        frame           (top|bottom|topbot|all|sides|none| 
+                         -dita-use-conref-target)               #IMPLIED
+        colsep          %yesorno;                               #IMPLIED
+        rowsep          %yesorno;                               #IMPLIED
+        %tbl.table.att;
+        %bodyatt;
+>
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % tbl.tgroup.mdl    "colspec*,thead?,tbody"
+     ENTITY % tbl.tgroup.att    ""
+-->
+
+<!ELEMENT tgroup (%tbl.tgroup.mdl;) >
+
+<!ATTLIST tgroup
+        cols            NMTOKEN                                 #REQUIRED
+        colsep          %yesorno;                               #IMPLIED
+        rowsep          %yesorno;                               #IMPLIED
+        align           (left|right|center|justify|char| 
+                         -dita-use-conref-target)               #IMPLIED
+        %tbl.tgroup.att;
+>
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % tbl.colspec.att   ""
+-->
+
+<!ELEMENT colspec EMPTY >
+
+<!ATTLIST colspec
+        colnum          NMTOKEN                                 #IMPLIED
+        colname         NMTOKEN                                 #IMPLIED
+        colwidth        CDATA                                   #IMPLIED
+        colsep          %yesorno;                               #IMPLIED
+        rowsep          %yesorno;                               #IMPLIED
+        align           (left|right|center|justify|char| 
+                         -dita-use-conref-target)               #IMPLIED
+        char            CDATA                                   #IMPLIED
+        charoff         NMTOKEN                                 #IMPLIED
+        %tbl.colspec.att;
+>
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % tbl.thead.att      ""
+-->
+
+<!ELEMENT thead ((%row;)+)>
+
+<!ATTLIST thead
+        valign          (top|middle|bottom|
+                         -dita-use-conref-target)               #IMPLIED
+        %tbl.thead.att;
+>
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % tbl.tbody.att     ""
+-->
+
+<!ELEMENT tbody (%row;)+>
+
+<!ATTLIST tbody
+        valign          (top|middle|bottom| 
+                         -dita-use-conref-target)               #IMPLIED
+        %tbl.tbody.att;
+>
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % tbl.row.mdl       "entry+"
+     ENTITY % tbl.row.att       ""
+-->
+
+<!ELEMENT row (%tbl.row.mdl;)>
+
+<!ATTLIST row
+        rowsep          %yesorno;                               #IMPLIED
+        valign          (top|middle|bottom| 
+                         -dita-use-conref-target)               #IMPLIED
+        %tbl.row.att;
+>
+
+
+<!--
+     Default declarations previously defined in this entity and
+     referenced below include:
+     ENTITY % paracon           "#PCDATA"
+     ENTITY % tbl.entry.mdl     "(%paracon;)*"
+     ENTITY % tbl.entry.att     ""
+-->
+
+<!ELEMENT entry %tbl.entry.mdl;>
+
+<!ATTLIST entry
+        colname         NMTOKEN                                 #IMPLIED
+        namest          NMTOKEN                                 #IMPLIED
+        nameend         NMTOKEN                                 #IMPLIED
+        morerows        NMTOKEN                                 #IMPLIED
+        colsep          %yesorno;                               #IMPLIED
+        rowsep          %yesorno;                               #IMPLIED
+        align           (left|right|center|justify|char| 
+                         -dita-use-conref-target)               #IMPLIED
+        char            CDATA                                   #IMPLIED
+        charoff         NMTOKEN                                 #IMPLIED
+        valign          (top|middle|bottom| 
+                         -dita-use-conref-target)               #IMPLIED
+        %tbl.entry.att;
+>
+
+
+<!-- ============================================================= -->
+<!--                    DITA BEHAVIOR ATTRIBUTES                   -->
+<!-- ============================================================= -->
+
+<!ATTLIST %tbl.table.name;
+        rowheader   (firstcol | norowheader | 
+                         -dita-use-conref-target) #IMPLIED
+        scale (50|60|70|80|90|100|110|120|140|160|180|200| 
+                         -dita-use-conref-target) #IMPLIED
+        %univ-atts;
+        outputclass CDATA #IMPLIED>
+<!ATTLIST tgroup
+        %univ-atts;
+        outputclass CDATA #IMPLIED>
+<!ATTLIST thead
+        %univ-atts;
+        outputclass CDATA #IMPLIED>
+<!ATTLIST tbody
+        %univ-atts;
+        outputclass CDATA #IMPLIED>
+<!ATTLIST row
+        %univ-atts;
+        outputclass CDATA #IMPLIED>
+<!ATTLIST entry
+        %id-atts;
+        %localization-atts;
+        rev CDATA #IMPLIED
+        outputclass CDATA #IMPLIED>
+<!ATTLIST colspec
+        %id-atts;
+        %localization-atts;>
+
+<!-- ============================================================= -->
+<!--                    DITA SPECIALIZATION ATTRIBUTE DECLARATIONS -->
+<!-- ============================================================= -->
+
+<!ATTLIST table    %global-atts;  class CDATA "- topic/table "       >
+<!ATTLIST tgroup   %global-atts;  class CDATA "- topic/tgroup "      >
+<!ATTLIST colspec  %global-atts;  class CDATA "- topic/colspec "     >
+<!ATTLIST thead    %global-atts;  class CDATA "- topic/thead "       >
+<!ATTLIST tbody    %global-atts;  class CDATA "- topic/tbody "       >
+<!ATTLIST row      %global-atts;  class CDATA "- topic/row "         >
+<!ATTLIST entry    %global-atts;  class CDATA "- topic/entry "       >
+
+
+<!-- ================== End XML Exchange Table Model ============= -->
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topic.dtd b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topic.dtd
new file mode 100644
index 0000000..dcf5c57
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topic.dtd
@@ -0,0 +1,172 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Topic DTD                                    -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//DTD DITA Topic//EN"
+      Delivered as file "topic.dtd"                                -->
+
+<!-- The public ID above refers to the latest version of this DTD.
+     To refer to this specific version, you may use this value:
+PUBLIC "-//OASIS//DTD DITA 1.1 Topic//EN"                          -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    DTD to describe DITA Topics                       -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2006.06.07 RDA: Added indexing domain                      -->
+<!--    2006.06.21 RDA: Added props attribute extensions           -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATIONS                 -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % ui-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
+"uiDomain.ent"                                                       >
+%ui-d-dec;
+
+<!ENTITY % hi-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
+"highlightDomain.ent"                                                >
+%hi-d-dec;
+
+<!ENTITY % pr-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Programming Domain//EN" 
+"programmingDomain.ent"                                              >
+%pr-d-dec;
+
+<!ENTITY % sw-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Software Domain//EN" 
+"softwareDomain.ent"                                                 >
+%sw-d-dec;
+
+<!ENTITY % ut-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
+"utilitiesDomain.ent"                                                >
+%ut-d-dec;
+
+<!ENTITY % indexing-d-dec     PUBLIC 
+"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
+"indexingDomain.ent"                                                 >
+%indexing-d-dec;
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN EXTENSIONS                          -->
+<!-- ============================================================= -->
+<!--                    One for each extended base element, with
+                        the name of the domain(s) in which the
+                        extension was declared                     -->
+
+<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
+                                   %ui-d-pre;"                       >
+<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
+                                   %ui-d-keyword;"                   >
+<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
+                                    %hi-d-ph;     | %ui-d-ph;"       >
+<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
+<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
+<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
+<!-- ============================================================= -->
+<!ENTITY % props-attribute-extensions  ""                            >
+<!ENTITY % base-attribute-extensions   ""                            >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC NESTING OVERRIDE                     -->
+<!-- ============================================================= -->
+
+<!--                    Redefine the infotype entity to exclude 
+                        other topic types and disallow nesting     -->
+<!ENTITY % topic-info-types 
+                        "topic"                                      >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+<!--                    Must be declared ahead of the DTDs, which
+                        puts @domains first in order               -->
+
+<!ENTITY included-domains 
+                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
+                         &ut-d-att; &indexing-d-att;"                >
+
+
+<!-- ============================================================= -->
+<!--                    TOPIC ELEMENT INTEGRATION                  -->
+<!-- ============================================================= -->
+
+<!--                    Embed topic to get generic elements        -->
+<!ENTITY % topic-type   PUBLIC 
+"-//OASIS//ELEMENTS DITA Topic//EN" 
+"topic.mod"                                                          >
+%topic-type;
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ELEMENT INTEGRATION                 -->
+<!-- ============================================================= -->
+
+<!ENTITY % ui-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
+"uiDomain.mod"                                                       >
+%ui-d-def;
+
+<!ENTITY % hi-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
+"highlightDomain.mod"                                                >
+%hi-d-def;
+
+<!ENTITY % pr-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
+"programmingDomain.mod"                                              >
+%pr-d-def;
+
+<!ENTITY % sw-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Software Domain//EN" 
+"softwareDomain.mod"                                                 >
+%sw-d-def;
+
+<!ENTITY % ut-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
+"utilitiesDomain.mod"                                                >
+%ut-d-def;
+
+<!ENTITY % indexing-d-def     PUBLIC 
+"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
+"indexingDomain.mod"                                                 >
+%indexing-d-def;
+
+
+<!-- ================== End DITA Topic DTD  ====================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topic.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topic.mod
new file mode 100644
index 0000000..6ba9e29
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topic.mod
@@ -0,0 +1,427 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA DITA Topic                                   -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Topic//EN"
+      Delivered as file "topic.mod"                                -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the base Topic type                -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected the public ID for tblDecl.mod    -->
+<!--    2005.11.15 RDA: Removed old declaration for topicreftypes  -->
+<!--                    entity                                     -->
+<!--    2005.11.15 RDA: Corrected the PURPOSE in this comment      -->
+<!--    2005.11.15 RDA: Corrected Long Names for alt, indextermref -->
+<!--    2006.06.06 RDA: Bug fixes:                                 -->
+<!--                    Added xref and fn to fig.cnt               -->
+<!--                    Remove xmlns="" from global-atts           -->
+<!--    2006.06.06 RDA: Moved shared items to commonElements file  -->
+<!--    2006.06.07 RDA: Added <abstract> element                   -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.06.14 RDA: Add dir attribute to localization-atts     -->
+<!--    2006.06.20 RDA: defn.cnt now explicitly sets its content   -->
+<!--    2006.07.06 RDA: Moved class attributes in from topicAttr   -->
+<!--    2006.11.30 RDA: Add -dita-use-conref-target to enumerated  -->
+<!--                      attributes                               -->
+<!--    2006.11.30 RDA: Remove #FIXED from DITAArchVersion         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ARCHITECTURE ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!-- default namespace prefix for DITAArchVersion attribute can be
+     overridden through predefinition in the document type shell   -->
+<!ENTITY % DITAArchNSPrefix
+                       "ditaarch"                                    >
+
+<!-- must be instanced on each topic type                          -->
+<!ENTITY % arch-atts "
+             xmlns:%DITAArchNSPrefix; 
+                        CDATA                              #FIXED
+                       'http://dita.oasis-open.org/architecture/2005/'
+             %DITAArchNSPrefix;:DITAArchVersion
+                        CDATA                              '1.1'"    >
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!--                    Definitions of declared elements           -->
+<!ENTITY % topicDefns   PUBLIC 
+                       "-//OASIS//ENTITIES DITA Topic Definitions//EN" 
+                       "topicDefn.ent"                              >
+%topicDefns;
+
+<!--                      Content elements common to map and topic -->
+<!ENTITY % commonElements      PUBLIC 
+"-//OASIS//ELEMENTS DITA Common Elements//EN" "commonElements.mod"   >
+%commonElements;
+
+<!--                       MetaData Elements, plus indexterm       -->
+<!ENTITY % metaXML         PUBLIC 
+"-//OASIS//ELEMENTS DITA Metadata//EN" 
+"metaDecl.mod"                                                       >
+%metaXML;
+
+
+<!-- ============================================================= -->
+<!--                    ENTITY DECLARATIONS FOR ATTRIBUTE VALUES   -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % body.cnt             "%basic.block; | %required-cleanup; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % section.cnt          "#PCDATA | %basic.ph; | %basic.block; | %title; |  %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+<!ENTITY % section.notitle.cnt  "#PCDATA | %basic.ph; | %basic.block; |             %txt.incl; | %data.elements.incl; | %foreign.unknown.incl;">
+
+
+<!-- ============================================================= -->
+<!--                COMMON ENTITY DECLARATIONS                     -->
+<!-- ============================================================= -->
+
+<!-- for use within the DTD and supported topics; these will NOT work
+     outside of this DTD or dtds that specialize from it!          -->
+<!ENTITY nbsp                   "&#xA0;"                             >
+
+
+<!-- ============================================================= -->
+<!--                    NOTATION DECLARATIONS                      -->
+<!-- ============================================================= -->
+<!--                    DITA uses the direct reference model; 
+                        notations may be added later as required   -->
+
+
+<!-- ============================================================= -->
+<!--                    STRUCTURAL MEMBERS                         -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % info-types    'topic'                                     > 
+
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+<!-- Copied into metaDecl.mod -->
+<!--<!ENTITY % date-format 'CDATA'                                >-->
+
+<!ENTITY % rel-atts      
+            'type       CDATA                              #IMPLIED
+             role      (parent | child | sibling | 
+                        friend | next | previous | cousin | 
+                        ancestor | descendant | sample | 
+                        external | other | 
+                        -dita-use-conref-target)           #IMPLIED
+             otherrole  CDATA                              #IMPLIED' >
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION OF DECLARED ELEMENTS        -->
+<!-- ============================================================= -->
+
+<!ENTITY % topic-info-types "%info-types;">
+
+
+<!-- ============================================================= -->
+<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
+<!-- ============================================================= -->
+
+<!ENTITY included-domains ""                                         >
+  
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+
+<!--                    LONG NAME: Topic                           -->
+<!ELEMENT topic         ((%title;), (%titlealts;)?,
+                         (%shortdesc; | %abstract;)?, 
+                         (%prolog;)?, (%body;)?, (%related-links;)?,
+                         (%topic-info-types;)* )                     >
+<!ATTLIST topic           
+             id         ID                                 #REQUIRED
+             conref     CDATA                              #IMPLIED
+             %select-atts;
+             %localization-atts;
+             outputclass 
+                        CDATA                              #IMPLIED
+             %arch-atts;
+             domains    CDATA                    "&included-domains;">
+
+
+<!--                    LONG NAME: Title Alternatives              -->
+<!ELEMENT titlealts     ((%navtitle;)?, (%searchtitle;)?)            >
+<!ATTLIST titlealts      
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Navigation Title                -->
+<!ELEMENT navtitle      (%words.cnt;)*                               >
+<!ATTLIST navtitle     
+             %univ-atts;                                             >
+
+<!--                    LONG NAME: Search Title                    -->
+<!ELEMENT searchtitle   (%words.cnt;)*                               >
+<!ATTLIST searchtitle     
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Abstract                        -->
+<!ELEMENT abstract      (%section.notitle.cnt; | %shortdesc;)*       >
+<!ATTLIST abstract         
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+                        
+<!--                    LONG NAME: Short Description               -->
+<!--
+<!ELEMENT shortdesc     (%title.cnt;)*                               >
+<!ATTLIST shortdesc    
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+-->
+
+
+<!--                    LONG NAME: Body                            -->
+<!ELEMENT body          (%body.cnt; | %section; | %example;)*        >
+<!ATTLIST body            
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: No Topic nesting                -->
+<!ELEMENT no-topic-nesting EMPTY                                     >
+
+
+<!--                    LONG NAME: Section                         -->
+<!ELEMENT section       (%section.cnt;)*                             >
+<!ATTLIST section         
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Example                         -->
+<!ELEMENT example       (%section.cnt;)*                             >
+<!ATTLIST example         
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Description                     -->
+<!--                    Desc is used in context with figure and 
+                        table titles and also for content models 
+                        within linkgroup and object (for 
+                        accessibility)                             -->
+<!--
+<!ELEMENT desc          (%desc.cnt;)*                                >
+<!ATTLIST desc           
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+-->
+
+<!-- ============================================================= -->
+<!--                    PROLOG (METADATA FOR TOPICS)               -->
+<!--                    TYPED DATA ELEMENTS                        -->
+<!-- ============================================================= -->
+<!--                    typed content definitions                  -->
+<!--                    typed, localizable content                 -->
+
+<!--                    LONG NAME: Prolog                          -->
+<!ELEMENT prolog        ((%author;)*, (%source;)?, (%publisher;)?,
+                         (%copyright;)*, (%critdates;)?,
+                         (%permissions;)?, (%metadata;)*, 
+                         (%resourceid;)*,
+                         (%data.elements.incl; | 
+                          %foreign.unknown.incl;)*)                  >
+<!ATTLIST prolog        
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Metadata                        -->
+<!ELEMENT metadata       ((%audience;)*, (%category;)*, (%keywords;)*,
+                          (%prodinfo;)*, (%othermeta;)*, 
+                          (%data.elements.incl; |
+                           %foreign.unknown.incl;)*)                 >
+<!ATTLIST metadata
+              %univ-atts;        
+              mapkeyref CDATA                             #IMPLIED   >
+
+
+
+<!-- ============================================================= -->
+<!--                    BASIC DOCUMENT ELEMENT DECLARATIONS        -->
+<!--                    (rich text)                                -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   BASE FORM PHRASE TYPES                      -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                      LINKING GROUPING                         -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Related Links                   -->
+<!ELEMENT related-links (%link; | %linklist; | %linkpool;)+          >
+<!ATTLIST related-links  
+             %rel-atts;
+             %univ-atts;
+             format     CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Link                            -->
+<!ELEMENT link          ((%linktext;)?, (%desc;)?)                   >
+<!ATTLIST link            
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED
+             query      CDATA                            #IMPLIED
+             %rel-atts;
+             %univ-atts;
+             format     CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Link Text                       -->
+<!ELEMENT linktext      (%words.cnt;)*                               >
+<!ATTLIST linktext        
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Link List                       -->
+<!ELEMENT linklist      ((%title;)?, (%desc;)?,
+                         (%linklist; | %link;)*, (%linkinfo;)?)      >
+<!ATTLIST linklist        
+            collection-type 
+                        (unordered | sequence | choice |
+                         tree | family | 
+                         -dita-use-conref-target)        #IMPLIED
+             duplicates (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             mapkeyref  CDATA                            #IMPLIED
+             %rel-atts;
+             %univ-atts;
+             spectitle  CDATA                            #IMPLIED
+             format     CDATA                            #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Link Information                -->
+<!ELEMENT linkinfo      (%desc.cnt;)*                                >
+<!ATTLIST linkinfo        
+             %univ-atts;                                             >
+
+
+<!--                    LONG NAME: Link Pool                       -->
+<!ELEMENT linkpool      (%linkpool; | %link;)*                       >
+<!ATTLIST linkpool        
+             collection-type 
+                        (unordered | sequence | choice |
+                         tree | family | 
+                         -dita-use-conref-target)        #IMPLIED
+             duplicates (yes | no | 
+                         -dita-use-conref-target)        #IMPLIED
+             mapkeyref  CDATA                            #IMPLIED
+             %rel-atts;
+             %univ-atts;
+             format     CDATA   #IMPLIED
+             scope      (local | peer | external | 
+                         -dita-use-conref-target)        #IMPLIED
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+
+<!-- ============================================================= -->
+<!--                    MODULES CALLS                              -->
+<!-- ============================================================= -->
+
+
+<!--                      Table Elements                           -->
+<!--    2005.11.15 RDA: Corrected the public ID for tblDecl.mod,   -->
+<!--  from the old value "-//OASIS//ELEMENTS DITA CALS Tables//EN" -->
+<!-- Tables are now part of commonElements -->
+<!--<!ENTITY % tableXML       PUBLIC  
+"-//OASIS//ELEMENTS DITA Exchange Table Model//EN" 
+"tblDecl.mod"                                                        >
+%tableXML;-->
+
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+            
+<!ATTLIST abstract  %global-atts;  class CDATA "- topic/abstract "   >
+<!ATTLIST body      %global-atts;  class CDATA "- topic/body "       >
+<!ATTLIST example   %global-atts;  class CDATA "- topic/example "    >
+<!ATTLIST link      %global-atts;  class CDATA "- topic/link "       >
+<!ATTLIST linkinfo  %global-atts;  class CDATA "- topic/linkinfo "   >
+<!ATTLIST linklist  %global-atts;  class CDATA "- topic/linklist "   >
+<!ATTLIST linkpool  %global-atts;  class CDATA "- topic/linkpool "   >
+<!ATTLIST linktext  %global-atts;  class CDATA "- topic/linktext "   >
+<!ATTLIST metadata  %global-atts;  class CDATA "- topic/metadata "   >
+<!ATTLIST navtitle  %global-atts;  class CDATA "- topic/navtitle "   >
+<!ATTLIST no-topic-nesting 
+                    %global-atts;  class CDATA "- topic/no-topic-nesting ">
+<!ATTLIST prolog    %global-atts;  class CDATA "- topic/prolog "     >
+<!ATTLIST related-links 
+                    %global-atts;  class CDATA "- topic/related-links ">
+<!ATTLIST searchtitle 
+                    %global-atts;  class CDATA "- topic/searchtitle ">
+<!ATTLIST section   %global-atts;  class CDATA "- topic/section "    >
+<!ATTLIST titlealts %global-atts;  class CDATA "- topic/titlealts "  >
+<!ATTLIST topic     %global-atts;  class CDATA "- topic/topic "      >
+
+<!-- Shortdesc in map uses map/shortdesc so this one must be 
+     included, even though the element is common. -->
+<!ATTLIST shortdesc   %global-atts;  class CDATA "- topic/shortdesc ">
+
+<!-- ================== End DITA Topic  ========================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topicDefn.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topicDefn.ent
new file mode 100644
index 0000000..e9f6b10
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/topicDefn.ent
@@ -0,0 +1,72 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Topic Definitions                            -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+PUBLIC"-//OASIS//ENTITIES DITA Topic Definitions//EN"
+      Delivered as file "topicDefn.ent"                            -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the topic definitions                   -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Removed old declarations for spanspec and  -->
+<!--                    tfoot entities                             -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!--    2006.07.06 RDA: Moved common elements to the module        -->
+<!--                    commonElements.ent                         -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % topic        "topic"                                      >
+<!ENTITY % abstract     "abstract"                                   >
+<!ENTITY % body         "body"                                       >
+<!ENTITY % example      "example"                                    >
+<!ENTITY % link         "link"                                       >
+<!ENTITY % linkinfo     "linkinfo"                                   >
+<!ENTITY % linklist     "linklist"                                   >
+<!ENTITY % linkpool     "linkpool"                                   >
+<!ENTITY % linktext     "linktext"                                   >
+<!ENTITY % metadata     "metadata"                                   >
+<!ENTITY % navtitle     "navtitle"                                   >
+<!ENTITY % no-topic-nesting     
+                        "no-topic-nesting"                           >
+<!ENTITY % prolog       "prolog"                                     >
+<!ENTITY % related-links     
+                        "related-links"                              >
+<!ENTITY % searchtitle  "searchtitle"                                >
+<!ENTITY % section      "section"                                    >
+<!ENTITY % shortdesc    "shortdesc"                                  >
+<!ENTITY % titlealts    "titlealts"                                  >
+
+<!--                    Also include common elements used in topics
+                        and maps                                   -->
+<!ENTITY % commonDefns   PUBLIC 
+                       "-//OASIS//ENTITIES DITA Common Elements//EN" 
+                       "commonElements.ent"                          >
+%commonDefns;
+
+<!-- ================== End Topic Definitions Entities =========== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/uiDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/uiDomain.ent
new file mode 100644
index 0000000..2f0a22d
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/uiDomain.ent
@@ -0,0 +1,54 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA User Interface Domain Entities               -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA User Interface Domain//EN"
+      Delivered as file "uiDomain.ent"                             -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the User Interface Domain -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ENTITY % ui-d-keyword "wintitle"                                   >
+<!ENTITY % ui-d-ph      "uicontrol | menucascade"                    >
+<!ENTITY % ui-d-pre     "screen"                                     >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+
+<!ENTITY ui-d-att "(topic ui-d)">
+
+
+<!-- ================== End User Interface Domain Entities ======= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/uiDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/uiDomain.mod
new file mode 100644
index 0000000..de09fec
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/uiDomain.mod
@@ -0,0 +1,117 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA User Interface Domain                        -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA User Interface Domain//EN"
+      Delivered as file "uiDomain.mod"                             -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the User Interface Domain          -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Corrected LONG NAME for screen             -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+  
+<!ENTITY % uicontrol   "uicontrol"                                   >
+<!ENTITY % wintitle    "wintitle"                                    >
+<!ENTITY % menucascade "menucascade"                                 >
+<!ENTITY % shortcut    "shortcut"                                    >
+<!ENTITY % screen      "screen"                                      >
+
+
+<!-- ============================================================= -->
+<!--                    UI KEYWORD TYPES ELEMENT DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: User Interface Control          -->
+<!ELEMENT uicontrol     (%words.cnt; | %image; | %shortcut;)*        >
+<!ATTLIST uicontrol       
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Window Title                    -->
+<!ELEMENT wintitle      (#PCDATA)                                    >
+<!ATTLIST wintitle        
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+
+<!--                    LONG NAME: Menu Cascade                    -->
+<!ELEMENT menucascade   (%uicontrol;)+                               >
+<!ATTLIST menucascade     
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Short Cut                       -->
+<!ELEMENT shortcut      (#PCDATA)                                    >
+<!ATTLIST shortcut        
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Text Screen Capture             -->
+<!ELEMENT screen        (#PCDATA | %basic.ph.notm; | %txt.incl; |
+                         %data.elements.incl; | 
+                         %foreign.unknown.incl;)*                    >
+<!ATTLIST screen          
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             xml:space  (preserve)               #FIXED 'preserve'
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+             
+
+<!ATTLIST menucascade %global-atts;  class CDATA "+ topic/ph ui-d/menucascade "  >
+<!ATTLIST screen      %global-atts;  class CDATA "+ topic/pre ui-d/screen "      >
+<!ATTLIST shortcut    %global-atts;  class CDATA "+ topic/keyword ui-d/shortcut ">
+<!ATTLIST uicontrol   %global-atts;  class CDATA "+ topic/ph ui-d/uicontrol "    >
+<!ATTLIST wintitle    %global-atts;  class CDATA "+ topic/keyword ui-d/wintitle ">
+
+ 
+<!-- ================== End DITA User Interface Domain =========== -->
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/utilitiesDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/utilitiesDomain.ent
new file mode 100644
index 0000000..c90c5f9
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/utilitiesDomain.ent
@@ -0,0 +1,53 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Utilities Domain Entities                    -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA Utilities Domain//EN"
+      Delivered as file "utilitiesDomain.ent"                      -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the utilities domain      -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Removed entity "ut-d-simpletable"          -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ENTITY % ut-d-fig     "imagemap"                                   >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+  
+<!ENTITY ut-d-att       "(topic ut-d)"                               >
+
+
+<!-- ================== End Utilities Domain Entities ============ -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/utilitiesDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/utilitiesDomain.mod
new file mode 100644
index 0000000..1d0c22b
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/utilitiesDomain.mod
@@ -0,0 +1,121 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA Utilities Domain                             -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identifier or an
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA Utilities Domain//EN"
+      Delivered as file "utilitiesDomain.mod"                      -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the elements and specialization         -->
+<!--             attributes for the DITA Utilities Domain          -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             March 2001                                        -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2005, 2006.              -->
+<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
+<!--             All Rights Reserved.                              -->
+<!--                                                               -->
+<!--  UPDATES:                                                     -->
+<!--    2005.11.15 RDA: Updated these comments to match template   -->
+<!--    2005.11.15 RDA: Corrected the "Delivered as" system ID     -->
+<!--    2006.06.07 RDA: Make universal attributes universal        -->
+<!--                      (DITA 1.1 proposal #12)                  -->
+<!--    2006.06.14 RDA: Move univ-atts-translate-no into topic.mod -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                   ELEMENT NAME ENTITIES                       -->
+<!-- ============================================================= -->
+
+<!ENTITY % imagemap    "imagemap"                                    >
+<!ENTITY % area        "area"                                        >
+<!ENTITY % shape       "shape"                                       >
+<!ENTITY % coords      "coords"                                      >
+
+
+<!-- ============================================================= -->
+<!--                    COMMON ATTLIST SETS                        -->
+<!-- ============================================================= -->
+
+
+<!--                    Provide an alternative univ-atts that sets 
+                        translate to default 'no'                  -->
+<!-- Now uses the definition from topic.mod                        -->
+<!--<!ENTITY % univ-atts-translate-no
+            '%id-atts;
+             %select-atts;
+             translate  (yes | no | 
+                         -dita-use-conref-target)        "no"
+             xml:lang   NMTOKEN                          #IMPLIED
+             dir       (ltr | rtl | lro | rlo | 
+                        -dita-use-conref-target)         #IMPLIED'   >-->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS for IMAGEMAP          -->
+<!-- ============================================================= -->
+
+
+<!--                    LONG NAME: Imagemap                        -->
+<!ELEMENT imagemap      ((%image;), (%area;)+)                       >           
+<!ATTLIST imagemap        
+             %display-atts;
+             spectitle  CDATA                            #IMPLIED
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Hoptspot Area Description       -->
+<!ELEMENT area          ((%shape;), (%coords;), (%xref;))            >
+<!ATTLIST area         
+             %univ-atts;                                  
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Shape of the Hotspot            -->
+<!ELEMENT shape         (#PCDATA)                                    >
+<!ATTLIST shape           
+             keyref     CDATA                            #IMPLIED
+             %univ-atts-translate-no;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+
+<!--                    LONG NAME: Coordinates of the Hotspot      -->
+<!ELEMENT coords        (%words.cnt;)*                               >
+<!ATTLIST coords          
+             keyref     CDATA                            #IMPLIED
+             %univ-atts-translate-no;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+             
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+
+<!ATTLIST imagemap %global-atts;  class CDATA "+ topic/fig ut-d/imagemap " >
+<!ATTLIST area     %global-atts;  class CDATA "+ topic/figgroup ut-d/area ">
+<!ATTLIST shape    %global-atts;  class CDATA "+ topic/keyword ut-d/shape ">
+<!ATTLIST coords   %global-atts;  class CDATA "+ topic/ph ut-d/coords "    >
+
+ 
+<!-- ================== End Utilities Domain ====================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/xnalDomain.ent b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/xnalDomain.ent
new file mode 100644
index 0000000..1f4ccde
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/xnalDomain.ent
@@ -0,0 +1,46 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    DITA XNAL Domain Entities                         -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identfier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ENTITIES DITA XNAL Domain//EN"
+      Delivered as file "xnalDomain.ent"                           -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Declaring the substitution context and domain     -->
+<!--             entity declarations for the XNAL domain           -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             All Rights Reserved.                              -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    ELEMENT EXTENSION ENTITY DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ENTITY % xnal-d-author "authorinformation"                         >
+
+
+<!-- ============================================================= -->
+<!--                    DOMAIN ENTITY DECLARATION                  -->
+<!-- ============================================================= -->
+
+<!ENTITY xnal-d-att "(topic xnal-d)"                                 >
+
+
+<!-- ================== End XNAL Domain Entities ================= -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/xnalDomain.mod b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/xnalDomain.mod
new file mode 100644
index 0000000..82f3ec3
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/dita11/xnalDomain.mod
@@ -0,0 +1,277 @@
+<!-- ============================================================= -->
+<!--                    HEADER                                     -->
+<!-- ============================================================= -->
+<!--  MODULE:    XNAL Domain                                       -->
+<!--  VERSION:   1.1                                               -->
+<!--  DATE:      November 2006                                     -->
+<!--                                                               -->
+<!-- ============================================================= -->
+
+<!-- ============================================================= -->
+<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
+<!--                    TYPICAL INVOCATION                         -->
+<!--                                                               -->
+<!--  Refer to this file by the following public identfier or an 
+      appropriate system identifier 
+PUBLIC "-//OASIS//ELEMENTS DITA XNAL Domain//EN"
+      Delivered as file "xnalDomain.mod"                           -->
+
+<!-- ============================================================= -->
+<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
+<!--                                                               -->
+<!-- PURPOSE:    Define elements and specialization atttributed    -->
+<!--             for the XNAL Domain                               -->
+<!--                                                               -->
+<!-- ORIGINAL CREATION DATE:                                       -->
+<!--             June 2006                                         -->
+<!--                                                               -->
+<!--             (C) Copyright OASIS Open 2006.                    -->
+<!--             All Rights Reserved.                              -->
+<!-- ============================================================= -->
+
+
+<!-- ============================================================= -->
+<!--                    ELEMENT NAME ENTITIES                      -->
+<!-- ============================================================= -->
+
+
+<!ENTITY % authorinformation "authorinformation"                     >
+<!ENTITY % addressdetails  "addressdetails"                          >
+<!ENTITY % administrativearea "administrativearea"                   >
+<!ENTITY % contactnumber   "contactnumber"                           >
+<!ENTITY % contactnumbers  "contactnumbers"                          >
+<!ENTITY % country         "country"                                 >
+<!ENTITY % emailaddress    "emailaddress"                            >
+<!ENTITY % emailaddresses  "emailaddresses"                          >
+<!ENTITY % firstname       "firstname"                               >
+<!ENTITY % generationidentifier "generationidentifier"               >
+<!ENTITY % honorific       "honorific"                               >
+<!ENTITY % lastname        "lastname"                                >
+<!ENTITY % locality        "locality"                                >
+<!ENTITY % localityname    "localityname"                            >
+<!ENTITY % middlename      "middlename"                              >
+<!ENTITY % namedetails     "namedetails"                             >
+<!ENTITY % organizationinfo "organizationinfo"                       >
+<!ENTITY % organizationname "organizationname"                       >
+<!ENTITY % organizationnamedetails "organizationnamedetails"         >
+<!ENTITY % otherinfo       "otherinfo"                               >
+<!ENTITY % personinfo      "personinfo"                              >
+<!ENTITY % personname      "personname"                              >
+<!ENTITY % postalcode      "postalcode"                              >
+<!ENTITY % thoroughfare    "thoroughfare"                            >
+<!ENTITY % url             "url"                                     >
+<!ENTITY % urls            "urls"                                    >
+
+<!-- ============================================================= -->
+<!--                    ELEMENT DECLARATIONS                       -->
+<!-- ============================================================= -->
+                      
+<!--                    LONG NAME: Author Information              -->
+<!ELEMENT authorinformation
+                        ((%personinfo; | %organizationinfo;)*)       >
+<!ATTLIST authorinformation     
+             %univ-atts;
+             href       CDATA                            #IMPLIED
+             keyref     CDATA                            #IMPLIED
+             type       (creator | contributor | 
+                         -dita-use-conref-target)        #IMPLIED    >
+
+<!--                    LONG NAME: Name Details                    -->
+<!ELEMENT namedetails   ((%personname; | %organizationnamedetails;)*)>
+<!ATTLIST namedetails
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Organization Details            -->
+<!ELEMENT organizationnamedetails      
+                        ((%organizationname;)?, (%otherinfo;)*)      >
+<!ATTLIST organizationnamedetails              
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Organization Name               -->
+<!ELEMENT organizationname
+                        (%ph.cnt;)*                                  >
+<!ATTLIST organizationname
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Person Name                     -->
+<!ELEMENT personname    ((%honorific;)?, 
+                         (%firstname;)*,(%middlename;)*,(%lastname;)*,
+                         (%generationidentifier;)?, (%otherinfo;)*)  >
+<!ATTLIST personname
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Honorific                       -->
+<!ELEMENT honorific     (#PCDATA)*                                   >
+<!ATTLIST honorific
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: First Name                      -->
+<!ELEMENT firstname     (#PCDATA)*                                   >
+<!ATTLIST firstname
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Middle Name                     -->
+<!ELEMENT middlename    (#PCDATA)*                                   >
+<!ATTLIST middlename
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Last Name                       -->
+<!ELEMENT lastname      (#PCDATA)*                                   >
+<!ATTLIST lastname
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Generation Identifier           -->
+<!ELEMENT generationidentifier
+                        (#PCDATA)*                                   >
+<!ATTLIST generationidentifier
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Other Information               -->
+<!ELEMENT otherinfo     (%words.cnt;)*>
+<!ATTLIST otherinfo
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Address Details                 -->
+<!ELEMENT addressdetails
+                        (%words.cnt;|%locality;|%administrativearea;|
+                         %thoroughfare;|%country;)*                  >
+<!ATTLIST addressdetails              
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Locality                        -->
+<!ELEMENT locality      (%words.cnt;|%localityname;|%postalcode;)*   >
+<!ATTLIST locality
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Locality Name                   -->
+<!ELEMENT localityname  (%words.cnt;)*                               >
+<!ATTLIST localityname
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Administrative Area             -->
+<!ELEMENT administrativearea
+                        (%words.cnt;)*                               >
+<!ATTLIST administrativearea
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass 
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Thoroughfare                    -->
+<!ELEMENT thoroughfare  (%words.cnt;)*                               >
+<!ATTLIST thoroughfare
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Postal Code                     -->
+<!ELEMENT postalcode    (#PCDATA)*                                   >
+<!ATTLIST postalcode
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Country                         -->
+<!ELEMENT country       (#PCDATA)*                                   >
+<!ATTLIST country
+             keyref     CDATA                            #IMPLIED
+             %univ-atts;
+             outputclass
+                        CDATA                            #IMPLIED    >
+
+<!--                    LONG NAME: Person Information              -->
+<!ELEMENT personinfo    ((%namedetails;)?, (%addressdetails;)?,
+                         (%contactnumbers;)?, (%emailaddresses;)?)   >
+<!ATTLIST personinfo
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Organization Information        -->
+<!ELEMENT organizationinfo
+                        ((%namedetails;)?, (%addressdetails;)?, 
+                         (%contactnumbers;)?, (%emailaddresses;)?,
+                         (%urls;)?)                                  >  
+<!ATTLIST organizationinfo 
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Contact Numbers                 -->
+<!ELEMENT contactnumbers
+                        (%contactnumber;)*                           >
+<!ATTLIST contactnumbers
+             %data-element-atts;                                     >
+                        
+<!--                    LONG NAME: Contact Number                  -->
+<!--                    Note: set the type of number using @type   -->
+<!ELEMENT contactnumber (#PCDATA)*                                   >  
+<!ATTLIST contactnumber
+             %data-element-atts;                                     >            
+                        
+<!--                    LONG NAME: Email Addresses                 -->
+<!ELEMENT emailaddresses
+                        (%emailaddress;)*                            >
+<!ATTLIST emailaddresses
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: Email Address                   -->
+<!ELEMENT emailaddress  (%words.cnt;)*                               >
+<!ATTLIST emailaddress
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: URLs                            -->
+<!ELEMENT urls          (%url;)*                                     >  
+<!ATTLIST urls
+             %data-element-atts;                                     >
+
+<!--                    LONG NAME: URL                             -->
+<!ELEMENT url           (%words.cnt;)*                               >  
+<!ATTLIST url
+             %data-element-atts;                                     >
+
+<!-- ============================================================= -->
+<!--                    SPECIALIZATION ATTRIBUTE DECLARATIONS      -->
+<!-- ============================================================= -->
+
+<!ATTLIST addressdetails %global-atts; class CDATA "+ topic/ph xnal-d/addressdetails ">
+<!ATTLIST administrativearea %global-atts; class CDATA "+ topic/ph xnal-d/administrativearea ">
+<!ATTLIST authorinformation %global-atts; class CDATA "+ topic/author xnal-d/authorinformation ">
+<!ATTLIST contactnumber %global-atts; class CDATA "+ topic/data xnal-d/contactnumber ">
+<!ATTLIST contactnumbers %global-atts; class CDATA "+ topic/data xnal-d/contactnumbers ">
+<!ATTLIST country     %global-atts; class CDATA "+ topic/ph xnal-d/country ">
+<!ATTLIST emailaddress %global-atts; class CDATA "+ topic/data xnal-d/emailaddress ">
+<!ATTLIST emailaddresses %global-atts; class CDATA "+ topic/data xnal-d/emailaddresses ">
+<!ATTLIST firstname   %global-atts; class CDATA "+ topic/data xnal-d/firstname ">
+<!ATTLIST generationidentifier %global-atts; class CDATA "+ topic/data xnal-d/generationidentifier ">
+<!ATTLIST honorific   %global-atts; class CDATA "+ topic/data xnal-d/honorific ">
+<!ATTLIST lastname    %global-atts; class CDATA "+ topic/data xnal-d/lastname ">
+<!ATTLIST locality    %global-atts; class CDATA "+ topic/ph xnal-d/locality ">
+<!ATTLIST localityname %global-atts; class CDATA "+ topic/ph xnal-d/localityname ">
+<!ATTLIST middlename  %global-atts; class CDATA "+ topic/data xnal-d/middlename ">
+<!ATTLIST namedetails %global-atts; class CDATA "+ topic/data xnal-d/namedetails ">
+<!ATTLIST organizationinfo %global-atts; class CDATA "+ topic/data xnal-d/organizationinfo ">
+<!ATTLIST organizationname %global-atts;  class CDATA "+ topic/ph xnal-d/organizationname ">
+<!ATTLIST organizationnamedetails %global-atts; class CDATA "+ topic/ph xnal-d/organizationnamedetails ">
+<!ATTLIST otherinfo   %global-atts; class CDATA "+ topic/data xnal-d/otherinfo ">
+<!ATTLIST personinfo  %global-atts; class CDATA "+ topic/data xnal-d/personinfo ">
+<!ATTLIST personname  %global-atts; class CDATA "+ topic/data xnal-d/personname ">
+<!ATTLIST postalcode  %global-atts; class CDATA "+ topic/ph xnal-d/postalcode ">
+<!ATTLIST thoroughfare %global-atts; class CDATA "+ topic/ph xnal-d/thoroughfare ">
+<!ATTLIST url         %global-atts; class CDATA "+ topic/data xnal-d/url ">
+<!ATTLIST urls        %global-atts; class CDATA "+ topic/data xnal-d/urls ">
+
+<!-- ================== End DITA XNAL Domain  =================== -->
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/plugin.properties b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/plugin.properties
new file mode 100644
index 0000000..bd011c1
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/plugin.properties
@@ -0,0 +1,12 @@
+
+doctype.concept=DITA Concept
+doctype.composite=DITA Composite
+doctype.reference=DITA Reference
+doctype.task=DITA Task
+doctype.topic=DITA Topic
+doctype.map=DITA Map
+
+style.classed=DITA Classed
+style.mapStyle=DITA Map
+plugin.name = VEX DITA (Incubator)
+providerName = Eclipse.org
\ No newline at end of file
diff --git a/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/plugin.xml b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/plugin.xml
new file mode 100644
index 0000000..aea8234
--- /dev/null
+++ b/sourceediting/plugins/org.eclipse.wst.xml.vex.dita/plugin.xml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+   <extension
+         id="concept"
+         name="%doctype.concept"
+         point="org.eclipse.wst.xml.vex.ui.doctypes">
+      <doctype
+            systemId="concept.dtd"
+            dtd="dita11/concept.dtd"
+            publicId="-//OASIS//DTD DITA 1.1 Concept//EN">
+         <rootElement
+               name="concept">
+         </rootElement>
+      </doctype>
+   </extension>
+   <extension
+         id="composite"
+         name="%doctype.composite"
+         point="org.eclipse.wst.xml.vex.ui.doctypes">
+      <doctype
+            systemId="ditabase.dtd"
+            dtd="dita11/ditabase.dtd"
+            publicId="-//OASIS//DTD DITA Composite//EN">
+      </doctype>
+   </extension>
+   <extension
+         id="reference"
+         name="%doctype.reference"
+         point="org.eclipse.wst.xml.vex.ui.doctypes">
+      <doctype
+            systemId="reference.dtd"
+            dtd="dita11/reference.dtd"
+            publicId="-//OASIS//DTD DITA Reference//EN">
+      </doctype>
+   </extension>
+   <extension
+         id="task"
+         name="%doctype.task"
+         point="org.eclipse.wst.xml.vex.ui.doctypes">
+      <doctype
+            systemId="task.dtd"
+            dtd="dita11/task.dtd"
+            publicId="-//OASIS//DTD DITA Task//EN">
+      </doctype>
+   </extension>
+   <extension
+         id="topic"
+         name="%doctype.topic"
+         point="org.eclipse.wst.xml.vex.ui.doctypes">
+      <doctype
+            systemId="topic.dtd"
+            dtd="dita11/topic.dtd"
+            publicId="-//OASIS//DTD DITA Topic//EN">
+      </doctype>
+   </extension>
+   <extension
+         id="map"
+         name="%doctype.map"
+         point="org.eclipse.wst.xml.vex.ui.doctypes">
+      <doctype
+            systemId="map.dtd"
+            dtd="dita11/map.dtd"
+            publicId="-//OASIS//DTD DITA Map//EN">
+      </doctype>
+   </extension>
+   <extension
+         id="classed"
+         name="%style.classed"
+         point="org.eclipse.wst.xml.vex.ui.styles">
+      <style
+            css="css/dita_classed_shell_vex.css">
+         <doctypeRef
+               publicId="-//OASIS//DTD DITA Reference//EN">
+         </doctypeRef>
+         <doctypeRef
+               publicId="-//OASIS//DTD DITA Task//EN">
+         </doctypeRef>
+         <doctypeRef
+               publicId="-//OASIS//DTD DITA Topic//EN">
+         </doctypeRef>
+         <doctypeRef
+               publicId="-//OASIS//DTD DITA Composite//EN">
+         </doctypeRef>
+         <doctypeRef
+               publicId="-//OASIS//DTD DITA 1.1 Concept//EN">
+         </doctypeRef>
+      </style>
+   </extension>
+   
+   <extension
+         id="mapStyle"
+         name="%style.mapStyle"
+         point="org.eclipse.wst.xml.vex.ui.styles">
+      <style
+            css="css/map_shell.css">
+         <doctypeRef
+               publicId="-//OASIS//DTD DITA Map//EN">
+         </doctypeRef>
+      </style>
+   </extension>
+</plugin>
