It pretty much depends on your application. The first definition is better if the shape of the tree is determined by elements, for example, if you have a balanced binary tree:

On the other hand, if your tree acts as a container for unlimited elements, where the shape of the tree does not depend on them, it makes sense to put values in the leaves.
Heinrich Apfelmus .
data Tree v a = Leaf v a
| Branch v (Tree v a) (Tree v a)
a , ( , ) v, v, .