diff --git a/VERSION b/VERSION
index b1b25a5..5859406 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.2.2
+2.2.3
diff --git a/xos/synchronizer/models/exampleservice.xproto b/xos/synchronizer/models/exampleservice.xproto
index 7068d51..95efd59 100644
--- a/xos/synchronizer/models/exampleservice.xproto
+++ b/xos/synchronizer/models/exampleservice.xproto
@@ -3,29 +3,82 @@
 
 message ExampleService (Service){
     option verbose_name = "Example Service";
-    required string service_message = 1 [help_text = "Service Message to Display", max_length = 254, null = False, db_index = False, blank = False];
+    option description = "Service that demonstrates integration with OpenStack compute resources";
+
+    required string service_message = 1 [
+        help_text = "Service Message to Display",
+        blank = False,
+        db_index = False,
+        max_length = 254,
+        null = False];
 }
 
 message Color (XOSBase){
      option verbose_name = "Color";
-     required string name = 1 [help_text = "Name for this color", db_index = False, max_length = 256, null = False, blank = False];
-     required string html_code = 2 [help_text = "Code for this color", db_index = False, max_length = 256, null = False, blank = False];
+     option description = "An html color code that may be used to color a web page";
+
+     required string name = 1 [
+         help_text = "Name for this color",
+         blank = False,
+         db_index = False,
+         max_length = 256,
+         null = False];
+     required string html_code = 2 [
+         help_text = "HTML Code for this color",
+         blank = False,
+         db_index = False,
+         max_length = 256,
+         null = False];
 }
 
 message ServiceInstanceWithCompute (ServiceInstance) {
-    optional manytoone compute_instance->ComputeServiceInstance:service_instance_with_computes = 1:1002 [db_index=True, null=True, blank=True];
+    option description = "ServiceInstance with relation to a ComputeServiceInstance";
+
+    optional manytoone compute_instance->ComputeServiceInstance:service_instance_with_computes = 1:1002 [
+        blank=True,
+        db_index=True,
+        null=True];
 }
 
 message ExampleServiceInstance (ServiceInstanceWithCompute){
      option verbose_name = "Example Service Instance";
-     required string tenant_message = 1 [help_text = "Tenant Message to Display", max_length = 254, null = False, db_index = False, blank = False];
-     optional manytoone foreground_color->Color:serviceinstance_foreground_colors = 2:1001 [db_index = True, null = True, blank = True];
-     optional manytoone background_color->Color:serviceinstance_background_colors = 3:1002 [db_index = True, null = True, blank = True];
+     option description = "Tenancy in SimpleExampleService, represents a web server that serves one page";
+
+     required string tenant_message = 1 [
+         help_text = "Tenant Message to Display",
+         blank = False,
+         db_index = False,
+         max_length = 254,
+         null = False];
+     optional manytoone foreground_color->Color:serviceinstance_foreground_colors = 2:1001 [
+         blank = True,
+         db_index = True,
+         null = True];
+     optional manytoone background_color->Color:serviceinstance_background_colors = 3:1002 [
+         blank = True,
+         db_index = True,
+         null = True];
 }
 
 message EmbeddedImage (XOSBase){
      option verbose_name = "Embedded Image";
-     required string name = 1 [help_text = "Name for this image", db_index = False, max_length = 256, null = False, blank = False];
-     required string url = 2 [help_text = "URL for this image", db_index = False, max_length = 256, null = False, blank = False];
-     optional manytoone serviceinstance->ExampleServiceInstance:embedded_images = 3:1001 [db_index = True, null = True, blank = True];
+     option description = "An embedded image that may be placed in a web page";
+
+     required string name = 1 [
+         help_text = "Name for this image",
+         blank = False,
+         db_index = False,
+         max_length = 256,
+         null = False];
+     required string url = 2 [
+         help_text = "URL for this image",
+         blank = False,
+         db_index = False,
+         max_length = 256,
+         null = False];
+     optional manytoone serviceinstance->ExampleServiceInstance:embedded_images = 3:1001 [
+         help_text = "ServiceInstance that represents the web page where this embedded image should be placed",
+         blank = True,
+         db_index = True,
+         null = True];
 }
