Hi Devs, I'm not a contributor but I think option 3 would be a mistake - it will contribute to poor separation of concerns through obfuscation. Option 1 is the best choice of the three presented. Regards,David.
On Tuesday, 30 December 2014 4:13 AM, Dan Haywood <d...@haywood-associates.co.uk> wrote: OK, so it comes down to either: option 1: @DomainEntity(persistence=JDO|EXTERNAL)@ViewModel with @DomainEntityLayout@ViewModelLayout where:* is symmetrical* some attributes of @DomainEntity don't apply if persistence=EXTERNAL* the two layouts are basically identical to each other --- or --- option 2: @DomainEntity(persistence=JDO|EXTERNAL)@ViewModel with @DomainObjectLayout where:* not symmetrical* some attributes of @DomainEntity don't apply if persistence=EXTERNAL --- or --- option 3: @DomainObject(persistence=JDO|EXTERNAL|VIEW_MODEL) with @DomainObjectLayout where:* is symmetrical* some attributes of @DomainEntity don't apply if persistence=EXTERNAL or VIEW_MODEL* concept of view model is less visible Cast your votes, please! Dan On 29 December 2014 at 15:02, GESCONSULTOR - Óscar Bou <o....@gesconsultor.com> wrote: As currently there's no "special" support for AggregateRoots or ValueObjects, no more annotations are needed. Sounds like a vote to deprecate. Jeroen has said the same thing. Perhaps they should be deleted in v2.0 and reappear, if we want them back, in v3.0. I agree with Jeroen. Currently there's nothing specific about Aggregate Roots on Apache Isis, at least on the most used modules, AFAK. * replace @DomainObject(viewModel=false) with @DomainEntity(persistence=JDO) ... this would be the default I like it :) * replace @DomainObject(viewModel=true) with @DomainEntity(persistence=EXTERNAL) This one also! ... for view models representing externally-persisted entities. In the Javadoc, say that auditing, publishing and bounded are not supported for these * keep @ViewModel ... extend to include the non-entity stuff from @DomainObject that does apply (basically, I think that's just "objectType" ) ... the intention being that this is used for application-layer views. I agree. It should be kept for those use cases. keep @DomainObjectLayout, because everything in it applies equally to both view models (either variety) and JDO entities. Mmmmm.... I would prefer to keep symmetry... I know it introduces some redundant checks on implementation but, from the user's perspective, is a clearer model ... I'll reply on your points on @Property and @Parameter separately. Thx Dan Óscar Bou Bou Responsable de Producto Auditor Jefe de Certificación ISO 27001 en BSI CISA, CRISC, APMG ISO 20000, ITIL-F 902 900 231 / 620 267 520 http://www.twitter.com/oscarbou http://es.linkedin.com/in/oscarbou http://www.GesConsultor.com Este mensaje y los ficheros anexos son confidenciales. Los mismos contienen información reservada que no puede ser difundida. Si usted ha recibido este correo por error, tenga la amabilidad de eliminarlo de su sistema y avisar al remitente mediante reenvío a su dirección electrónica; no deberá copiar el mensaje ni divulgar su contenido a ninguna persona.Su dirección de correo electrónico junto a sus datos personales constan en un fichero titularidad de Gesdatos Software, S.L. cuya finalidad es la de mantener el contacto con Ud. Si quiere saber de qué información disponemos de Ud., modificarla, y en su caso, cancelarla, puede hacerlo enviando un escrito al efecto, acompañado de una fotocopia de su D.N.I. a la siguiente dirección: Gesdatos Software, S.L. , Paseo de la Castellana, 153 bajo - 28046 (Madrid), y Avda. Cortes Valencianas num. 50, 1ºC - 46015 (Valencia). Asimismo, es su responsabilidad comprobar que este mensaje o sus archivos adjuntos no contengan virus informáticos, y en caso que los tuvieran eliminarlos.