diff --git a/cmd/cue/cmd/common.go b/cmd/cue/cmd/common.go
index 6163ac3..c1b1ed7 100644
--- a/cmd/cue/cmd/common.go
+++ b/cmd/cue/cmd/common.go
@@ -203,7 +203,6 @@
 type streamingIterator struct {
 	r    *cue.Runtime
 	inst *cue.Instance
-	base cue.Value
 	b    *buildPlan
 	cfg  *encoding.Config
 	a    []*decoderInfo
@@ -232,12 +231,13 @@
 		}
 		i.r = internal.GetRuntime(inst).(*cue.Runtime)
 		if b.schema == nil {
-			i.base = inst.Value()
+			b.encConfig.Schema = inst.Value()
 		} else {
-			i.base = inst.Eval(b.schema)
-			if err := i.base.Err(); err != nil {
+			schema := inst.Eval(b.schema)
+			if err := schema.Err(); err != nil {
 				return &streamingIterator{e: err}
 			}
+			b.encConfig.Schema = schema
 		}
 	default:
 		return &streamingIterator{e: errors.Newf(token.NoPos,
@@ -293,10 +293,10 @@
 		return false
 	}
 	i.v = inst.Value()
-	if i.base.Exists() {
-		i.e = i.base.Err()
+	if schema := i.b.encConfig.Schema; schema.Exists() {
+		i.e = schema.Err()
 		if i.e == nil {
-			i.v = i.v.Unify(i.base)
+			i.v = i.v.Unify(schema)
 			i.e = i.v.Err()
 		}
 		i.f = nil
diff --git a/internal/encoding/encoding.go b/internal/encoding/encoding.go
index 8606bcb..67ad181 100644
--- a/internal/encoding/encoding.go
+++ b/internal/encoding/encoding.go
@@ -143,6 +143,8 @@
 	Stream    bool // will potentially write more than one document per file
 	AllErrors bool
 
+	Schema cue.Value // used for schema-based decoding
+
 	EscapeHTML bool
 	ProtoPath  []string
 	Format     []format.Option
