hi andrea,
so, basically, what is the best way to do this in a single workspace?
this is exactly what workspaces are designed for. so the single best way to do what you would like to achieve in a content repository is to have multiple workspaces "draft", "stage" and "public".
there is no good way to do that with a single workspace since you would be emulating functionality provided by the repository in your own application code. there are numerous bad ways though, to simulate your usecase in a single workspace. is there an issue with using multiple workspaces? <not-entirely-serious> to me this conversation sounds similar to: Q: I want to have multiple updates to a relational database table committed in an atomic fashion, how do i do that? A: Use the built-in transactions! Q: ...but how do i do it without transactions? A: why would you? </not-entirely-serious> regards, david
