Re: Working with domain events. Referencing leaf / sub-entity of agg

"'chr.j.johansen' [email protected] [domaindrivendesign]" <[email protected]> Thu, 19 May 2016 17:29:32 +0200
Newsgroups gmane.comp.programming.domain-driven-design
Message-ID <[email protected]>
----_com.samsung.android.email_1033962953443020
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

SGlUbyBtZSBpdCBzZWVtcyB0aGF0IGNhbGwgb2ZmIGlzIGl0cyBvd24gYWdncmVsYXRlZCBy
b290IHNpbmNlIGl0IGNvdWxkIGJlIHVwZGF0ZWQgaW5kaXZpZHVhbGx5LiBDaGVja2luZyBm
b3IgaXRlbSBjb3VudCBjb3VsZCBiZSBkb25lIGJ5IGFub3cgb3JkZXIgc2VydmljZSBmZXRo
aW5nIG9yZGVyIGFuIGNhbGwgb2ZmIGZyb20gcmVwb3NpdG9yeS5Zb3UgY2FuIG1vZGVsIGV2
ZW50cyBsaWtlIGNhbGwtb2ZmIGNyZWF0ZWQgY2FsbCBvZmYgZGVsaXZlcmVkIGV0Yy5Zb3Vy
IGFnZ3JlZ2F0ZXMgc2hvdWxkIGJlIG1vZGVsbGVkIGFyb3VuZCB3aGF0IGNoYW5nZXMgaW4g
b25lIHRyYW5zYWN0aW9uLgpJZiBjYWxsIG9mZiBnZXRzIHVwZGF0ZWQgaW5kZXBlbmRlbnRs
eSBpdCBtaWdodCBiZSBhIGdvb2QgaWRlYSB0byBtYWtlIGl0IGl0cyBvd24gYWdncmVnYXRl
LiBUaGVuIGl0IGRvZXNuJ3QgY29uZmxpY3Qgd2l0aCBvdGhlciB1cGRhdGVzIHRvIHRoZSBv
cmRlci4gTW9kZWxsaW5nIGRlcGVuZHMgb24gaG93IGZyZXF1ZW50IHRoZSBvcmRlciBnZXRz
IGNoYW5nZWQuIElzIGl0IGxpa2VseSB0aGF0IG11bHRpcGxlIHVzZXJzIHVwZGF0ZSB0aGUg
b3JkZXIgc2ltdWx0YW5lb3VzbHk/IMKgSWYgbm90IHlvdXQgY291bGQgbWFrZSBjYWxsIG9m
ZiBhIHBhcnQgb2YgdGhlIG9yZGVyIGFnZ3JlZ2F0ZS5Ib3BlIEknbSBub3QgdG90YWxseSBv
ZiB0cmFjayB1bmRlcnN0YW5kaW5nIHlvdXIgZG9tYWluLgoKClNlbnQgZnJvbSBteSBTYW1z
dW5nIEdhbGF4eSBzbWFydHBob25lLg==

----_com.samsung.android.email_1033962953443020
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit





<head>

<style type="text/css">
<!--

/* start of attachment style */
       .ygrp-photo-title{
         clear: both;
         font-size: smaller;
         height: 15px;
         overflow: hidden;
         text-align: center;
         width: 75px;
       }
       div.ygrp-photo{
         background-position: center;
         background-repeat: no-repeat;
         background-color: white;
         border: 1px solid black;
         height: 62px;
         width: 62px;
       }

       div.photo-title 
         a,
         div.photo-title a:active,
         div.photo-title a:hover,
         div.photo-title a:visited {
           text-decoration: none; 
       }

       div.attach-table div.attach-row {
         clear: both;
       }

       div.attach-table div.attach-row div {
         float: left;
         /* margin: 2px;*/
       }

       p {
         clear: both;
         padding: 15px 0 3px 0;
	 overflow: hidden;
       }

       div.ygrp-file {
         width: 30px;
         valign: middle;
       }
       div.attach-table div.attach-row div div a {
         text-decoration: none;
       }

       div.attach-table div.attach-row div div span {
         font-weight: normal;
       }

       div.ygrp-file-title {
         font-weight: bold;
       }
 /* end of attachment style */
        -->
        </style>
        </head>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body>


<!-- |**|begin egp html banner|**| -->

<br><br>

<!-- |**|end egp html banner|**| -->


