You should include Tensor into sparse_tensor list.
Working code snippet
import tensorflow as tf

def parse(x):
    s1 = tf.sparse.from_dense([0, 0, 2, 1])
    s2 = tf.sparse.from_dense([0, 1])
    return [s1, s2, tf.constant([1, 2, 3])]

dataset = tf.data.Dataset.from_tensor_slices(list(range(10)))
dataset = dataset.batch(2)
dataset = dataset.map(parse)
for d in dataset.take(1):
    print(d)