diff --git a/examples/examples-myfirstpolicy/pom.xml b/examples/examples-myfirstpolicy/pom.xml
index a774ae7..e3e6644 100644
--- a/examples/examples-myfirstpolicy/pom.xml
+++ b/examples/examples-myfirstpolicy/pom.xml
@@ -106,4 +106,24 @@
             </plugin>
         </plugins>
     </build>
+
+    <profiles>
+        <profile>
+            <id>apexSite</id>
+            <activation>
+                <property>
+                    <name>apexSite</name>
+                </property>
+            </activation>
+            <properties>
+                <adsite-examples-myfirstpolicy-dir>${project.basedir}/src</adsite-examples-myfirstpolicy-dir>
+            </properties>
+            <distributionManagement>
+                <site>
+                    <id>${project.artifactId}-site</id>
+                    <url>${apex.adsite.prefix}/modules/${project.parent.artifactId}/${project.artifactId}/</url>
+                </site>
+            </distributionManagement>
+        </profile>
+    </profiles>
 </project>
\ No newline at end of file
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/01-introduction.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/01-introduction.adoc
new file mode 100644
index 0000000..02a7a0e
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/01-introduction.adoc
@@ -0,0 +1,25 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+== Introduction
+
+Consider a scenario where a supermarket chain called _HyperM_ controls how it sells items in a policy-based manner.
+Each time an item is processed by _HyperM_'s point-of-sale (PoS) system an event is generated and published about that item of stock being sold.
+This event can then be used to update stock levels, etc..
+
+__HyperM__ want to extend this approach to allow some checks to be performed before the sale can be completed.
+This can be achieved by requesting a policy-controlled decision as each item is processed by for sale by each PoS system.
+The decision process is integrated with __HyperM__'s other IT systems that manage stock control, sourcing and purchasing, personnel systems, etc.
+
+In this document we will show how APEX and APEX Policies can be used to achieve this, starting with a simple policy, building up to more complicated policy that demonstrates the features of APEX.
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/02-data-models.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/02-data-models.adoc
new file mode 100644
index 0000000..1ed43cc
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/02-data-models.adoc
@@ -0,0 +1,105 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+== Data Models
+
+=== Sales Input Event
+Each time a PoS system processes a sales item an event with the following format is emitted:
+
+.Sale Input Event
+[width="100%",options="header"]
+|====================
+|Event| Fields | Description
+| SALE_INPUT | time, sale_ID, amount, item_ID, quantity, assistant_ID, branch_ID, notes, ... |  Event indicating a sale of an item is occurring
+|====================
+
+In each `SALE_INPUT` event the `sale_ID` field is a unique ID generated by the PoS system.
+A timestamp for the event is stored in the `time` field.
+The `amount` field refers to the value of the item(s) to be sold (in cents).
+The `item_ID` field is a unique identifier for each item type, and can be used to retrieve more information about the item from _HyperM_'s stock control system.
+The `quantity` field refers to the quantity of the item to be sold.
+The `assistant_ID` field is a unique identifier for the PoS operator, and can be used to retrieve more information about the operator from the _HyperM_'s personnel system.
+Since __HyperM__ has many branches the `branch_ID` identifies the shop.
+The `notes` field contains arbitrary notes about the sale.
+
+
+=== Sales Decision Event
+After a `SALE_INPUT` event is emitted by the PoS system _HyperM_'s policy-based controlled sales checking system emits a Sale Authorization Event indicating whether the sale is authorized or denied.
+The PoS system can then listen for this event before continuing with the sale.
+
+.Sale Authorisation Event
+[width="100%",options="header"]
+|====================
+|Event| Fields | Description
+| SALE_AUTH | sale_ID, time, authorized, amount, item_ID, quantity, assistant_ID, branch_ID, notes, message... |  Event indicating a sale of an item is authorized or denied
+|====================
+
+In each `SALE_AUTH` event the `sale_ID` field is copied from the `SALE_INPUT` event that trigger the decision request.
+The `SALE_AUTH` event is also timestamped using the `time` field, and a field called `authorised` is set to `true` or `false` depending on whether the sale is authorized or denied.
+The `message` field carries an optional message about why a sale was not authorized.
+The other fields from the `SALE_INPUT` event are also included for completeness.
+
+
+=== Stock Control: Items
+_HyperM_ maintains information about each item for sale in a database table called `ITEMS`.
+
+.Items Database
+[width="100%",options="header"]
+|====================
+|Table| Fields | Description
+| ITEMS | item_ID, description, cost_price, barcode, supplier_ID, category, ... |  Database table describing each item for sale
+|====================
+
+The database table `ITEMS` has a row for each items that _HyperM_ sells.
+Each item is identified by an `item_ID` value.
+The `description` field stores a description of the item.
+The cost price of the item is given in `cost_price`.
+The barcode of the item is encoded in `barcode`, while the item supplier is identified by `supplier_ID`.
+Items may also be classified into categories using the `category` field.
+Useful categories might include: `soft drinks`, `alcoholic drinks`, `cigarettes`, `knives`, `confectionery`, `bakery`, `fruit&vegetables`, `meat`, etc..
+
+
+=== Personnel System: Assistants
+
+.Assistants Database
+[width="100%",options="header"]
+|====================
+|Table| Fields | Description
+| ASSISTANTS | assistant_ID, surname, firstname, middlename, age, grade, phone_number, ... |  Database table describing each _HyperM_ sales assistant
+|====================
+
+The database table `ASSISTANTS` has a row for each sales assistant employed by _HyperM_.
+Each assistant is identified by an `assistant_ID` value, with their name given in the `firstname`, `middlename` and `surname` fields.
+The assistant's age in years is given in `age`, while their phone number is contained in the `phone_number` field.
+The assistant's grade is encoded in `grade`.
+Useful values for `grade` might include: `trainee`, `operator`, `supervisor`, etc..
+
+
+=== Locations: Branches
+
+.Branches Database
+[width="100%",options="header"]
+|====================
+|Table| Fields | Description
+| BRANCHES | branch_ID, branch_Name, category, street, city, country, postcode, ... |  Database table describing each _HyperM_ branch
+|====================
+
+_HyperM_ operates a number of branches.
+Each branch is described in the `BRANCHES` database table.
+Each branch is identified by a `branch_ID`, with a branch name given in `branch_Name`.
+The address for the branch is encoded in  `street`, `city`, `country` and `postcode`.
+The branch category is given in the `category` field.
+Useful values for `category` might include: `Small`, `Large`, `Super`, `Hyper`, etc..
+
+
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/03-policy-step1.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/03-policy-step1.adoc
new file mode 100644
index 0000000..cf124d2
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/03-policy-step1.adoc
@@ -0,0 +1,23 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+== Policy Step 1
+
+=== Scenario
+For the first version of our policy, let's start with something simple.
+Let us assume that there exists some restriction that alcohol products cannot be sold before 11:30am.
+In this section we will go through the necessary steps to define a policy that can enforce this for _HyperM_.
+
+* Alcohol cannot be sold before 11:30am.
+
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/031-s1-new-model.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/031-s1-new-model.adoc
new file mode 100644
index 0000000..7b601b9
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/031-s1-new-model.adoc
@@ -0,0 +1,25 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Create the an new empty Policy Model `MyFirstPolicyModel`
+
+Since an organisation like _HyperM_ may have many policies covering many different domains, policies should be grouped into policy sets. In order to edit or deploy a policy, or policy set, the definition of the policy(ies) and all required events, tasks, states, etc., are grouped together into a 'Policy Model'. An organization might define many Policy Models, each containing a different set of policies.
+
+So the first step is to create a new empty Policy Model called `MyFirstPolicyModel`. Using the APEX Policy Editor, click on the 'File' menus and select 'New'. Then define our new policy model called `MyFirstPolicyModel`. Use the 'Generate UUID' button to create a new unique ID for the policy model, and fill in a description for the policy model. Press the `Submit` button to save your changes.
+
+.Create a new Policy Model 1/2
+image::mfp/MyFirstPolicy_P1_newPolicyModel1.png[File > New to create a new Policy Model]
+
+.Create a new Policy Model 2/2
+image::mfp/MyFirstPolicy_P1_newPolicyModel2.png[Create a new Policy Model]
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/032-s1-new-events.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/032-s1-new-events.adoc
new file mode 100644
index 0000000..682d214
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/032-s1-new-events.adoc
@@ -0,0 +1,122 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Create the input event `SALE_INPUT` and the output event `SALE_AUTH`
+
+Using the APEX Policy Editor, click on the 'Events' tab. In the 'Events' pane, right click and select 'New':
+
+.Create a new Event type
+image::mfp/MyFirstPolicy_P1_newEvent1.png[Right click to create a new event]
+
+Create a new event type called `SALE_INPUT`. Use the 'Generate UUID' button to create a new unique ID for the event type, and fill in a description for the event. Add a namespace, e.g. `com.hyperm`. We can add hard-coded strings for the `Source` and `Target`, e.g. `POS` and `APEX`. At this stage we will not add any parameter fields, we will leave this until later. Use the `Submit` button to create the event.
+
+.Populate the `SALE_INPUT` event
+image::mfp/MyFirstPolicy_P1_newEvent2.png["Fill in the necessary information for the 'SALE_INPUT' event and click 'Submit'"]
+
+Repeat the same steps for a new event type called `SALE_AUTH`.
+Just use `APEX` as source and `POS` as target, since this is the output event coming from APEX going to the sales point.
+
+Before we can add parameter fields to an event we must first define APEX Context Item Schemas that can be used by those fields.
+
+To create new item schemas, click on the 'Context Item Schemas' tab. In that 'Context Item Schemas' pane, right click and select 'Create new ContextSchema'.
+
+.Create new Data Types
+image::mfp/MyFirstPolicy_P1_newItemSchema1.png["Right click to create a new Item Schema"]
+
+Create item schemas with the following characteristics, each with its own unique UUID:
+
+.Item Schemas
+[width="100%",options="header"]
+|====================
+| Name | Schema Flavour | Schema Definition | Description
+| timestamp_type | Java | java.lang.Long | A type for `time` values
+| sale_ID_type | Java | java.lang.Long | A type for `sale_ID` values
+| price_type | Java | java.lang.Long | A type for `amount`/`price` values
+| item_ID_type | Java | java.lang.Long | A type for `item_ID` values
+| assistant_ID_type | Java | java.lang.Long |  A type for `assistant_ID` values
+| quantity_type | Java | java.lang.Integer |  A type for `quantity` values
+| branch_ID_type | Java | java.lang.Long | A type for `branch_ID` values
+| notes_type | Java | java.lang.String |  A type for `notes` values
+| authorised_type | Java | java.lang.Boolean | A type for `authorised` values
+| message_type | Java | java.lang.String | A type for `message` values
+|====================
+
+.Create new Item Schemas
+image::mfp/MyFirstPolicy_P1_newItemSchema2.png["Create a new Item Schema"]
+
+The item schemas can now be seen on the 'Context Item Schemas' tab, and can be updated at any time by right-clicking on the item schemas on the 'Context Item Schemas' tab. Now we can go back to the event definitions for `SALE_INPUT` and `SALE_AUTH` and add some parameter fields.
+
+[TIP]
+.Field Schema types
+================================
+APEX natively supports schema definitions in `Java` and `Avro`.
+
+`Java` schema definitions are simply the name of a Java Class. There are some restrictions:
+
+* the class must be instantiatable, i.e. not an Java interface or abstract class
+
+* primitive types are not supported, i.e. use `java.lang.Integer` instead of `int`, etc.
+
+* it must be possible to find the class, i.e. the class must be contained in the Java classpath.
+
+`Avro` schema definitions can be any valid https://avro.apache.org/docs/current/spec.html[Avro] schema. For events using fields defined with `Avro` schemas, any incoming event containing that field must contain a value that conforms to the Avro schema.
+================================
+
+Click on the 'Events' tab, then right click the `SALE_INPUT` row and select 'Edit Event `SALE_INPUT`'. To add a new event parameter use the 'Add Event Parameter' button at the bottom of the screen. For the `SALE_INPUT` event add the following event parameters:
+
+.Event Parameter Fields for the `SALE_INPUT` Event
+[width="100%",options="header"]
+|====================
+| Parameter Name | Parameter Type | Optional
+| time | timestamp_type | no
+| sale_ID | sale_ID_type | no
+| amount | price_type | no
+| item_ID | item_ID_type | no
+| quantity | quantity_type | no
+| assistant_ID | assistant_ID_type | no
+| branch_ID | branch_ID_type | no
+| notes | notes_type | _yes_
+|====================
+
+Remember to click the 'Submit' button at the bottom of the event definition pane.
+
+[TIP]
+.Optional Fields in APEX Events
+================================
+Parameter fields can be _optional_ in events. If a parameter is not marked as _optional_ then by default it is _mandatory_, so it must appear in any input event passed to APEX. If an _optional_ field is not set for an output event then value will be set to `null`.
+================================
+
+.Add typed parameter fields to an event
+image::mfp/MyFirstPolicy_P1_newEvent3.png["Add new event parameters to an event"]
+
+Select the `SALE_AUTH` event and add the following event parameters:
+
+.Event Parameter Fields for the `SALE_AUTH` Event
+[width="100%",options="header"]
+|====================
+| Parameter Name | Parameter Type  | no
+| sale_ID | sale_ID_type | no
+| time | timestamp_type | no
+| authorised |  authorised_type | no
+| message | message_type | _yes_
+| amount | price_type | no
+| item_ID | item_ID_type | no
+| assistant_ID | assistant_ID_type | no
+| quantity | quantity_type | no
+| branch_ID | branch_ID_type | no
+| notes | notes_type | _yes_
+|====================
+Remember to click the 'Submit' button at the bottom of the event definition pane.
+
+The events for our policy are now defined.
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/033-s1-new-policy.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/033-s1-new-policy.adoc
new file mode 100644
index 0000000..89325a5
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/033-s1-new-policy.adoc
@@ -0,0 +1,141 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Create a new Policy and add the _"No Booze before 11:30"_ check
+
+APEX policies are defined using a state-machine model. Each policy comprises one or more _states_ that can be individually executed. Where there is more than one _state_ the states are chained together to form a https://en.wikipedia.org/wiki/Directed_acyclic_graph[Directed Acyclic Graph (DAG)] of states. A _state_ is triggered by passing it a single input (or 'trigger') event and once executed each state then emits an output event. For each _state_ the logic for the _state_ is embedded in one or more _tasks_. Each _task_ contains specific _task logic_ that is executed by the APEX execution environment each time the _task_ is invoked. Where there is more than one _task_ in a _state_ then the _state_ also defines some _task selection logic_ to select an appropriate task each time the _state_ is executed.
+
+Therefore, to create a new policy we must first define one or more tasks.
+
+To create a new Task click on the 'Tasks' tab. In the 'Tasks' pane, right click and select 'Create new Task'. Create a new Task called `MorningBoozeCheck`. Use the 'Generate UUID' button to create a new unique ID for the task, and fill in a description for the task.
+
+.Create a new Task
+image::mfp/MyFirstPolicy_P1_newTask1.png["Right click to create a new task"]
+
+Tasks are configured with a set of _input fields_ and a set of _output fields_. To add new input/output fields for a task use the 'Add Task Input Field' and 'Add Task Output Field' button. The list of input and out fields to add for the `MorningBoozeCheck` task are given below. The input fields are drawn from the parameters in the state's input event, and the task's output fields are used to populate the state's output event. The task's input and output fields must be a subset of the event parameters defined for the input and output events for any state that uses that task. (You may have noticed that the input and output fields for the `MorningBoozeCheck` task have the exact same names and reuse the item schemas that we used for the parameters in the `SALE_INPUT` and `SALE_AUTH` events respectively).
+
+.Input fields for `MorningBoozeCheck` task
+[width="100%",options="header"]
+|====================
+| Parameter Name | Parameter Type
+| time | timestamp_type
+| sale_ID | sale_ID_type
+| amount | price_type
+| item_ID | item_ID_type
+| quantity | quantity_type
+| assistant_ID | assistant_ID_type
+| branch_ID | branch_ID_type
+| notes | notes_type
+|====================
+
+.Output fields for `MorningBoozeCheck` task
+[width="100%",options="header"]
+|====================
+| Parameter Name | Parameter Type
+| sale_ID | sale_ID_type
+| time | timestamp_type
+| authorised |  authorised_type
+| message | message_type
+| amount | price_type
+| item_ID | item_ID_type
+| assistant_ID | assistant_ID_type
+| quantity | quantity_type
+| branch_ID | branch_ID_type
+| notes | notes_type
+|====================
+
+.Add input and out fields for the Task
+image::mfp/MyFirstPolicy_P1_newTask2.png["Add input and out fields for the task"]
+
+Each task must include some 'Task Logic' that implements the behaviour for the task. Task logic can be defined in a number of different ways using a choice of languages. For this task we will author the logic using the Java-like scripting language called https://en.wikipedia.org/wiki/MVEL[`MVEL`].
+
+For simplicity use the following code for the task logic. Paste the script text into the 'Task Logic' box, and use "MVEL" as the 'Task Logic Type / Flavour'. 
+
+This logic assumes that all items with `item_ID` between 1000 and 2000 contain alcohol, which is not very realistic, but we will see a better approach for this later. It also uses the standard `Java` time utilities to check if the current time is between `00:00:00 GMT` and `11:30:00 GMT`. For a detailed guide to how to write your own logic in https://en.wikipedia.org/wiki/JavaScript[`JavaScript`], https://en.wikipedia.org/wiki/MVEL[`MVEL`] or one of the other supported languages please refer to APEX Programmers Guide.
+
+.MVEL code for the `MorningBoozeCheck` task
+[source,java,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/models/MyFirstPolicy/1/MorningBoozeCheck.mvel[`MorningBoozeCheck` task logic (`MVEL`)]
+----
+
+
+.Add Task Logic the Task
+image::mfp/MyFirstPolicy_P1_newTask3.png["Add task logic the task"]
+
+An alternative version of the same logic is available in JavaScript.
+Just use "JAVASCRIPT" as the 'Task Logic Type / Flavour' instead.
+
+.Javascript alternative for the `MorningBoozeCheck` task
+[source,javascript,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/models/MyFirstPolicy/1/MorningBoozeCheck.js[`MorningBoozeCheck` task logic (`Javascript`)]
+----
+
+
+The task definition is now complete so click the 'Submit' button to save the task. The task can now be seen on the 'Tasks' tab, and can be updated at any time by right-clicking on the task on the 'Task' tab. Now that we have created our task, we can can create a policy that uses that task.
+
+To create a new Policy click on the 'Policies' tab. In the 'Policies' pane, right click and select 'Create new Policy':
+
+Create a new Policy called `MyFirstPolicy`. Use the 'Generate UUID' button to create a new unique ID for the policy, and fill in a description for the policy. Use 'FREEFORM' as the 'Policy Flavour'.
+
+Each policy must have at least one state. Since this is 'freeform' policy we can add as many states as we wish. Let's start with one state.  Add a new state called `BoozeAuthDecide` to this `MyFirstPolicy` policy using the 'Add new State' button after filling in the name of our new state.
+
+.Create a new Policy
+image::mfp/MyFirstPolicy_P1_newPolicy1.png["Create a new policy"]
+
+Each state must uses one input event type. For this new state select the `SALE_INPUT` event as the input event.
+
+Each policy must define a 'First State' and a 'Policy Trigger Event'. The 'Policy Trigger Event' is the input event for the policy as a whole. This event is then passed to the first state in the chain of states in the policy, therefore the 'Policy Trigger Event' will be the input event for the first state. Each policy can only have one 'First State'. For our `MyFirstPolicy` policy, select `BoozeAuthDecide` as the 'First State'. This will automatically select `SALE_INPUT` as the 'Policy Trigger Event' for our policy.
+
+.Create a new State
+image::mfp/MyFirstPolicy_P1_newState1.png["Create a state"]
+
+In this case we will create a reference the pre-existing `MorningBoozeCheck` task that we defined above using the 'Add New Task' button. Select the `MorningBoozeCheck` task, and use the name of the task as the 'Local Name' for the task.
+
+in the case where a state references more than one task, a 'Default Task' must be selected for the state and some logic ('Task Selection Logic') must be specified to select the appropriate task at execution time. Since our new state `BoozeAuthDecide` only has one task the default task is automatically selected and no 'Task Selection Logic' is required.
+
+[NOTE]
+.State Output Mappings
+====
+In a 'Policy' 'State' a 'State Output Mapping' has 3 roles: 1) Select which 'State' should be executed next, 2) Select the type of the state's 'Outgoing Event', and 3) Populate the state's 'Outgoing Event'. This is how states are chained together to form a (https://en.wikipedia.org/wiki/Directed_acyclic_graph[Directed Acyclic Graph (DAG)]) of states. The final state(s) of a policy are those that do not select any 'next' state. Since a 'State' can only accept a single type of event, the type of the event emitted by a previous 'State' must be match the incoming event type of the next 'State'. This is also how the last state(s) in a policy can emit events of different types. The 'State Output Mapping' is also responsible for taking the fields that are output by the task executed in the state and populating the state's output event before it is emitted.
+
+Each 'Task' referenced in 'State' must have a defined 'Output Mapping' to take the output of the task, select an 'Outgoing Event' type for the state, populate the state's outgoing event, and then select the next state to be executed (if any).
+
+There are 2 basic types of output mappings:
+
+. *Direct Output Mappings* have a single value for 'Next State' and a single value for 'State Output Event'. The outgoing event for the state is automatically created, any outgoing event parameters that were present in the incoming event are copied into the outgoing event, then any task output fields that have the same name and type as parameters in the outgoing event are automatically copied into the outgoing event.
+. *Logic-based State Output Mappings / Finalizers* have some logic defined that dynamically selects and creates the 'State Outgoing Event', manages the population of the outgoing event parameters (perhaps changing or adding to the outputs from the task), and then dynamically selects the next state to be executed (if any).
+====
+
+Each task reference must also have an associated 'Output State Mapping' so we need an 'Output State Mapping' for the `BoozeAuthDecide` state to use when the `MorningBoozeCheck` task is executed. The simplest type of output mapping is a 'Direct Output Mapping'.
+
+Create a new 'Direct Output Mapping' for the state called `MorningBoozeCheck_Output_Direct` using the 'Add New Direct State Output Mapping' button. Select `SALE_AUTH` as the output event and select `None` for the next state value. We can then select this output mapping for use when the the `MorningBoozeCheck` task is executed. Since there is only state, and only one task for that state, this output mapping ensures that the `BoozeAuthDecide` state is the only state executed and the state (and the policy) can only emit events of type `SALE_AUTH`. (You may remember that the output fields for the `MorningBoozeCheck` task have the exact same names and reuse the item schemas that we used for the parameters in `SALE_AUTH` event. The `MorningBoozeCheck_Output_Direct` direct output mapping can now automatically copy the values from the  `MorningBoozeCheck` task directly into outgoing `SALE_AUTH` events.)
+
+.Add a Task and Output Mapping
+image::mfp/MyFirstPolicy_P1_newState2.png["Add a Task and Output Mapping"]
+
+Click the 'Submit' button to complete the definition of our `MyFirstPolicy` policy. The policy `MyFirstPolicy` can now be seen in the list of policies on the 'Policies' tab, and can be updated at any time by right-clicking on the policy on the 'Policies' tab.
+
+The `MyFirstPolicyModel`, including our `MyFirstPolicy` policy can now be checked for errors. Click on the 'Model' menu and select 'Validate'. The model should validate without any 'Warning' or 'Error' messages. If you see any 'Error' or 'Warning' messages, carefully read the message as a hint to find where you might have made a mistake when defining some aspect of your policy model.
+
+.Validate a Policy Model
+image::mfp/MyFirstPolicy_P1_validatePolicyModel.png["Validate the policy model for error using the 'Model' > 'Validate' menu item"]
+
+Congratulations, you have now completed your first APEX policy. The policy model containing our new policy can now be exported from the editor and saved. Click on the 'File' menu and select 'Download' to save the policy model in JSON format.
+The exported policy model is then available in the directory you selected, for instance `$APEX_HOME/examples/models/MyFirstPolicy/1/MyFirstPolicyModel_0.0.1.json`.
+The exported policy can now be loaded into the APEX Policy Engine, or can be re-loaded and edited by the APEX Policy Editor.
+
+.Export a Policy Model
+image::mfp/MyFirstPolicy_P1_exportPolicyModel1.png["Download the completed policy model using the 'File' > 'Download' menu item"]
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/034-s1-test-policy.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/034-s1-test-policy.adoc
new file mode 100644
index 0000000..7cbc83c
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/034-s1-test-policy.adoc
@@ -0,0 +1,75 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Test Policy Step 1
+
+To start a new APEX Engine you can use the following configuration.
+In a full APEX installation you can find this configuration in `$APEX_HOME/examples/config/MyFirstPolicy/1/MyFirstPolicyConfigStdin2StdoutJsonEvent.json`.
+This configuration expects incoming events to be in `JSON` format and to be passed into the APEX Engine from `stdin`, and result events will be printed in `JSON` format to `stdout`. This configuration loads the policy model stored in the file 'MyFirstPolicyModel_0.0.1.json' as exported from the APEX Editor. Note, you may need to edit this file to provide the full path to wherever you stored the exported policy model file.
+
+.JSON to load and execute _My First Policy_, read input JSON events from `stdin`, and emit output events to `stdout`
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/org/onap/policy/apex/examples/myfirstpolicy/1/config/MyFirstPolicyConfigStdin2StdoutJsonEvent.json[configuration file]
+----
+
+To test the policy try paste the following events into the console as the APEX engine executes:
+
+.Inputs and Outputs when testing _My First Policy_
+[width="100%",options="header",cols="4a,6a,2d"]
+|====================
+| Input Event (JSON) | Output Event (JSON) | comment
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventIn_NonBoozeItem_101309GMT.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventOut_NonBoozeItem_101309GMT.json[Output (`JSON`)]
+----
+| Request to buy a non-alcoholic item (`item_ID=5123`) at _10:13:09_ on _Tuesday, 10 January 2017_.
+
+Sale is authorized.
+
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventIn_BoozeItem_084106GMT.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventOut_BoozeItem_084106GMT.json[Output (`JSON`)]
+----
+| Request to buy alcohol item (`item_ID=1249`) at _08:41:06_ on _Monday, 02 January 2017_.
+
+Sale is not authorized.
+
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventIn_BoozeItem_201713GMT.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventOut_BoozeItem_201713GMT.json[Output (`JSON`)]
+----
+| Request to buy alcohol (`item_ID=1943`) at _20:17:13_ on _Tuesday, 20 December 2016_.
+
+Sale is authorized.
+
+|====================
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/035-s1-clieditor.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/035-s1-clieditor.adoc
new file mode 100644
index 0000000..4f870c3
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/035-s1-clieditor.adoc
@@ -0,0 +1,23 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Policy 1 in CLI Editor
+
+An equivalent version of the `MyFirstPolicyModel` policy model can again be generated using the APEX CLI editor.
+A sample APEX CLI script is shown below:
+
+.APEX CLI Editor code for Policy 1
+[source,apex,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/models/MyFirstPolicy/1/MyFirstPolicyModel_0.0.1.apex[APEX CLI Editor code for Policy 1]
+----
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/04-policy-step2.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/04-policy-step2.adoc
new file mode 100644
index 0000000..212e786
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/04-policy-step2.adoc
@@ -0,0 +1,23 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+== Policy Step 2
+
+=== Scenario
+_HyperM_ have just opened a new branch in a different country, but that country has different rules about when alcohol can be sold! In this section we will go through the necessary steps to extend our policy to enforce this for _HyperM_.
+
+* In some branches alcohol cannot be sold before 1pm, and not at all on Sundays.
+
+Although there are a number of ways to accomplish this the easiest approach for us is to define another task and then select which task is appropriate at runtime depending on the branch identifier in the incoming event.
+
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/041-s2-extend-model.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/041-s2-extend-model.adoc
new file mode 100644
index 0000000..e3654b5
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/041-s2-extend-model.adoc
@@ -0,0 +1,92 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Extend the Policy with the new Scenario
+
+To create a new Task click on the 'Tasks' tab. In the 'Tasks' pane, right click and select 'Create new Task':
+
+Create a new Task called `MorningBoozeCheckAlt1`.  Use the 'Generate UUID' button to create a new unique ID for the task, and fill in a description for the task. Select the same input and output fields that we used earlier when we defined the `MorningBoozeCheck` task earlier.
+
+.Input fields for `MorningBoozeCheckAlt1` task
+[width="100%",options="header"]
+|====================
+| Parameter Name | Parameter Type
+| time | timestamp_type
+| sale_ID | sale_ID_type
+| amount | price_type
+| item_ID | item_ID_type
+| quantity | quantity_type
+| assistant_ID | assistant_ID_type
+| branch_ID | branch_ID_type
+| notes | notes_type
+|====================
+
+.Output fields for `MorningBoozeCheckAlt1` task
+[width="100%",options="header"]
+|====================
+| Parameter Name | Parameter Type
+| sale_ID | sale_ID_type
+| time | timestamp_type
+| authorised |  authorised_type
+| message | message_type
+| amount | price_type
+| item_ID | item_ID_type
+| assistant_ID | assistant_ID_type
+| quantity | quantity_type
+| branch_ID | branch_ID_type
+| notes | notes_type
+|====================
+
+This task also requires some 'Task Logic' to implement the new behaviour for this task.
+
+For simplicity use the following code for the task logic. It again assumes that all items with `item_ID` between 1000 and 2000 contain alcohol. We again use the standard `Java` time utilities to check if the current time is between `00:00:00 CET` and `13:00:00 CET` or if it is `Sunday`.
+
+For this task we will again author the logic using the https://en.wikipedia.org/wiki/MVEL[`MVEL`] scripting language. Sample task logic code (specified in https://en.wikipedia.org/wiki/MVEL[`MVEL`]) is given below. For a detailed guide to how to write your own logic in https://en.wikipedia.org/wiki/JavaScript[`JavaScript`], https://en.wikipedia.org/wiki/MVEL[`MVEL`] or one of the other supported languages please refer to APEX Programmers Guide.
+
+.MVEL code for the `MorningBoozeCheckAlt1` task
+[source,java,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/models/MyFirstPolicy/2/MorningBoozeCheckAlt1.mvel[`MorningBoozeCheckAlt1` task logic (`MVEL`)]
+----
+
+.Create a new Task
+image::mfp/MyFirstPolicy_P2_newTask1.png["Create a new alternative task `MorningBoozeCheckAlt1`"]
+
+The task definition is now complete so click the 'Submit' button to save the task. Now that we have created our task, we can can add this task to the single pre-existing state (`BoozeAuthDecide`) in our policy.
+
+To edit the `BoozeAuthDecide` state in our policy click on the 'Policies' tab. In the 'Policies' pane, right click on our `MyFirstPolicy` policy and select 'Edit'. Navigate to the `BoozeAuthDecide` state in the 'states' section at the bottom of the policy definition pane.
+
+.Edit a Policy
+image::mfp/MyFirstPolicy_P2_editPolicy1.png["Right click to edit a policy"]
+
+To add our new task `MorningBoozeCheckAlt1`, scroll down to the `BoozeAuthDecide` state in the 'States' section. In the 'State Tasks' section for `BoozeAuthDecide` use the 'Add new task' button. Select our new `MorningBoozeCheckAlt1` task, and use the name of the task as the 'Local Name' for the task. The `MorningBoozeCheckAlt1` task can reuse the same `MorningBoozeCheck_Output_Direct` 'Direct State Output Mapping' that we used for the `MorningBoozeCheck` task. (Recall that the role of the 'State Output Mapping' is to select the output event for the state, and select the next state to be executed. These both remain the same as before.)
+
+Since our state has more than one task we must define some logic to determine which task should be used each time the state is executed. This _task selection logic_ is defined in the state definition. For our `BoozeAuthDecide` state we want the choice of which task to use to be based on the `branch_ID` from which the `SALE_INPUT` event originated. For simplicity sake let us assume that branches with `branch_ID` between `0` and `999` should use the `MorningBoozeCheck` task, and the branches with with `branch_ID` between `1000` and `1999` should use the `MorningBoozeCheckAlt1` task.
+
+This time, for variety, we will author the task selection logic using the https://en.wikipedia.org/wiki/JavaScript[`JavaScript`] scripting language. Sample task selection logic code (specified in https://en.wikipedia.org/wiki/JavaScript[`JavaScript`]) is given below. Paste the script text into the 'Task Selection Logic' box, and use "JAVASCRIPT" as the 'Task Selection Logic Type / Flavour'. It is necessary to mark one of the tasks as the 'Default Task' so that the task selection logic always has a fallback default option in cases where a particular task cannot be selected. In this case the `MorningBoozeCheck` task can be the default task.
+
+.JavaScript code for the `BoozeAuthDecide` task selection logic
+[source,javascript,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/models/MyFirstPolicy/2/MyFirstPolicy_BoozeAuthDecideTSL.js[`BoozeAuthDecide` task selection logic (`JavaScript`)]
+----
+
+.State definition with 2 Tasks and Task Selection Logic
+image::mfp/MyFirstPolicy_P2_editState1.png["State definition with 2 Tasks and Task Selection Logic"]
+
+When complete don't forget to click the 'Submit' button at the bottom of 'Policies' pane for our `MyFirstPolicy` policy after updating the `BoozeAuthDecide` state.
+
+Congratulations, you have now completed the second step towards your first APEX policy. The policy model containing our new policy can again be validated and exported from the editor and saved as shown in Step 1.
+
+The exported policy model is then available in the directory you selected, as link:files/mfp-files/2/MyFirstPolicyModel_0.0.1.json[_MyFirstPolicyModel_0.0.1.json_]. The exported policy can now be loaded into the APEX Policy Engine, or can be re-loaded and edited by the APEX Policy Editor.
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/042-s2-test-policy.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/042-s2-test-policy.adoc
new file mode 100644
index 0000000..5154596
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/042-s2-test-policy.adoc
@@ -0,0 +1,91 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Test Policy Step 2
+
+To start a new APEX Engine you can use the following configuration.
+In a full APEX installation you can find this configuration in `$APEX_HOME/examples/config/MyFirstPolicy/2/MyFirstPolicyConfigStdin2StdoutJsonEvent.json`.
+Note, this has changed from the configuration file in Step 1 to enable the `JAVASCRIPT` executor for our new 'Task Selection Logic'.
+
+.JSON to load and execute _My First Policy_, read input JSON events from `stdin`, and emit output events to `stdout`
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/org/onap/policy/apex/examples/myfirstpolicy/2/config/MyFirstPolicyConfigStdin2StdoutJsonEvent.json[configuration file]
+----
+
+To test the policy try paste the following events into the console as the APEX engine executes. Note, all tests from Step 1 will still work perfectly since none of those events originate from a branch with `branch_ID` between `1000` and `2000`. The 'Task Selection Logic' will therefore pick the `MorningBoozeCheck` task as expected, and will therefore give the same results.
+
+.Inputs and Outputs when testing _My First Policy_
+[width="100%",options="header",cols="3a,5a,3d"]
+|====================
+| Input Event (JSON) | Output Event (JSON) | comment
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventIn_BoozeItem_084106GMT.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/1/EventOut_BoozeItem_084106GMT.json[Output (`JSON`)]
+----
+| Request to buy alcohol item (`item_ID=1249`) at _08:41:06 GMT_ on _Monday, 02 January 2017_.
+
+Sale is not authorized. Uses the `MorningBoozeCheck` task.
+
+Note this test is copied from Step 1 above, and demonstrates that the original `MorningBoozeCheck` task is executed.
+
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/2/EventIn_BoozeItem_101433CET_thurs.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/2/EventOut_BoozeItem_101433CET_thurs.json[Output (`JSON`)]
+----
+| Request to buy alcohol (`item_ID=1047`) at _10:14:33_ on _Thursday, 22 December 2016_.
+
+Sale is not authorized. Uses the `MorningBoozeCheckAlt1` task.
+
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/2/EventIn_BoozeItem_171937CET_sun.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/2/EventOut_BoozeItem_171937CET_sun.json[Output (`JSON`)]
+----
+| Request to buy alcohol (`item_ID=1443`) at _17:19:37_ on _Sunday, 18 December 2016_.
+
+Sale is not authorized. Uses the `MorningBoozeCheckAlt1` task.
+
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/2/EventIn_NonBoozeItem_111309CET_mon.json[Input (`JSON`)]
+----
+|
+[source,json,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/events/MyFirstPolicy/2/EventOut_NonBoozeItem_111309CET_mon.json[Output (`JSON`)]
+----
+| Request to buy non-alcoholic item (`item_ID=5321`) at _11:13:09_ on _Monday, 2 January 2017_.
+
+Sale is authorized. Uses the `MorningBoozeCheckAlt1` task.
+
+|====================
+
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/043-s2-clieditor.adoc b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/043-s2-clieditor.adoc
new file mode 100644
index 0000000..9b2951c
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/fragments/043-s2-clieditor.adoc
@@ -0,0 +1,23 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+=== Policy 2 in CLI Editor
+
+An equivalent version of the `MyFirstPolicyModel` policy model can again be generated using the APEX CLI editor.
+A sample APEX CLI script is shown below:
+
+.APEX CLI Editor code for Policy 2
+[source,apex,options="nowrap"]
+----
+include::{adsite-examples-myfirstpolicy-dir}/main/resources/examples/models/MyFirstPolicy/2/MyFirstPolicyModel_0.0.1.apex[APEX CLI Editor code for Policy 2]
+----
\ No newline at end of file
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_exportPolicyModel1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_exportPolicyModel1.png
new file mode 100644
index 0000000..fb646f4
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_exportPolicyModel1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent1.png
new file mode 100644
index 0000000..d67ac82
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent2.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent2.png
new file mode 100644
index 0000000..0cc4a42
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent2.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent3.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent3.png
new file mode 100644
index 0000000..7a75049
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newEvent3.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newItemSchema1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newItemSchema1.png
new file mode 100644
index 0000000..0a6b5b0
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newItemSchema1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newItemSchema2.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newItemSchema2.png
new file mode 100644
index 0000000..dbeba70
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newItemSchema2.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicy1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicy1.png
new file mode 100644
index 0000000..0a1b34f
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicy1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicyModel1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicyModel1.png
new file mode 100644
index 0000000..168e82d
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicyModel1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicyModel2.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicyModel2.png
new file mode 100644
index 0000000..858911d
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newPolicyModel2.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newState1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newState1.png
new file mode 100644
index 0000000..559a7cc
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newState1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newState2.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newState2.png
new file mode 100644
index 0000000..806bc0e
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newState2.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask1.png
new file mode 100644
index 0000000..911ae02
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask2.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask2.png
new file mode 100644
index 0000000..46dc6c7
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask2.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask3.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask3.png
new file mode 100644
index 0000000..1805c14
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_newTask3.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_validatePolicyModel.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_validatePolicyModel.png
new file mode 100644
index 0000000..2029b18
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P1_validatePolicyModel.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_editPolicy1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_editPolicy1.png
new file mode 100644
index 0000000..be16f5a
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_editPolicy1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_editState1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_editState1.png
new file mode 100644
index 0000000..83c28b0
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_editState1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_newTask1.png b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_newTask1.png
new file mode 100644
index 0000000..036a4ad
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site-docs/adoc/resources/images/mfp/MyFirstPolicy_P2_newTask1.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/02-data-models.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/02-data-models.adoc
new file mode 100644
index 0000000..dca728d
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/02-data-models.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/02-data-models.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/03-policy-step1.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/03-policy-step1.adoc
new file mode 100644
index 0000000..2bf3aa4
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/03-policy-step1.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/03-policy-step1.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/031-s1-new-model.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/031-s1-new-model.adoc
new file mode 100644
index 0000000..c3f05c5
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/031-s1-new-model.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/031-s1-new-model.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/032-s1-new-events.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/032-s1-new-events.adoc
new file mode 100644
index 0000000..044c21e
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/032-s1-new-events.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/032-s1-new-events.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/033-s1-new-policy.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/033-s1-new-policy.adoc
new file mode 100644
index 0000000..d7d279b
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/033-s1-new-policy.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/033-s1-new-policy.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/034-s1-test-policy.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/034-s1-test-policy.adoc
new file mode 100644
index 0000000..43a026a
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/034-s1-test-policy.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/034-s1-test-policy.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/035-s1-clieditor.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/035-s1-clieditor.adoc
new file mode 100644
index 0000000..2c30630
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/035-s1-clieditor.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/035-s1-clieditor.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/04-policy-step2.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/04-policy-step2.adoc
new file mode 100644
index 0000000..155c888
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/04-policy-step2.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/04-policy-step2.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/041-s2-extend-model.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/041-s2-extend-model.adoc
new file mode 100644
index 0000000..d2b4a99
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/041-s2-extend-model.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/041-s2-extend-model.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/042-s2-test-policy.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/042-s2-test-policy.adoc
new file mode 100644
index 0000000..454fee8
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/042-s2-test-policy.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/042-s2-test-policy.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/043-s2-clieditor.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/043-s2-clieditor.adoc
new file mode 100644
index 0000000..ca39675
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/043-s2-clieditor.adoc
@@ -0,0 +1,14 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/043-s2-clieditor.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/asciidoc/MyFirstPolicyHowto.adoc b/examples/examples-myfirstpolicy/src/site/asciidoc/MyFirstPolicyHowto.adoc
new file mode 100644
index 0000000..83fe340
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/asciidoc/MyFirstPolicyHowto.adoc
@@ -0,0 +1,16 @@
+//
+// ============LICENSE_START=======================================================
+//  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+// ================================================================================
+// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+// 
+// SPDX-License-Identifier: CC-BY-4.0
+// ============LICENSE_END=========================================================
+//
+// @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+//
+
+= HowTo: My First Policy
+
+include::{adsite-examples-myfirstpolicy-dir}/site-docs/adoc/fragments/01-introduction.adoc[]
diff --git a/examples/examples-myfirstpolicy/src/site/css/site.css b/examples/examples-myfirstpolicy/src/site/css/site.css
new file mode 100644
index 0000000..ef8bd4d
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/css/site.css
@@ -0,0 +1,100 @@
+/*
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+@import url(http://cdnjs.cloudflare.com/ajax/libs/font-awesome/3.2.0/css/font-awesome.css);
+
+
+/*************** Table definitions *******************/
+
+tableblock > .title, .tableblock > caption { line-height: 1.4; color: #7a2518; font-weight: 300; margin-top: 0.2em; margin-bottom: 0.5em; }
+
+.tableblock > caption { text-align: left; font-weight: bold; white-space: nowrap; overflow: visible; max-width: 0; }
+
+table.tableblock { background: white; margin-bottom: 1.25em; border: solid 1px #dddddd; }
+table.tableblock thead, table.tableblock tfoot { background: whitesmoke; font-weight: bold; }
+table.tableblock thead tr th, table.tableblock thead tr td, table tfoot tr th, table tfoot tr td { padding: 0.5em 0.625em 0.625em; font-size: inherit; color: #222222; text-align: left; }
+table.tableblock tr th, table.tableblock tr td { padding: 0.5625em 0.625em; font-size: inherit; color: #222222; }
+table.tableblock tr.even, table.tableblock tr.alt, table.tableblock tr:nth-of-type(even) { background: #f9f9f9; }
+table.tableblock thead tr th, table.tableblock tfoot tr th, table.tableblock tbody tr td, table.tableblock tr td, table.tableblock tfoot tr td { display: table-cell; line-height: 1.6; }
+
+table.tableblock #preamble > .sectionbody > .paragraph:first-of-type p { font-size: inherit; }
+
+table.tableblock.grid-all { border-collapse: separate; border-spacing: 1px; -webkit-border-radius: 4px; border-radius: 4px; border-top: 1px solid #dddddd; border-bottom: 1px solid #dddddd; }
+
+table.tableblock.frame-topbot, table.tableblock.frame-none { border-left: 0; border-right: 0; }
+
+table.tableblock.frame-sides, table.tableblock.frame-none { border-top: 0; border-bottom: 0; }
+
+table.tableblock td .paragraph:last-child p, table.tableblock td > p:last-child { margin-bottom: 0; }
+
+th.tableblock.halign-left, td.tableblock.halign-left { text-align: left; }
+
+th.tableblock.halign-right, td.tableblock.halign-right { text-align: right; }
+
+th.tableblock.halign-center, td.tableblock.halign-center { text-align: center; }
+
+th.tableblock.valign-top, td.tableblock.valign-top { vertical-align: top; }
+
+th.tableblock.valign-bottom, td.tableblock.valign-bottom { vertical-align: bottom; }
+
+th.tableblock.valign-middle, td.tableblock.valign-middle { vertical-align: middle; }
+
+p.tableblock.header { color: #222222; font-weight: bold; }
+
+
+
+/*************** KBD Macro definitions *******************/
+
+kbd.keyseq { color: #555555; }
+
+kbd:not(.keyseq) { display: inline-block; color: #222222; font-size: 0.75em; line-height: 1.4; background-color: #F7F7F7; border: 1px solid #ccc; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 2px white inset; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2), 0 0 0 2px white inset; margin: -0.15em 0.15em 0 0.15em; padding: 0.2em 0.6em 0.2em 0.5em; vertical-align: middle; white-space: nowrap; }
+
+kbd kbd:first-child { margin-left: 0; }
+
+kbd kbd:last-child { margin-right: 0; }
+
+
+/*************** Admontion Blocks definitions *******************/
+.admonitionblock td.content > .title, .exampleblock > .title, .imageblock > .title, .videoblock > .title, .listingblock > .title, .literalblock > .title, .openblock > .title, .paragraph > .title, .quoteblock > .title, .sidebarblock > .title, .tableblock > .title, .verseblock > .title, .dlist > .title, .olist > .title, .ulist > .title, .qlist > .title, .hdlist > .title { text-align: left; font-weight: bold; }
+
+.admonitionblock > table { border: 0; background: none; width: 100%; margin-top: 1em; margin-bottom: 1em;}
+.admonitionblock > table td.icon { text-align: center; width: 80px; }
+.admonitionblock > table td.icon img { max-width: none; }
+.admonitionblock > table td.icon .title { font-weight: bold; text-transform: uppercase; }
+.admonitionblock > table td.content { padding-left: 1.125em; padding-right: 1.25em; border-left: 1px solid #dddddd; color: #6f6f6f; }
+.admonitionblock > table td.content > :last-child > :last-child { margin-bottom: 0; }
+
+.admonitionblock td.icon [class^="fa icon-"]:before {font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
+.admonitionblock td.icon .icon-note:before { content: "\f05a"; color: #005498; color: #003f72; }
+.admonitionblock td.icon .icon-tip:before { content: "\f0eb"; text-shadow: 1px 1px 2px rgba(155, 155, 0, 0.8); color: #111; }
+.admonitionblock td.icon .icon-warning:before { content: "\f071"; color: #bf6900; }
+.admonitionblock td.icon .icon-caution:before { content: "\f06d"; color: #bf3400; }
+.admonitionblock td.icon .icon-important:before { content: "\f06a"; color: #bf0000; }
+
+
+
+/*************** Misc definitions *******************/
+
+*:not(pre) > code { font-size: 0.9375em; padding: 1px 3px 0; white-space: nowrap; background-color: #f2f2f2; border: 1px solid #cccccc; -webkit-border-radius: 4px; border-radius: 4px; text-shadow: none; }
+
+pre, pre > code { line-height: 1.4; color: inherit; font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; }
+
+code { font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: normal; color: #6d180b; }
+
diff --git a/examples/examples-myfirstpolicy/src/site/images/logos.png b/examples/examples-myfirstpolicy/src/site/images/logos.png
new file mode 100644
index 0000000..915d6e5
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/images/logos.png
Binary files differ
diff --git a/examples/examples-myfirstpolicy/src/site/site.xml b/examples/examples-myfirstpolicy/src/site/site.xml
new file mode 100644
index 0000000..4dae420
--- /dev/null
+++ b/examples/examples-myfirstpolicy/src/site/site.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ============LICENSE_START=======================================================
+   Copyright (C) 2016-2018 Ericsson. All rights reserved.
+  ================================================================================
+  This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE
+  Full license text at https://creativecommons.org/licenses/by/4.0/legalcode
+
+  SPDX-License-Identifier: CC-BY-4.0
+  ============LICENSE_END=========================================================
+
+  @author Sven van der Meer (sven.van.der.meer@ericsson.com)
+
+-->
+
+<project name="APEX Examples My First Policy">
+    <body>
+        <menu name="APEX Examples My First Policy">
+            <item href="MyFirstPolicyHowto.html" name="HowTo: My First Policy"
+                collapse="true">
+                <item href="02-data-models.html" name="Data Models" />
+                <item href="03-policy-step1.html" name="Policy Step 1">
+                    <item href="031-s1-new-model.html" name="New Policy Model" />
+                    <item href="032-s1-new-events.html" name="Events" />
+                    <item href="033-s1-new-policy.html" name="New Policy" />
+                    <item href="034-s1-test-policy.html" name="Test the Policy" />
+                    <item href="035-s1-clieditor.html" name="CLI Editor File" />
+                </item>
+                <item href="04-policy-step2.html" name="Policy Step 2">
+                    <item href="041-s2-extend-model.html" name="Extend Policy Model" />
+                    <item href="042-s2-test-policy.html" name="Test the Policy" />
+                    <item href="043-s2-clieditor.html" name="CLI Editor File" />
+                </item>
+            </item>
+            <item href="javadocs/index.html" name="API Doc" />
+        </menu>
+        <menu ref="reports" inherit="top" />
+        <menu ref="modules" />
+
+        <breadcrumbs>
+            <item name="My First Policy" href="index.html" />
+        </breadcrumbs>
+    </body>
+</project>
\ No newline at end of file