<div>Hi</div><div>To me it seems that call off is its own aggrelated root since it could be updated individually. Checking for item count could be done by anow order service fething order an call off from repository.</div><div>You can model events like call-off created call off delivered etc.</div><div>Your aggregates should be modelled around what changes in one transaction.</div><div><br></div><div>If call off gets updated independently it might be a good idea to make it its own aggregate. Then it doesn't conflict with other updates to the order. Modelling depends on how frequent the order gets changed. Is it likely that multiple users update the order simultaneously? &nbsp;If not yout could make call off a part of the order aggregate.</div><div>Hope I'm not totally of track understandin
 g your domain.</div><div><br></div><div><br></div><div><br></div><div id="composer_signature"><div style="font-size:85%;color:#575757">Sent from my Samsung Galaxy smartphone.</div></div>



<!-- |**|begin egp html banner|**| -->

<br>


<br>

<!-- |**|end egp html banner|**| -->


<div width="1" style="color: white; clear: both;"/>__._,_.___</div>

      
  

    
    <div id="fromDMARC" style="clear:both; margin-top: 10px;">
         <hr style="height:2px ; border-width:0; color:#E3E3E3; background-color:#E3E3E3;">
         Posted by: &quot;chr.j.johansen&quot; &lt;[email protected]&gt;         <hr style="height:2px ; border-width:0; color:#E3E3E3; background-color:#E3E3E3;">
    </div>
<!-- Start Recommendations -->
<!-- End Recommendations -->



<!-- |**|begin egp html banner|**| -->

  <img src="http://geo.yahoo.com/serv?s=97476590/grpId=8116923/grpspId=1705007181/msgId=24768/stime=1463687155" width="1" height="1"> <br>

<!-- |**|end egp html banner|**| -->

    
<!-- |**|begin egp html banner|**| -->

<br>



   
     
 
        <!-- |**|begin egp html banner|**| -->
        <div id="ygrp-vital" style="background-color: #f2f2f2; font-family: Verdana; font-size: 10px; margin-bottom: 10px; padding: 10px;">

        <span id="vithd" style="font-weight: bold; color: #333; text-transform: uppercase; "><a href="https://groups.yahoo.com/neo/groups/domaindrivendesign/info;_ylc=X3oDMTJlbzNtY2R1BF9TAzk3MzU5NzE0BGdycElkAzgxMTY5MjMEZ3Jwc3BJZAMxNzA1MDA3MTgxBHNlYwN2dGwEc2xrA3ZnaHAEc3RpbWUDMTQ2MzY4NzE1NQ--" style="text-decoration: none;">Visit Your Group</a></span>

     <ul style="list-style-type: none; margin: 0; padding: 0; display: inline;">
            <li style="border-right: 1px solid #000; font-weight: 700; display: inline; padding: 0 5px; margin-left: 0;">
      <span class="cat"><a href="https://groups.yahoo.com/neo/groups/domaindrivendesign/members/all;_ylc=X3oDMTJmb2lndGdtBF9TAzk3MzU5NzE0BGdycElkAzgxMTY5MjMEZ3Jwc3BJZAMxNzA1MDA3MTgxBHNlYwN2dGwEc2xrA3ZtYnJzBHN0aW1lAzE0NjM2ODcxNTU-" style="text-decoration: none;">New Members</a></span>
      <span class="ct" style="color: #ff7900;">2</span>
    </li>
                                              </ul>
  </div>


<div id="ft" style="font-family: Arial; font-size: 11px; margin-top: 5px; padding: 0 2px 0 0; clear: both;">
  <a href="https://groups.yahoo.com/neo;_ylc=X3oDMTJkOGM0ZjAzBF9TAzk3NDc2NTkwBGdycElkAzgxMTY5MjMEZ3Jwc3BJZAMxNzA1MDA3MTgxBHNlYwNmdHIEc2xrA2dmcARzdGltZQMxNDYzNjg3MTU1" style="float: left;"><img src="http://l.yimg.com/ru/static/images/yg/img/email/new_logo/logo-groups-137x15.png" height="15" width="137" alt="Yahoo! Groups" style="border: 0;"/></a>
  <div style="color: #747575; float: right;"> &bull; <a href="https://info.yahoo.com/privacy/us/yahoo/groups/details.html" style="text-decoration: none;">Privacy</a> &bull; <a href="mailto:[email protected]?subject=Unsubscribe" style="text-decoration: none;">Unsubscribe</a> &bull; <a href="https://info.yahoo.com/legal/us/yahoo/utos/terms/" style="text-decoration: none;">Terms of Use</a> </div>
</div>

<!-- |**|end egp html banner|**| -->

  </div> <!-- ygrp-msg -->

   


  <br>

<!-- |**|end egp html banner|**| -->


<div style="color: white; clear: both;"/>__,_._,___</div>
</body></html>
----_com.samsung.android.email_1033962953443020--