diff --git a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.cxx b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.cxx
index ad0138c43d03d03b34497d972c27154f333ae1eb..9e19eb9edf084388c64c23ccf8a87b6ad68ba574 100644
--- a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.cxx
+++ b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.cxx
@@ -35,7 +35,9 @@ StatusCode xAODTestReadCVec::initialize()
 {
   errorcheck::ReportMessage::hideErrorLocus();
 
-  SG::ConstAccessor<float> dVar1 ("dVar1");
+  if (m_testDecorSE) {
+    SG::ConstAccessor<float> dVar1 ("dVar1");
+  }
 
   ATH_CHECK( m_cvecKey.initialize() );
   if (!m_writeKey.key().empty())
@@ -64,13 +66,16 @@ StatusCode xAODTestReadCVec::execute (const EventContext& ctx) const
   const static SG::ConstAccessor<int> anInt2 ("anInt2");
   const static SG::ConstAccessor<int> anInt10 ("anInt10");
   const static SG::ConstAccessor<int> dInt1 ("dInt1");
-  const static SG::ConstAccessor<float> dVar1 ("dVar1"); // testing schema evolution
   const static SG::ConstAccessor<int> dInt100 ("dInt100");
   const static SG::ConstAccessor<int> dInt150 ("dInt150");
   const static SG::ConstAccessor<int> dInt200 ("dInt200");
   const static SG::ConstAccessor<int> dInt250 ("dInt250");
   const static SG::ConstAccessor<ElementLink<DMTest::CVec> > cEL ("cEL");
 
+   // testing schema evolution
+  const static SG::ConstAccessor<float> dVar1SE (m_testDecorSE ? "dVar1" : "dxVar1");
+  const static SG::ConstAccessor<int> dVar1NoSE (m_testDecorSE ? "dxVar1" : "dVar1");
+
   // Ordering of auxid is not reliable.  Sort by name.
   const SG::AuxTypeRegistry& r = SG::AuxTypeRegistry::instance();
   std::vector<std::string> names;
@@ -96,8 +101,14 @@ StatusCode xAODTestReadCVec::execute (const EventContext& ctx) const
       ost << " anInt2: " << anInt2(*c);
     if (dInt1.isAvailable(*c))
       ost << " dInt1: " << dInt1(*c);
-    if (dVar1.isAvailable(*c))
-      ost << " dVar1: " << dVar1(*c);
+    if (m_testDecorSE) {
+      if (dVar1SE.isAvailable(*c))
+        ost << " dVar1: " << dVar1SE(*c);
+    }
+    else {
+      if (dVar1NoSE.isAvailable(*c))
+        ost << " dVar1: " << dVar1NoSE(*c);
+    }
     if (dInt100.isAvailable(*c))
       ost << " dInt100: " << dInt100(*c);
     if (dInt150.isAvailable(*c))
diff --git a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.h b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.h
index a9a200a0f899d2da13f59016bf906e0b486a7982..45b4ec5ec6af649712bae043385107d520d8f921 100644
--- a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.h
+++ b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadCVec.h
@@ -54,6 +54,9 @@ private:
 
   BooleanProperty m_brief
   { this, "Brief", false, "" };
+
+  BooleanProperty m_testDecorSE
+  { this, "TestDecorSE", true, "" };
 };