This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new ac25f4b2c1 ISIS-3073: polishing Metamodel Terminology
ac25f4b2c1 is described below

commit ac25f4b2c1ba9e6573941753989fe769faeb60bc
Author: Andi Huber <[email protected]>
AuthorDate: Wed Jun 29 08:25:08 2022 +0200

    ISIS-3073: polishing Metamodel Terminology
---
 .../resources/pages/metamodel_terminology.adoc     | 60 +++++++++++++++-------
 1 file changed, 42 insertions(+), 18 deletions(-)

diff --git 
a/antora/components/docs/modules/resources/pages/metamodel_terminology.adoc 
b/antora/components/docs/modules/resources/pages/metamodel_terminology.adoc
index 35fe6740a0..4890190c20 100644
--- a/antora/components/docs/modules/resources/pages/metamodel_terminology.adoc
+++ b/antora/components/docs/modules/resources/pages/metamodel_terminology.adoc
@@ -1,48 +1,72 @@
 # metamodel_terminology
 
+== Metamodel Terminology
+
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements. See the NOTICE file distributed with this work 
for additional information regarding copyright ownership. The ASF licenses this 
file to you under the Apache License, Version 2.0 (the "License"); you may not 
use this file except in compliance with the License. You may obtain a copy of 
the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by 
applicable law or ag [...]
 
-.metamodel_terminology
 [plantuml,file="metamodel_terminology.png"]
+.Metamodel Terminology
 --
 @startuml
 
 skinparam nodesep 20
 skinparam ranksep 1
 
+(Domain\nObject) as DO
+(Entity) as E
+(View\nModel) as VM
+(<i>Apache Isis</i>) as FW
+(Persistence\nLayer) as PL
+together {
+       (Mixin) as M
+       (Mixee) as ME
+}
+(Service) as S
+(Domain\nService) as DS
+(<i>Spring</i>) as SPRING
+(Member) as MB
+(Property) as P
+(Collection) as C
+(Action) as A
+
 together {
-    (Domain\nObject) as DO
-    (Entity) as E
-    (View\nModel) as VM
     DO <-d-"is a" VM
     DO <-d-"is a" E
-    (Isis) as FW
     FW .u.> VM : manages
-    (Persistence\nLayer) as PL
     PL .u.> E : manages
 }
 
 together {
-    (Member) as MB
-    (Property) as P
-    (Collection) as C
-    (Action) as A
     P "is a"-u-> MB
     C "is a"-u-> MB
     A "is a"-u-> MB
 }
 DO --> MB : has 1..*
 
-(Mixin) as M
-(Mixee) as ME
-
-M "contributes"..> MB
-M "to"-> ME
+M "contributes\n a"..> MB
+M "contributes\n to"-> ME
 DO -> ME : can \n act \n as
 
-(Service) as S
-(Domain\nService) as DS
+SPRING ..> S : manages
 DS "is a"-u-> S
-DS --> A : contribute \n according \n to <i>Nature</i>
+DS --> A : contributes\n an\n
 @enduml
 --
+
+*_Viewmodels_* and *_Entities_* are specializations of *_Domain-Objects_*. 
+
+_Domain-Objects_ have *_Properties_*, *_Collections_* and *_Actions_*, 
+while _Viewmodels_ are (lifecycle-) managed by _Apache Isis_, 
+_Entities_ are managed by the configured persistence layer 
+(either JDO or JPA).
+
+*_Services_* in general are (lifecycle-) managed by _Spring_. 
+We distinguish between _Services_ that *_contribute_* to the metamodel
+and those that don't. Contributing _Services_ we call *_Domain-Services_*. 
+Those do contribute _Actions_ to the metamodel. 
+Those _Actions_ are either visible as _Menu Actions_ in the UI 
+and/or made available for the _Restful Objects Viewer_. 
+(As indicated by the so called _Service's_ *_Nature_*.)
+
+*_Mixins_* do contribute either a _Property_, a _Collection_ 
+or an _Action_ to their *_Mixee_* (-type). 

Reply via email to