In Domain-Driven Design there's the idea of bounded context which is basically a way to stablish a boundary within which a certain model is valid as far as I understood. I've found this idea very useful because prior to reading about it one of the main challenges I've faced to use object orientation correctly was the existence of ambiguities on the model (a
Product class which depending on the context might mean something different, for example).
Now, although I think I understood a little the idea of bounded contexts, I'm yet unsure on how to implement this on practice.
My main doubt, which is what I'm asking in this question, is the following: when we are coding a bounded context, it should contain just domain code or be an entire application?
In some readings I've got the impression that a bounded context referred to an entire application. But this seems not to be in accordance to the understanding I've got and to the fact that DDD deals with just the domain model. In truth, IMHO most of the time we are interested in building one application, and it happens that there are different contexts within each the terms from the ubiquitous language, although the same, means different things. In that case we do not intend to build several applications, but just one.
In that case, when implementing DDD bounded contexts, they should contain just the domain model for that context, or be an entire application?