I have recently purchased your book and am quite excited by the possibilities that the Naked Objects framework offers.
I am currently building a prototype app using the XML object store so I can see what is being persisted. This app is based around projects that will be represented as nodes in a graph that end users can walk in the client UI. (i.e. each project could have multiple parents and children which equate to related projects and sub-projects). I have setup a bi-directional relationship between the nodes using an interposed link object that contains additional attributes pertaining to the relationship.
These relations between nodes need to be filtered according to the user, the relationship type and other attributes of the relationship contained within the link object. Most users would be unaware of the link object and its attributes and it is therefore hidden from the UI.
My idea was to perform a query against the link objects to obtain the set of relations that apply for a particular scenario, and use that set to dynamically populate a collection contained within the current visible Project object and thus exposing the sub-projects in the UI.
I have annotated this collection with the @NotPersisted annotation. However despite this annotation the dynamic collection is being persisted in the XML object store.
I somewhat nonplussed by this and feel maybe I am missing some concept here. Any help or suggestions you can offer would be greatly appreciated.
Hope all this makes sense,