You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2016/04/24 20:16:29 UTC
[1/2] isis-site git commit: ISIS-1335: reworking the screencasts page
Repository: isis-site
Updated Branches:
refs/heads/asf-site 1c50b3b4b -> 774a4eb09
http://git-wip-us.apache.org/repos/asf/isis-site/blob/774a4eb0/content/screencasts.html
----------------------------------------------------------------------
diff --git a/content/screencasts.html b/content/screencasts.html
index 4fba0c5..57cedaf 100644
--- a/content/screencasts.html
+++ b/content/screencasts.html
@@ -502,1140 +502,2060 @@ table.CodeRay td.code>pre{padding:0}
<div id="doc-content">
- <div id="preamble">
-<div class="sectionbody">
-<div class="paragraph">
+ <div class="paragraph">
<p><br/><br/></p>
</div>
<div class="paragraph">
-<p>We’ve prepared a number of screencasts to help you see what Apache Isis has to offer; the following were recorded using Apache Isis v1.12.0.</p>
+<p>We’ve prepared a number of screencasts to help you see what Apache Isis has to offer; the following were recorded using Apache Isis v1.12.x.</p>
</div>
<div class="paragraph">
-<p>While these each follow on from each other, you should be able to watch them in any order; the typical duration is 3 minutes. Or, you can watch them all through this <a href="https://www.youtube.com/playlist?list=PLbRpnAmQ6xsA-m4d2iwAuWrX1icJz0SnM">playlist</a>.</p>
+<p>While these each follow on from each other, you should be able to watch them in any order; the typical duration is
+3 minutes. the number of each screencast (eg '<a href="https://www.youtube.com/watch?v=OTNHR5EdAs8" target="_blank">001</a>') is a link over
+to youtube.</p>
</div>
<div class="paragraph">
-<p>You can also find some earlier screencasts (for older versions of the framework) <a href="./screencasts-older.html">here</a>.</p>
-</div>
+<p>Or, if you have a little more time, you can watch the screencasts by playlist. You can either watch
+<a href="https://www.youtube.com/playlist?list=PLbRpnAmQ6xsA-m4d2iwAuWrX1icJz0SnM">ALL</a> of them one after the other, or you
+can use one of the themed playlists to explore particular aspects of the framework. The table below indicates which screencasts are in which playlist.</p>
</div>
-</div>
-<div class="sect1">
-<h2 id="_playlist">Playlist</h2>
-<div class="sectionbody">
<div class="paragraph">
-<p>To watch all of the v1.12.0 screencasts in order, use this <a href="https://www.youtube.com/playlist?list=PLbRpnAmQ6xsA-m4d2iwAuWrX1icJz0SnM">playlist</a>.</p>
-</div>
+<p>Finally, you can also find some screencasts for earlier versions of the framework <a href="./screencasts-older.html">here</a>.</p>
</div>
-</div>
-<div class="sect1">
-<h2 id="_archetype_ide_layouts">Archetype, IDE, layouts</h2>
-<div class="sectionbody">
<table class="tableblock frame-all grid-all spread">
<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
+<col style="width: 28.5714%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1428%;">
+<col style="width: 7.1434%;">
</colgroup>
<tbody>
<tr>
-<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Generating an app using the <a href="ug.html#_ug_getting-started_simpleapp-archetype">SimpleApp Maven archetype</a><br>
-(v1.12.0)</p>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top" colspan="10"><div><div class="paragraph">
+<p><span class="big"><strong>Playlists</strong></span></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/OTNHR5EdAs8?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Archetype, IDE, layouts</strong></span></p>
</div></div></td>
</tr>
<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Importing the generated app into an <a href="dg.html#_dg_ide">IDE</a><br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/6GPtec5Hu5Q?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
</div></div></td>
-</tr>
-<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Walking through the main classes that make up the SimpleApp: <code>SimpleObject</code> persistent entity, <code>HomePageViewModel</code> <a href="ugbtb.html#_ugbtb_view-models">view model</a> and <code>SimpleObjects</code> domain service (repository).<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/xVTjtiJM8XM?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
</div></div></td>
-</tr>
-<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using the optional <code>Xxx.layout.xml</code> file to provide <a href="ugfun.html#_ugfun_object-layout_dynamic_xml">layout metadata</a> to dynamically render a domain object using the <a href="http://getbootstrap.com">Bootstrap 3</a> grid system.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/KCJ1ZPPB3pA?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
</div></div></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_fixture_scripts_rules_tests">Fixture scripts, rules, tests</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
-<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using <a href="ugtst.html#_ugtst_fixture-scripts">fixture scripts</a> to initialize the database, eg while prototyping and for demos<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/pH02g0l2GKY?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
</div></div></td>
-</tr>
-<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Implementing <a href="ugfun.html#_ugfun_how-tos_business-rules">business rules</a>for domain object members, using supporting methods ("see it, use it, do it")<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/dXtmxmYxa30?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Writing <a href="ugtst.html#_ugtst_unit-test-support">unit tests</a> for a domain object responsibility <br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8" target="_blank">001</a><br>
+Generating an app using the <a href="ug.html#_ug_getting-started_simpleapp-archetype">SimpleApp Maven archetype</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/imHfxQGUgV8?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Writing end-to-end <a href="ugtst.html#_ugtst_integ-test-support">integration tests</a> for a domain object responsibility <br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q" target="_blank">002</a><br>
+Importing the generated app into an <a href="dg.html#_dg_ide">IDE</a><br></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/-lAt4UWiBjE?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_swagger_ui_maven_plugin">Swagger UI, Maven plugin</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using the Swagger UI to access the <a href="ugvro.html">REST API</a> automatically exposed for domain services, entities, and/or view models<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM" target="_blank">003</a><br>
+Walking through the main classes that make up the SimpleApp: <code>SimpleObject</code> persistent entity, <code>HomePageViewModel</code> <a href="ugbtb.html#_ugbtb_view-models">view model</a> and <code>SimpleObjects</code> domain service (repository).</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/lkZxRSS0Zwg?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using the <a href="#rgmvn.adoc">Apache Isis maven plugin</a> to validate domain object models during the build process (rather than at runtime).<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA" target="_blank">004</a><br>
+Using the optional <code>Xxx.layout.xml</code> file to provide <a href="ugfun.html#_ugfun_object-layout_dynamic_xml">layout metadata</a> to dynamically render a domain object using the <a href="http://getbootstrap.com">Bootstrap 3</a> grid system.</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/yOh3WphhR1E?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_app_manifest">App Manifest</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
-<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>How the framework uses the <a href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping"><code>AppManifest</code></a> is used to bootstrap the application<br>
-(v1.12.0)</p>
-</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/1sNiR3Y84c0?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Fixture scripts, rules, tests</strong></span></p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_actions">Actions</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Implementing business logic using a (no-arg) action, and associating with a property using either the <a href="rgant.html#_rgant_MemberOrder"><code>@MemberOrder</code></a> annotations or using <a href="ugfun.html#_ugfun_object-layout_dynamic_xml">dynamic (XML) layouts</a>.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/dfRZeYqzMtI?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Invoking (no-arg) action on multiple objects at once (using <a href="rgant.html#_rgant_Action_invokeOn"><code>@Action#invokeOn()</code></a>, and using the <a href="rgsvc.html#_rgsvc_api_ActionInvocationContext"><code>ActionInvocationContext</code></a> domain service for a smoother end-user experience.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY" target="_blank">005</a><br>
+Using <a href="ugtst.html#_ugtst_fixture-scripts">fixture scripts</a> to initialize the database, eg while prototyping and for demos</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/0naoVsWppuQ?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_titles_and_icons_ui_event_subscribers">Titles and icons, UI event subscribers</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using the <a href="rgcms.html#_rgcms_methods_reserved_title"><code>title()</code></a>, <a href="rgcms.html#_rgcms_methods_reserved_iconName"><code>iconName()</code></a> and <a href="rgcms.html#_rgcms_methods_reserved_cssClass"><code>cssClass()</code></a> so that end-users can distinguish domain objects within the UI.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=dXtmxmYxa30" target="_blank">006</a><br>
+Implementing <a href="ugfun.html#_ugfun_how-tos_business-rules">business rules</a>for domain object members, using supporting methods ("see it, use it, do it")</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/CwM430UH5WE?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Moving the responsibility to specify the icon for a domain object out and into a subscriber, using the <a href="rgcms.html#_rgcms_classes_uievent_IconUiEvent"><code>IconUiEvent</code></a> as per the <a href="rgant.html#_rgant_DomainObjectLayout_iconUiEvent"><code>@DomainObjectLayout#iconUiEvent()</code></a> annotation<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=imHfxQGUgV8" target="_blank">007</a><br>
+Writing <a href="ugtst.html#_ugtst_unit-test-support">unit tests</a> for a domain object responsibility</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/7ToRKBOeemM?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_derived_collections">Derived collections</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>How to implement a derived collection on a domain object.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=-lAt4UWiBjE" target="_blank">008</a><br>
+Writing end-to-end <a href="ugtst.html#_ugtst_integ-test-support">integration tests</a> for a domain object responsibility</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/ckT8Lt20SE4?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Swagger UI, Maven plugin</strong></span></p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_more_on_fixture_scripts">More on fixture scripts</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Extending a <a href="ugtst.html#_ugtst_fixture-scripts">fixture script</a> to more easily demonstrate new functionality.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/l_oZymgb65I?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_page_size_of_collections">Page size of collections</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using <a href="ugfun.html#_ugfun_object-layout_dynamic_xml">dynamic (XML) layouts</a> to specify the page size for a domain object’s collection.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg" target="_blank">009</a><br>
+Using the Swagger UI to access the <a href="ugvro.html">REST API</a> automatically exposed for domain services, entities, and/or view models</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/39Hpd7C4Kvo?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_hints_and_end_user_features">Hints and end-user features</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Demonstrates how Apache Isis' <a href="#ugvw.adoc">Wicket viewer</a> remembers the state of rendered domain objects, and how the end-user of the
- application can clear these UI hints using the (framework-provided) <a href="rgcms.html#_rgcms_classes_mixins_Object_clearHints">"clear hints"</a> action.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=yOh3WphhR1E" target="_blank">010</a><br>
+Using the <a href="#rgmvn.adoc">Apache Isis maven plugin</a> to validate domain object models during the build process (rather than at runtime).</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/0d713-V4vrg?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>App Manifest</strong></span></p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Demonstrates how the end-user can copy and share URLs for domain objects - including UI hints - using Apache Isis' <a href="#ugvw.adoc">Wicket viewer</a>.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=1sNiR3Y84c0" target="_blank">011</a><br>
+How the framework uses the <a href="rgcms.html#_rgcms_classes_AppManifest-bootstrapping"><code>AppManifest</code></a> is used to bootstrap the application</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/Kqch-XNlBMA?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
</tr>
<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Actions</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Demonstrates how the end-user can use bookmarks and breadcrumbs within Apache Isis' <a href="#ugvw.adoc">Wicket viewer</a>, and how the developer can ensure that <a href="rgant.html#_rgant_DomainObjectLayout_bookmarking">domain objects</a> and (<a href="rgant.html#_rgant_Action_semantics">query-only</a>) <a href="rgant.html#_rgant_ActionLayout_bookmarking">actions</a> can be bookmarked.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/a0QQLT_16To?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_decoupling_mixins_subscribers">Decoupling (mixins & subscribers)</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Shows how to refactor a domain object to move an action implementation out of the domain object itself, and instead implement as a <a href="ugbtb.html#_ugbtb_decoupling_mixins">mixin</a> (useful for decoupling). <br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI" target="_blank">012</a><br>
+Implementing business logic using a (no-arg) action, and associating with a property using either the <a href="rgant.html#_rgant_MemberOrder"><code>@MemberOrder</code></a> annotations or using <a href="ugfun.html#_ugfun_object-layout_dynamic_xml">dynamic (XML) layouts</a>.</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/Wn5215K7_Jg?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Shows how to refactor a domain object to move (derived) collections out of the domain object and reimplement as a <a href="ugbtb.html#_ugbtb_decoupling_mixins">mixin</a>.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=0naoVsWppuQ" target="_blank">013</a><br>
+Invoking (no-arg) action on multiple objects at once (using <a href="rgant.html#_rgant_Action_invokeOn"><code>@Action#invokeOn()</code></a>, and using the <a href="rgsvc.html#_rgsvc_api_ActionInvocationContext"><code>ActionInvocationContext</code></a> domain service for a smoother end-user experience.</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/m633OEBpWqQ?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Titles and icons, UI event subscribers</strong></span></p>
</div></div></td>
</tr>
<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using a domain event <a href="rgcms.html#_rgcms_classes_super_AbstractSubscriber">subscriber</a> to <a href="ugbtb.html#_ugbtb_decoupling_event-bus">decouple</a> and abstract business rules ( <a href="rgcms.html#_rgcms_methods_prefixes_validate">validation</a>).<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/-AQJb9GtIqI?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
</div></div></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using a domain event <a href="rgcms.html#_rgcms_classes_super_AbstractSubscriber">subscriber</a> to hide functionality, in this
- case the <a href="rgcms.html#_rgcms_classes_mixins_Object_clearHints">"clear hints"</a> action automatically provided by the framework.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=CwM430UH5WE" target="_blank">014</a><br>
+Using the <a href="rgcms.html#_rgcms_methods_reserved_title"><code>title()</code></a>, <a href="rgcms.html#_rgcms_methods_reserved_iconName"><code>iconName()</code></a> and <a href="rgcms.html#_rgcms_methods_reserved_cssClass"><code>cssClass()</code></a> so that end-users can distinguish domain objects within the UI.</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/6GjLW0hlrm4?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_titles_using_the_title_annotation">Titles using the @Title annotation</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using the <a href="rgant.html#_rgant_Title"><code>@Title</code></a> annotation (instead of the <a href="rgcms.html#_rgcms_methods_reserved_title"><code>title()</code></a> reserved method) to obtain the title of a domain object, so that the end-user can distinguish one object from another.. <br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM" target="_blank">015</a><br>
+Moving the responsibility to specify the icon for a domain object out and into a subscriber, using the <a href="rgcms.html#_rgcms_classes_uievent_IconUiEvent"><code>IconUiEvent</code></a> as per the <a href="rgant.html#_rgant_DomainObjectLayout_iconUiEvent"><code>@DomainObjectLayout#iconUiEvent()</code></a> annotation</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/qj4bMkQRBUY?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Derived collections</strong></span></p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_integration_testing_of_mixins">Integration testing of mixins</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>How to write an <a href="ugtst.html#_ugtst_integ-test-support">integration test</a> for an <a href="rgant.html#_rgant_Mixin">mixin</a>.<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=ckT8Lt20SE4" target="_blank">016</a><br>
+How to implement a derived collection on a domain object.</p>
</div></div></td>
-<td class="tableblock halign-left valign-top"><div><div class="videoblock">
-<div class="content">
-<iframe width="560px" height="315px" src="https://www.youtube.com/embed/yi52Gbd3lmY?rel=0" frameborder="0" allowfullscreen></iframe>
-</div>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>More on fixture scripts</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=l_oZymgb65I" target="_blank">017</a><br>
+Extending a <a href="ugtst.html#_ugtst_fixture-scripts">fixture script</a> to more easily demonstrate new functionality.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Page size of collections</strong></span></p>
</div></div></td>
</tr>
-</tbody>
-</table>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_removing_boilerplate">Removing boilerplate</h2>
-<div class="sectionbody">
-<table class="tableblock frame-all grid-all spread">
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<tbody>
<tr>
<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Using <a href="https://projectlombok.org/">Project Lombok</a> to remove boilerplate from your domain objects (getters and setters).<br>
-(v1.12.0)</p>
+<p><a href="https://www.youtube.com/watch?v=39Hpd7C4Kvo" target="_blank">018</a><br>
+Using <a href="ugfun.html#_ugfun_object-layout_dynamic_xml">dynamic (XML) layouts</a> to specify the page size for a domain object’s collection.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Hints and end-user features</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=0d713-V4vrg" target="_blank">019</a><br>
+Demonstrates how Apache Isis' <a href="#ugvw.adoc">Wicket viewer</a> remembers the state of rendered domain objects, and how the end-user of the
+ application can clear these UI hints using the (framework-provided) <a href="rgcms.html#_rgcms_classes_mixins_Object_clearHints">"clear hints"</a> action.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=Kqch-XNlBMA" target="_blank">020</a><br>
+Demonstrates how the end-user can copy and share URLs for domain objects - including UI hints - using Apache Isis' <a href="#ugvw.adoc">Wicket viewer</a>.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=a0QQLT_16To" target="_blank">021</a><br>
+Demonstrates how the end-user can use bookmarks and breadcrumbs within Apache Isis' <a href="#ugvw.adoc">Wicket viewer</a>, and how the developer can ensure that <a href="rgant.html#_rgant_DomainObjectLayout_bookmarking">domain objects</a> and (<a href="rgant.html#_rgant_Action_semantics">query-only</a>) <a href="rgant.html#_rgant_ActionLayout_bookmarking">actions</a> can be bookmarked.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Decoupling (mixins & subscribers)</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=Wn5215K7_Jg" target="_blank">022</a><br>
+Shows how to refactor a domain object to move an action implementation out of the domain object itself, and instead implement as a <a href="ugbtb.html#_ugbtb_decoupling_mixins">mixin</a> (useful for decoupling).</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=m633OEBpWqQ" target="_blank">023</a><br>
+Shows how to refactor a domain object to move (derived) collections out of the domain object and reimplement as a <a href="ugbtb.html#_ugbtb_decoupling_mixins">mixin</a>.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=-AQJb9GtIqI" target="_blank">024</a><br>
+Using a domain event <a href="rgcms.html#_rgcms_classes_super_AbstractSubscriber">subscriber</a> to <a href="ugbtb.html#_ugbtb_decoupling_event-bus">decouple</a> and abstract business rules ( <a href="rgcms.html#_rgcms_methods_prefixes_validate">validation</a>).</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GjLW0hlrm4" target="_blank">025</a><br>
+Using a domain event <a href="rgcms.html#_rgcms_classes_super_AbstractSubscriber">subscriber</a> to hide functionality, in this
+ case the <a href="rgcms.html#_rgcms_classes_mixins_Object_clearHints">"clear hints"</a> action automatically provided by the framework.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Titles using the @Title annotation</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=qj4bMkQRBUY" target="_blank">026</a><br>
+Using the <a href="rgant.html#_rgant_Title"><code>@Title</code></a> annotation (instead of the <a href="rgcms.html#_rgcms_methods_reserved_title"><code>title()</code></a> reserved method) to obtain the title of a domain object, so that the end-user can distinguish one object from another.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Integration testing of mixins</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=yi52Gbd3lmY" target="_blank">027</a><br>
+How to write an <a href="ugtst.html#_ugtst_integ-test-support">integration test</a> for an <a href="rgant.html#_rgant_Mixin">mixin</a>.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Removing boilerplate</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=SLJPBruFMKY" target="_blank">028</a><br>
+Using <a href="https://projectlombok.org/">Project Lombok</a> to remove boilerplate from your domain objects (getters and setters).</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0" target="_blank">029</a><br>
+Using the (non-ASF) <a href="http://github.com/isisaddons/isis-metamodel-paraname8">Isis addons' paraname8</a> module to remove boilerplate from your domain object (<a href="rgant.html#_rgant_ParameterLayout_named"><code>@ParameterLayout#named()</code></a> annotation attribute on action parameters).</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Action validation</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=ORoEYlg6XFM" target="_blank">030</a><br>
+How to validate action parameters using a supporting <a href="rgcms.html#_rgcms_methods_prefixes_validate"><code>validateNXxx()</code></a> method.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=1Vlzob89pYI" target="_blank">031</a><br>
+How to validate action parameters using the <a href="rgant.html#_rgant_Parameter_mustSatisfy"><code>@Parameter#mustSatisfy()</code></a> and the Specification interface.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Instantiating/Initializing Objects</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=fYJjXAepWAs" target="_blank">032</a><br>
+How to instantiate/initialize objects using <a href="rgsvc.html#_rgsvc_api_RepositoryService"><code>RepositoryService</code></a>, <a href="rgsvc.html#_rgsvc_api_ServiceRegistry"><code>ServiceRegistry</code></a> and/or <a href="rgsvc.html#_rgsvc_api_FactoryService"><code>FactoryService</code></a>.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Property and parameter choices</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=cQ06PoMNDPw" target="_blank">033</a><br>
+How to provide a set of <a href="rgcms.html#_rgcms_methods_prefixes_choices">choices</a> (a drop-down list) when editing a property.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=afEnYKljBQs" target="_blank">034</a><br>
+How to provide a set of <a href="rgcms.html#_rgcms_methods_prefixes_choices">choices</a> (a drop-down list) when invoking an action.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=fKo6aTPK-gk" target="_blank">035</a><br>
+How to use the <a href="rgcms.html#_rgcms_methods_prefixes_choices">choices</a> supporting methods as a source for default values within a <a href="ugtst.html#_ugtst_fixture-scripts">fixture script</a>.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=ZWOzmwCJVzA" target="_blank">036</a><br>
+How to use an enum for choices (drop down list) for both a property or an action parameter.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Hiding columns</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=pH02g0l2GKY&list=PLbRpnAmQ6xsDjiy7vxKMB35ZKziuF6Aj8">Test</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=xVTjtiJM8XM&list=PLbRpnAmQ6xsAcWmFO5WgK9XWylNR-Fwut">End-user</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=KCJ1ZPPB3pA&list=PLbRpnAmQ6xsBFovjRmBTku5tTUYYdoI9u">Layout</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=AXuxULuRtm0&list=PLbRpnAmQ6xsDOfBbGIpIBQsXcR6snkkQ8">Add-ons</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=7ToRKBOeemM&list=PLbRpnAmQ6xsB4AopkyXgU3SkHK0bOwXDf">Design</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=3n_70HJ23uY&list=PLbRpnAmQ6xsDwGTagOtuh5RAwVlqwwbPd">DB</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=6GPtec5Hu5Q&list=PLbRpnAmQ6xsADOku9ewo08h-E-_Qf10vg">Dev</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=dfRZeYqzMtI&list=PLbRpnAmQ6xsDKK0dXmJsmKvp9X7iJsfsG">Prog model</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=lkZxRSS0Zwg&list=PLbRpnAmQ6xsCHI10N1s25mWAHbAz5diHf">Misc</a></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=1SCyBlMM2Bo" target="_blank">037</a><br>
+How to hide properties as columns in tables (parented collections or standalone collections), using the dynamic XML layout (equivalent to <a href="rgant.html#_rgant_PropertyLayout_hidden"><code>@PropertyLayout#hidden()</code></a>).</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=H11yby1Xkbc" target="_blank">038</a><br>
+How to hide properties as columns in tables, using CSS.</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p>x</p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top" colspan="11"><div><div class="paragraph">
+<p><span class="big"><strong>Fixture scripts defaults / fake data</strong></span></p>
+</div></div></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href="https://www.youtube.com/watch?v=OTNHR5EdAs8&list=PLbRpnAmQ6xsBGB_mRAUob8WRBsSL_IsBO">Basic</a></p>
+</div></div></td>
+<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+<p><a href
<TRUNCATED>
[2/2] isis-site git commit: ISIS-1335: reworking the screencasts page
Posted by da...@apache.org.
ISIS-1335: reworking the screencasts page
Project: http://git-wip-us.apache.org/repos/asf/isis-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis-site/commit/774a4eb0
Tree: http://git-wip-us.apache.org/repos/asf/isis-site/tree/774a4eb0
Diff: http://git-wip-us.apache.org/repos/asf/isis-site/diff/774a4eb0
Branch: refs/heads/asf-site
Commit: 774a4eb099ffe7a09b8766fe63652c11ab894042
Parents: 1c50b3b
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Sun Apr 24 19:15:52 2016 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Sun Apr 24 19:15:52 2016 +0100
----------------------------------------------------------------------
content/screencasts.html | 2596 +++++++++++++++++++++++++++--------------
1 file changed, 1743 insertions(+), 853 deletions(-)
----------------------------------------------------------------------