diff --git a/src/calng/schemas.py b/src/calng/schemas.py
index 0fc434ecf8e8734bed4d7ce05a24f88f0ff2f382..bbe2f9e726681491569202138cea7bfcf820df6e 100644
--- a/src/calng/schemas.py
+++ b/src/calng/schemas.py
@@ -80,7 +80,7 @@ def xtdf_output_schema(use_shmem_handle=True):
         VECTOR_STRING_ELEMENT(res)
         .key("calngShmemPaths")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue([])
         .commit(),
 
         NODE_ELEMENT(res)
@@ -90,7 +90,7 @@ def xtdf_output_schema(use_shmem_handle=True):
         STRING_ELEMENT(res)
         .key("metadata.source")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue("")
         .commit(),
 
         NODE_ELEMENT(res)
@@ -100,7 +100,7 @@ def xtdf_output_schema(use_shmem_handle=True):
         INT32_ELEMENT(res)
         .key("metadata.timestamp.tid")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         NODE_ELEMENT(res)
@@ -110,37 +110,37 @@ def xtdf_output_schema(use_shmem_handle=True):
         INT32_ELEMENT(res)
         .key("header.minorTrainFormatVersion")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         INT32_ELEMENT(res)
         .key("header.majorTrainFormatVersion")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         INT32_ELEMENT(res)
         .key("header.trainId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         INT64_ELEMENT(res)
         .key("header.linkId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         INT64_ELEMENT(res)
         .key("header.dataId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         INT64_ELEMENT(res)
         .key("header.pulseCount")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         NDARRAY_ELEMENT(res)
@@ -158,7 +158,7 @@ def xtdf_output_schema(use_shmem_handle=True):
         INT32_ELEMENT(res)
         .key("detector.trainId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         NDARRAY_ELEMENT(res)
@@ -180,13 +180,13 @@ def xtdf_output_schema(use_shmem_handle=True):
         INT32_ELEMENT(res)
         .key("trailer.status")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         INT32_ELEMENT(res)
         .key("trailer.trainId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
     )
 
@@ -217,7 +217,7 @@ def jf_output_schema(use_shmem_handle=True):
         INT32_ELEMENT(res)
         .key("data.trainId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
 
         NDARRAY_ELEMENT(res)
@@ -239,7 +239,7 @@ def jf_output_schema(use_shmem_handle=True):
         VECTOR_STRING_ELEMENT(res)
         .key("calngShmemPaths")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue([])
         .commit(),
     )
     if use_shmem_handle:
@@ -269,7 +269,7 @@ def pnccd_output_schema(use_shmem_handle=True):
         UINT64_ELEMENT(res)
         .key("data.trainId")
         .assignmentOptional()
-        .noDefaultValue()
+        .defaultValue(0)
         .commit(),
     )
     if use_shmem_handle: