This is how we implemented DDD in several teams: everything is either an entity, a value object, or an aggregate root. Generic integers and strings exist only in the infrastructure/interface layers between users or external systems and the domain kernel.