Ok.

So let's raise some questions/doubts :)

*** @DomainObject  ***

Is a ViewModel a DomainObject at all ?

I would consider them as a different kind, so the @ViewModel annotation 
shouldn't be deleted.
Also, perhaps we can introduce Isis platform logic like not "saving/persisting" 
view models, etc. If that would be the case, the "editing" and 
"editingDisabledReason" at least might not have any sense. 


If so, I would better align with DDD naming conventions, in order to gain 
acceptance.

So, names should be @Entity or @DomainEntity (for avoiding name collision with 
JPA) - instead of @DomainObject -.


I like the @DomainService name, as it can act as a DDD Factory and/or 
Repository.


As currently there's no "special" support for AggregateRoots or ValueObjects, 
no more annotations are needed.


So the proposed set would be:
        • @ViewModel and @ViewModelLayout
        • @DomainService and @DomainServiceLayout
        • @DomainEntity and @DomainEntityLayout
        • @Property and @PropertyLayout
        • @Collection and @CollectionLayout
        • @Action and @ActionLayout
        • @Parameter and @ParameterLayout


*** @Property  ***

- I would propose to rename "notPersisted" to "transient".
- Also, not sure about the exact meaning of "regexPatternFlags". Should it be 
an Enum?
- I misunderstood "cardinality". I always associated it with a "number". 
Perhaps a better name could be "isMandatory" with a "TRUE | FALSE | DEFAULT" 
enum associated to its value? Another alternative could be "persisting" and 
default values "DEFAULT | OPTIONAL | MANDATORY". Or, in order to be more 
generic (for example, to use the same name on the @Parameter annotation, it 
could be something like "required".


*** @Parameter  ***

- Same as @Property. I suggest to rename "cardinality" to "required".



HTH,

Oscar




> El 29/12/2014, a las 11:45, Martin Grigorov <mgrigo...@apache.org> escribió:
> 
> Hi,
> 
> Looks good to me!
> 
> Martin Grigorov
> Wicket Training and Consulting
> https://twitter.com/mtgrigorov
> 
> On Mon, Dec 29, 2014 at 12:36 PM, Dan Haywood <d...@haywood-associates.co.uk>
> wrote:
> 
>> Hi folks,
>> 
>> have done some further tidy up on the new annotations for domain semantics,
>> ie @DomainObject, @Property, @Collection, @Action and @Parameter.
>> 
>> Nothing yet implemented in terms of facet factories, but think I have the
>> annotations themselves pretty much finalized [1].
>> 
>> Would appreciate a review from anyone interested, save me reworking stuff
>> 
>> Cheers
>> Dan
>> 
>> [1] https://issues.apache.org/jira/browse/ISIS-970
>> 


Ó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://www.twitter.com/oscarbou>

   http://es.linkedin.com/in/oscarbou <http://es.linkedin.com/in/oscarbou>

   http://www.GesConsultor.com <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.





Reply via email to