> trucks
containing boxes
containing parcels
containing cans
.. or try this type:
data Item a = Truck a [Item] | Box a [Item] | Parcel a [Item] | Can a [Item]
"a" here is a property you may use to identify each Item e.g. String