Merge "Updated documentation for 5.2.0M2" into dev
diff --git a/README.md b/README.md
index 897edd4..0ca227b 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,9 @@
 Before you start, please take a look at the [Getting Started Guide](https://git.eclipse.org/c/mdmbl/org.eclipse.mdm.git/plain/doc/GettingStarted_mdmbl.pdf) which can also be found in the [Download area](https://projects.eclipse.org/projects/technology.mdmbl/downloads) of the project and in the `docs` directory relative to this README.md
 
 ## Minimum requirements
-* JDK 1.8.0_45
+Java 8: 
+* Oracle Java SE 8u201 and higher http://www.oracle.com/technetwork/java/javase/downloads/
+* AdoptJDK: openJDK 8 with HotSpot: https://adoptopenjdk.net/
 
 > This project uses a Gradle Wrapper
 
@@ -15,16 +17,16 @@
 
 ## Build, deploy and configure the application
 
-1. Edit the `org.eclipse.mdm/org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/core/property.service.ts` and set the `data_host` variable according to your deployment  
+1. Edit the `org.eclipse.mdm/nucleus/webclient/src/main/webapp/src/app/core/property.service.ts` and set the `data_host` variable according to your deployment  
  (This property will be used to create the REST URLs to communicate with the backend).
  
 2. Build the application with `gradlew install`.  
- The command `gradlew install` executed at `org.eclipse.mdm` creates a ZIP archive named `build/distributions/openMDM_application-${version}.zip` at `org.eclipse.mdm.nucleus/build/distributions`  
+ The command `gradlew install` executed at `org.eclipse.mdm` creates a ZIP archive named `build/distributions/openMDM_application-${version}.zip` at `org.eclipse.mdm/nucleus/build/distributions`  
  The ZIP archive contains the backend `org.eclipse.mdm.nucleus-${version}.war` and the configuration files in the `configuration` directory
   
 3. Check that the database for the preference service is running, otherwise start it with `asadmin start-database` as described in the Getting Started Guide.
 
-4. Deploy the WAR file `org.eclipse.mdm.nucleuss-${version}.war` on your application server. Make sure to deploy the WAR file with application name `org.eclipse.mdm.nucleus`, otherwise the `LoginRealmModule` is not able to lookup the `ConnectorService` EJB.  
+4. Deploy the WAR file `org.eclipse.mdm.nucleus-${version}.war` on your application server. Make sure to deploy the WAR file with application name `org.eclipse.mdm.nucleus`, otherwise the `LoginRealmModule` is not able to lookup the `ConnectorService` EJB.  
  Additionally in the following examples, we assume that the context root is also set to `org.eclipse.mdm.nucleus`.  
  When deploying from command line you can use `asadmin deploy --name org.eclipse.mdm.nucleus /path/to/org.eclipse.mdm.nucleus-${version}.war`
  
@@ -412,7 +414,7 @@
 System scoped preference are applied globally.
 
 * Node provider  
-  The navigation tree structure can be defined via a node provider. The default node provider is set in `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/navigator/defaultnodeprovider.json`.  
+  The navigation tree structure can be defined via a node provider. The default node provider is set in `nucleus/webclient/src/main/webapp/src/app/navigator/defaultnodeprovider.json`.  
   It is recommended not to change the default node provider. Instead new node providers can be added as preferences.  
   Their keys must start with the prefix `nodeprovider.`. Once a custom node provider is supplied it can be selected in the dropdown menu in the navigation tree header.  
   
@@ -484,15 +486,15 @@
 Any MDM module needs to be a valid [Angular module](https://angular.io/guide/architecture-modules) aka NgModule.  
 A NgModule consists of the module definition, components, services and other files that are in the scope of the module. 
 The component can hold any content. The component must be declared in a module definition to grant accessibility in the rest of the application.  
-All related files should be stored in a new module subfolder in the app folder `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app` (eg. `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/new-module`)
+All related files should be stored in a new module subfolder in the app folder `nucleus/webclient/src/main/webapp/src/app` (eg. `nucleus/webclient/src/main/webapp/src/app/new-module`)
 
 ### Example module
 
-An example for a new module can be found at `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/example-module`
+An example for a new module can be found at `nucleus/webclient/src/main/webapp/src/app/example-module`
 
 ### Creating a MDM module
 
-1. Create a new folder eg. `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/new-module`
+1. Create a new folder eg. `nucleus/webclient/src/main/webapp/src/app/new-module`
 
 2. Create an Angular component (eg. `mdm-new.component.ts`) inside that new folder   
    ```typescript
@@ -519,14 +521,14 @@
 ### Embedding a module (no lazy loading)
 
 To embed this new module in MDM you have to register this module in the `MDMModules` Module.
-* Import the new module at `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/modules/mdm-modules.module.ts`
+* Import the new module at `nucleus/webclient/src/main/webapp/src/app/modules/mdm-modules.module.ts`
 
-* Register a route to the new module at `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/modules/mdm-modules-routing.module.ts`  
+* Register a route to the new module at `nucleus/webclient/src/main/webapp/src/app/modules/mdm-modules-routing.module.ts`  
   ```
   { path: 'new', component: MDMNewComponent}
   ```
 
- * Furthermore you have to define a display name for the registered route in the `links` array in `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/modules/mdm-modules.component.ts`    
+ * Furthermore you have to define a display name for the registered route in the `links` array in `nucleus/webclient/src/main/webapp/src/app/modules/mdm-modules.component.ts`    
   ```
   { path: 'new', name: 'New Module' }
   ```
@@ -552,7 +554,7 @@
 ```   
 
 ### Filerelease module
-The filerelease module is stored in the following folder `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/filerelease`
+The filerelease module is stored in the following folder `nucleus/webclient/src/main/webapp/src/app/filerelease`
 
 It can be embedded as any other module described above.  
 ```
@@ -564,9 +566,9 @@
 ```
 
 ### Adding a module to the detail view (eg. filerelease module)
-To make the filerelease module available in the detail view it needs to be imported in the corresponding MDM Module `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/details/mdm-detail.module.ts`  
-Thereafter, the `MDMFilereleaseCreateComponent` can be imported to the `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/details/components/mdm-detail-view/mdm-detail-view.component.ts`.  
-Then the following has to be added to the `org.eclipse.mdm.nucleus/org.eclipse.mdm.application/src/main/webapp/src/app/details/components/mdm-detail-view/mdm-detail-view.component.html` file:
+To make the filerelease module available in the detail view it needs to be imported in the corresponding MDM Module `nucleus/webclient/src/main/webapp/src/app/details/mdm-detail.module.ts`  
+Thereafter, the `MDMFilereleaseCreateComponent` can be imported to the `nucleus/webclient/src/main/webapp/src/app/details/components/mdm-detail-view/mdm-detail-view.component.ts`.  
+Then the following has to be added to the `nucleus/webclient/src/main/webapp/src/app/details/components/mdm-detail-view/mdm-detail-view.component.html` file:
 ```
   <mdm-filerelease-create [node]=selectedNode [disabled]="isReleasable()"></mdm-filerelease-create>
 ```
diff --git a/api/odsadapter/README.md b/api/README.md
similarity index 95%
rename from api/odsadapter/README.md
rename to api/README.md
index 80e73da..e996eda 100644
--- a/api/odsadapter/README.md
+++ b/api/README.md
@@ -9,17 +9,18 @@
 The MDM5 API consists of the following projects:
 
 
--   **org.eclipse.mdm.api.base**\
+-   **org.eclipse.mdm/api/base**
     Defines the core services and entities. Entities contained in this
     project must be supported by all implementations.
-
--   **org.eclipse.mdm.api.default**\
     Extends the core API with catalog and template entities to organize
     the storage of context data.
 
--   **org.eclipse.mdm.api.odsadapter**\
-    Implements both org.eclipse.mdm.api.base and org.eclipse.mdm.default
+-   **org.eclipse.mdm/api/odsadapter**
+    Implements both org.eclipse.mdm.api.base 
     using the query based ASAM ODS OO API.
+    
+-   **org.eclipse.mdm/api/atfxadapter**
+    Provides services for atfx files. 
 
 
 ## 2. EntityManager ##
@@ -61,13 +62,7 @@
 which returns a result consisting of Test, TestStep or Measurement
 entities.
 
-
-### 2.2. Notification ###
-
-TODO
-
-
-### 2.3. FileService ###
+### 2.2. FileService ###
 
 The file service may be used to download externally linked files, query
 their size or open a consumable download stream for a given externally
@@ -85,7 +80,7 @@
 within a Section 2.5, "Transaction".
 ```
 
-### 2.4. EntityFactory ###
+### 2.3. EntityFactory ###
 
 The entity factory is the only way to create new entities. Each entity
 returned by this service is considered to be virtual, since it does not
@@ -107,7 +102,7 @@
 insert-, update- or delete-statements for the children.
 
 
-### 2.5. Transaction ###
+### 2.4. Transaction ###
 
 The transaction service effectively modifies the stored contents.
 Entities are grouped by their type before they are processed. Each group
diff --git a/doc/GettingStarted_mdmbl.pdf b/doc/GettingStarted_mdmbl.pdf
index e0bc613..90b8fb9 100644
--- a/doc/GettingStarted_mdmbl.pdf
+++ b/doc/GettingStarted_mdmbl.pdf
Binary files differ