diff --git a/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/exceptions/i18n/SDOExceptionResource.java b/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/exceptions/i18n/SDOExceptionResource.java
index 34569b4..bdfa428 100644
--- a/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/exceptions/i18n/SDOExceptionResource.java
+++ b/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/exceptions/i18n/SDOExceptionResource.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 1998, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017 Oracle and/or its affiliates, IBM Corporation. All rights reserved.
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
  * which accompanies this distribution.
@@ -9,6 +9,8 @@
  *
  * Contributors:
  *     Oracle - initial API and implementation from Oracle TopLink
+ *     11/14/2017 - Dalia Abo Sheasha
+ *       - 527273 : Minor message improvements
  ******************************************************************************/
 package org.eclipse.persistence.exceptions.i18n;
 
@@ -77,8 +79,8 @@ public class SDOExceptionResource extends ListResourceBundle {
                                            { "45208", "Unable to map property {0} from type {1}. The javax.activation and javax.mail packages are required to map properties of type DataHandler. Ensure that both of these are available on the classpath."},
                                            { "45209", "An attempt was made to reset the ApplicationResolver instance on SDOHelperContext.  Only one set is permitted."},
                                            { "45210", "The DataObject being marshalled is not from the same HelperContext as the XMLHelper."},
-                                           { "45211", "Could not define type with name [{0}]. The name is not a valid XML name."},
-                                           { "45212", "Could not define property with [{0}]. The name is not a valid XML name."},
+                                           { "45211", "The type could not be defined with the [{0}] name. The name is not a valid XML name."},
+                                           { "45212", "The property could not be defined with the [{0}] name. The name is not a valid XML name."},
 
     };
 
diff --git a/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/LoggingLocalizationResource.java b/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/LoggingLocalizationResource.java
index a5d28fe..2bdc9a2 100644
--- a/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/LoggingLocalizationResource.java
+++ b/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/LoggingLocalizationResource.java
@@ -47,6 +47,8 @@
  *       - 455683: Automatically detect target server
  *     11/07/2017 - Dalia Abo Sheasha
  *       - 526957 : Split the logging and trace messages
+ *     11/14/2017 - Dalia Abo Sheasha
+ *       - 527273 : Minor message improvements
  ******************************************************************************/
 package org.eclipse.persistence.internal.localization.i18n;
 
@@ -480,12 +482,12 @@ public class LoggingLocalizationResource extends ListResourceBundle {
         // 282751
         { "removing_unique_constraint", "Removing UNIQUE constraint definition from [{0}] because it is also a primary key."},
         { "session_manager_no_partition", "No partition instance associated with current SessionManager instance."},
-        { "cannot_get_nested_collection_type", "Cannot get nested collection type"},
+        { "cannot_get_nested_collection_type", "The nested collection type cannot be obtained."},
         // DBWS
-        { "dbws_xml_schema_read_error", "Could not read XML schema: [{0}]"},
-        { "dbws_orm_metadata_read_error", "Could not read ORM metadata: [{0}]"},
-        { "dbws_oxm_metadata_read_error", "Could not read OXM metadata: [{0}]"},
-        { "dbws_no_wsdl_inline_schema", "Could not read WSDL inline schema: [{0}]"}
+        { "dbws_xml_schema_read_error", "The [{0}] XML schema could not be read."},
+        { "dbws_orm_metadata_read_error", "The [{0}] ORM metadata could not be read."},
+        { "dbws_oxm_metadata_read_error", "The [{0}] OXM metadata could not be read."},
+        { "dbws_no_wsdl_inline_schema", "The [{0}] WSDL inline schema could not be read."}
     };
 
     /**
diff --git a/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/ToStringLocalizationResource.java b/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/ToStringLocalizationResource.java
index e303201..683029a 100644
--- a/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/ToStringLocalizationResource.java
+++ b/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/internal/localization/i18n/ToStringLocalizationResource.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 1998, 2015 Oracle, IBM Corporation and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2017 Oracle and/or its affiliates, IBM Corporation. All rights reserved.
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
  * which accompanies this distribution.
@@ -13,6 +13,8 @@
  *       - 443762 : Misc message cleanup.
  *     12/18/2014-2.6 Rick Curtis
  *       - 454189 : Misc message cleanup.#2
+ *     11/14/2017 - Dalia Abo Sheasha
+ *       - 527273 : Minor message improvements
  ******************************************************************************/
 package org.eclipse.persistence.internal.localization.i18n;
 
@@ -71,8 +73,8 @@ public class ToStringLocalizationResource extends ListResourceBundle {
                                            { "unknown", "unknown" },
                                            { "connector", "connector" },
                                            { "staticweave_processor_unknown_outcome", "Weaving classes stored in a directory and outputting to a JAR often leads to unexpected results." },
-                                           { "staticweave_processor_dir_not_created", "Cannot create directory '{0}'."},
-                                           { "staticweave_processor_file_not_created", "Cannot create file '{0}'." },
+                                           { "staticweave_processor_dir_not_created", "The {0} directory cannot be created."},
+                                           { "staticweave_processor_file_not_created", "The {0} file cannot be created." },
 
                                            { "staticweave_commandline_help_message_1of19", "  Usage: StaticWeave [options] source target" },
                                            { "staticweave_commandline_help_message_2of19", "  Options:" },
