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
