diff --git a/README b/README
index fc0286a2a220f97f92f6448da6bee5e0e553c979..8ab152e1c84469dd5c64a05b69b6c1171c85301b 100644
--- a/README
+++ b/README
@@ -141,6 +141,11 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 Change history
 --------------
 
+Version 2.12g (09/03/2014)
+- Minor fix to function generateToEtreeChildren.  Must generate
+  call to get_valueOf only when defined (i.e. when element is
+  simpleContent or isMixed).
+
 Version 2.12f (08/12/2014)
 - Fix for substitutionGroup conflict with keyword name mapping.
   Thanks to Leonid Minchin for finding and helping with this
diff --git a/generateDS.py b/generateDS.py
index c8eff6ceb842d122ad360b4c5afb5e1529301cf5..0bb303d4d0ca58980fe78d01fe2814ef708aeec1 100755
--- a/generateDS.py
+++ b/generateDS.py
@@ -179,7 +179,7 @@ logging.disable(logging.INFO)
 # Do not modify the following VERSION comments.
 # Used by updateversion.py.
 ##VERSION##
-VERSION = '2.12e'
+VERSION = '2.12g'
 ##VERSION##
 
 GenerateProperties = 0
@@ -2319,8 +2319,9 @@ def generateToEtreeChildren(wrt, element, Targetnamespace):
                             "mapping_=mapping_)\n" % (
                                 name, unmappedName,))
     else:
-        wrt("        if self.hasContent_():\n")
-        wrt("            element.text = self.gds_format_string(self.get_valueOf_())\n")
+        if element.getSimpleContent() or element.isMixed():
+            wrt("        if self.hasContent_():\n")
+            wrt("            element.text = self.gds_format_string(self.get_valueOf_())\n")
 #end generateToEtreeChildren
 
 
diff --git a/generateDS.txt b/generateDS.txt
index f74e1552878d748a211558a3bffc4d8ced0405e3..e831964708daf43c4dbd3d219cd8888c70503b7b 100644
--- a/generateDS.txt
+++ b/generateDS.txt
@@ -12,7 +12,7 @@ generateDS -- Generate Data Structures from XML Schema
 
 .. version
 
-:revision: 2.12e
+:revision: 2.12g
 
 .. version
 
diff --git a/gui/generateds_gui.py b/gui/generateds_gui.py
index 93dfb521933f9a3d2f4844eb6b5b067806b61f31..60aef401a31da20ac781cb5df81c1e54f09b6647 100755
--- a/gui/generateds_gui.py
+++ b/gui/generateds_gui.py
@@ -31,7 +31,7 @@ from libgenerateDS.gui import generateds_gui_session
 # Do not modify the following VERSION comments.
 # Used by updateversion.py.
 ##VERSION##
-VERSION = '2.12e'
+VERSION = '2.12g'
 ##VERSION##
 
 
diff --git a/librarytemplate_howto.txt b/librarytemplate_howto.txt
index 5c10d2543226a014dfb25fbc16afc190ae203acb..32f3bf1679996dcf78bb28dedabb48b9bdd4726a 100644
--- a/librarytemplate_howto.txt
+++ b/librarytemplate_howto.txt
@@ -8,7 +8,7 @@ How to package a generateDS.py generated library
 
 .. version
 
-:revision: 2.12e
+:revision: 2.12g
 
 .. version
 
diff --git a/process_includes.py b/process_includes.py
index 2b6e816d18a4c11dbaf22a1accb9ebe369190694..6bb534769a2e999fc34acc1e50dfb710fe045009 100755
--- a/process_includes.py
+++ b/process_includes.py
@@ -30,7 +30,7 @@ from lxml import etree
 # Do not modify the following VERSION comments.
 # Used by updateversion.py.
 ##VERSION##
-VERSION = '2.12e'
+VERSION = '2.12g'
 ##VERSION##
 
 CatalogDict = {}
diff --git a/setup.py b/setup.py
index 132ca3d069095e9c0ab221a6b58fa987276ab1c7..515df70aa63d8f56158f2106b7450a8e45d1e48c 100644
--- a/setup.py
+++ b/setup.py
@@ -7,7 +7,7 @@ setup(name="generateDS",
 # Do not modify the following VERSION comments.
 # Used by updateversion.py.
 ##VERSION##
-    version="2.12e",
+    version="2.12g",
 ##VERSION##
     author="Dave Kuhlman",
     author_email="dkuhlman@davekuhlman.org",
diff --git a/tests/to_etree1_sup.py b/tests/to_etree1_sup.py
index 3fc3ea640a14f8b906cc3308c82df3c50fd1af5f..75d42db49061beaa9285a6c6a89d4e2dcc4a6fd4 100644
--- a/tests/to_etree1_sup.py
+++ b/tests/to_etree1_sup.py
@@ -1557,6 +1557,8 @@ class paramType(GeneratedsSuper):
             element.set('type', self.gds_format_string(self.type_))
         if self.id is not None:
             element.set('id', self.gds_format_string(self.id))
+        if self.hasContent_():
+            element.text = self.gds_format_string(self.get_valueOf_())
         if mapping_ is not None:
             mapping_[self] = element
         return element
diff --git a/tests/to_etree2_sup.py b/tests/to_etree2_sup.py
index 3fc3ea640a14f8b906cc3308c82df3c50fd1af5f..75d42db49061beaa9285a6c6a89d4e2dcc4a6fd4 100644
--- a/tests/to_etree2_sup.py
+++ b/tests/to_etree2_sup.py
@@ -1557,6 +1557,8 @@ class paramType(GeneratedsSuper):
             element.set('type', self.gds_format_string(self.type_))
         if self.id is not None:
             element.set('id', self.gds_format_string(self.id))
+        if self.hasContent_():
+            element.text = self.gds_format_string(self.get_valueOf_())
         if mapping_ is not None:
             mapping_[self] = element
         return element
diff --git a/tutorial/generateds_tutorial.txt b/tutorial/generateds_tutorial.txt
index f5e3e16df3d9a88451bacb539aa9a120b82bcb89..0dcab2bed59309ae4a0193ae930ed316d586c40a 100644
--- a/tutorial/generateds_tutorial.txt
+++ b/tutorial/generateds_tutorial.txt
@@ -11,7 +11,7 @@ generateDS -- Introduction and Tutorial
 
 .. version
 
-:revision: 2.12e
+:revision: 2.12g
 
 .. version