diff --git a/core/config/schema/core.data_types.schema.yml b/core/config/schema/core.data_types.schema.yml
index edd97ac..81f5ce5 100644
--- a/core/config/schema/core.data_types.schema.yml
+++ b/core/config/schema/core.data_types.schema.yml
@@ -21,19 +21,19 @@ ignore:
 # Basic scalar data types from typed data.
 boolean:
   label: 'Boolean'
-  class: '\Drupal\Core\TypedData\Plugin\DataType\Boolean'
+  class: '\Drupal\Core\TypedData\Plugin\DataType\BooleanType'
 email:
   label: 'Email'
   class: '\Drupal\Core\TypedData\Plugin\DataType\Email'
 integer:
   label: 'Integer'
-  class: '\Drupal\Core\TypedData\Plugin\DataType\Integer'
+  class: '\Drupal\Core\TypedData\Plugin\DataType\IntegerType'
 float:
   label: 'Float'
-  class: '\Drupal\Core\TypedData\Plugin\DataType\Float'
+  class: '\Drupal\Core\TypedData\Plugin\DataType\FloatType'
 string:
   label: 'String'
-  class: '\Drupal\Core\TypedData\Plugin\DataType\String'
+  class: '\Drupal\Core\TypedData\Plugin\DataType\StringType'
 uri:
   label: 'Uri'
   class: '\Drupal\Core\TypedData\Plugin\DataType\Uri'
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Boolean.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/BooleanType.php
similarity index 79%
rename from core/lib/Drupal/Core/TypedData/Plugin/DataType/Boolean.php
rename to core/lib/Drupal/Core/TypedData/Plugin/DataType/BooleanType.php
index 874fcbb..a131cba 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Boolean.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/BooleanType.php
@@ -2,7 +2,7 @@
 
 /**
  * @file
- * Contains \Drupal\Core\TypedData\Plugin\DataType\Boolean.
+ * Contains \Drupal\Core\TypedData\Plugin\DataType\BooleanType.
  */
 
 namespace Drupal\Core\TypedData\Plugin\DataType;
@@ -21,7 +21,7 @@
  *   label = @Translation("Boolean")
  * )
  */
-class Boolean extends PrimitiveBase implements BooleanInterface {
+class BooleanType extends PrimitiveBase implements BooleanInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/DateTimeIso8601.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/DateTimeIso8601.php
index 8c35457..b3bfec5 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/DateTimeIso8601.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/DateTimeIso8601.php
@@ -20,7 +20,7 @@
  *   label = @Translation("Date")
  * )
  */
-class DateTimeIso8601 extends String implements DateTimeInterface {
+class DateTimeIso8601 extends StringType implements DateTimeInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/DurationIso8601.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/DurationIso8601.php
index eeedad4..f2d4eaa 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/DurationIso8601.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/DurationIso8601.php
@@ -19,7 +19,7 @@
  *   label = @Translation("Duration")
  * )
  */
-class DurationIso8601 extends String implements DurationInterface {
+class DurationIso8601 extends StringType implements DurationInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Email.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/Email.php
index 91740e5..fff802e 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Email.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/Email.php
@@ -20,6 +20,6 @@
  *   constraints = {"Email" = {}}
  * )
  */
-class Email extends String implements StringInterface {
+class Email extends StringType implements StringInterface {
 
 }
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Float.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/FloatType.php
similarity index 80%
rename from core/lib/Drupal/Core/TypedData/Plugin/DataType/Float.php
rename to core/lib/Drupal/Core/TypedData/Plugin/DataType/FloatType.php
index 3980f0a..c5456d7 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Float.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/FloatType.php
@@ -2,7 +2,7 @@
 
 /**
  * @file
- * Contains \Drupal\Core\TypedData\Plugin\DataType\Float.
+ * Contains \Drupal\Core\TypedData\Plugin\DataType\FloatType.
  */
 
 namespace Drupal\Core\TypedData\Plugin\DataType;
@@ -21,7 +21,7 @@
  *   label = @Translation("Float")
  * )
  */
-class Float extends PrimitiveBase implements FloatInterface {
+class FloatType extends PrimitiveBase implements FloatInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Integer.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/IntegerType.php
similarity index 79%
rename from core/lib/Drupal/Core/TypedData/Plugin/DataType/Integer.php
rename to core/lib/Drupal/Core/TypedData/Plugin/DataType/IntegerType.php
index b5fe36a..5bbc3ed 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Integer.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/IntegerType.php
@@ -2,7 +2,7 @@
 
 /**
  * @file
- * Contains \Drupal\Core\TypedData\Plugin\DataType\Integer.
+ * Contains \Drupal\Core\TypedData\Plugin\DataType\IntegerType.
  */
 
 namespace Drupal\Core\TypedData\Plugin\DataType;
@@ -21,7 +21,7 @@
  *   label = @Translation("Integer")
  * )
  */
-class Integer extends PrimitiveBase implements IntegerInterface {
+class IntegerType extends PrimitiveBase implements IntegerInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/String.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/StringType.php
similarity index 79%
rename from core/lib/Drupal/Core/TypedData/Plugin/DataType/String.php
rename to core/lib/Drupal/Core/TypedData/Plugin/DataType/StringType.php
index dd0060f..6686e58 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/String.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/StringType.php
@@ -2,7 +2,7 @@
 
 /**
  * @file
- * Contains \Drupal\Core\TypedData\Plugin\DataType\String.
+ * Contains \Drupal\Core\TypedData\Plugin\DataType\StringType.
  */
 
 namespace Drupal\Core\TypedData\Plugin\DataType;
@@ -21,7 +21,7 @@
  *   label = @Translation("String")
  * )
  */
-class String extends PrimitiveBase implements StringInterface {
+class StringType extends PrimitiveBase implements StringInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/TimeSpan.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/TimeSpan.php
index 94362dd..cba697c 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/TimeSpan.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/TimeSpan.php
@@ -25,7 +25,7 @@
  *
  * @see \Drupal\Core\TypedData\Type\DurationIso8601
  */
-class TimeSpan extends Integer implements DurationInterface {
+class TimeSpan extends IntegerType implements DurationInterface {
 
   /**
    * {@inheritdoc}
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Timestamp.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/Timestamp.php
index 800344b..faab9fd 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Timestamp.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/Timestamp.php
@@ -18,7 +18,7 @@
  *   label = @Translation("String")
  * )
  */
-class Timestamp extends Integer implements DateTimeInterface {
+class Timestamp extends IntegerType implements DateTimeInterface {
 
   /**
    * The data value as a UNIX timestamp.
diff --git a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Uri.php b/core/lib/Drupal/Core/TypedData/Plugin/DataType/Uri.php
index e9a0891..b0ad52a 100644
--- a/core/lib/Drupal/Core/TypedData/Plugin/DataType/Uri.php
+++ b/core/lib/Drupal/Core/TypedData/Plugin/DataType/Uri.php
@@ -21,6 +21,6 @@
  *   label = @Translation("URI")
  * )
  */
-class Uri extends String implements UriInterface {
+class Uri extends StringType implements UriInterface {
 
 }
diff --git a/core/lib/Drupal/Core/TypedData/TypedDataManager.php b/core/lib/Drupal/Core/TypedData/TypedDataManager.php
index 7fe362e..bf75d6d 100644
--- a/core/lib/Drupal/Core/TypedData/TypedDataManager.php
+++ b/core/lib/Drupal/Core/TypedData/TypedDataManager.php
@@ -132,10 +132,10 @@ public function createInstance($data_type, array $configuration = array()) {
    *
    * @see \Drupal::typedDataManager()
    * @see \Drupal\Core\TypedData\TypedDataManager::getPropertyInstance()
-   * @see \Drupal\Core\TypedData\Plugin\DataType\Integer
-   * @see \Drupal\Core\TypedData\Plugin\DataType\Float
-   * @see \Drupal\Core\TypedData\Plugin\DataType\String
-   * @see \Drupal\Core\TypedData\Plugin\DataType\Boolean
+   * @see \Drupal\Core\TypedData\Plugin\DataType\IntegerType
+   * @see \Drupal\Core\TypedData\Plugin\DataType\FloatType
+   * @see \Drupal\Core\TypedData\Plugin\DataType\StringType
+   * @see \Drupal\Core\TypedData\Plugin\DataType\BooleanType
    * @see \Drupal\Core\TypedData\Plugin\DataType\Duration
    * @see \Drupal\Core\TypedData\Plugin\DataType\Date
    * @see \Drupal\Core\TypedData\Plugin\DataType\Uri
diff --git a/core/modules/config/src/Tests/ConfigSchemaTest.php b/core/modules/config/src/Tests/ConfigSchemaTest.php
index ca53a53..2ed49e2 100644
--- a/core/modules/config/src/Tests/ConfigSchemaTest.php
+++ b/core/modules/config/src/Tests/ConfigSchemaTest.php
@@ -248,7 +248,7 @@ function testSchemaMappingWithParents() {
     $expected = array(
       'type' => 'config_schema_test.someschema.with_parents.key_1',
       'label' => 'Test item nested one level',
-      'class' => '\Drupal\Core\TypedData\Plugin\DataType\String',
+      'class' => '\Drupal\Core\TypedData\Plugin\DataType\StringType',
       'definition_class' => '\Drupal\Core\TypedData\DataDefinition',
     );
     $this->assertEqual($definition, $expected);
@@ -259,7 +259,7 @@ function testSchemaMappingWithParents() {
     $expected = array(
       'type' => 'config_schema_test.someschema.with_parents.key_2',
       'label' => 'Test item nested two levels',
-      'class' => '\Drupal\Core\TypedData\Plugin\DataType\String',
+      'class' => '\Drupal\Core\TypedData\Plugin\DataType\StringType',
       'definition_class' => '\Drupal\Core\TypedData\DataDefinition',
     );
     $this->assertEqual($definition, $expected);
@@ -270,7 +270,7 @@ function testSchemaMappingWithParents() {
     $expected = array(
       'type' => 'config_schema_test.someschema.with_parents.key_3',
       'label' => 'Test item nested three levels',
-      'class' => '\Drupal\Core\TypedData\Plugin\DataType\String',
+      'class' => '\Drupal\Core\TypedData\Plugin\DataType\StringType',
       'definition_class' => '\Drupal\Core\TypedData\DataDefinition',
     );
     $this->assertEqual($definition, $expected);
diff --git a/core/modules/filter/src/Plugin/DataType/FilterFormat.php b/core/modules/filter/src/Plugin/DataType/FilterFormat.php
index 31ab7f7..9530e23 100644
--- a/core/modules/filter/src/Plugin/DataType/FilterFormat.php
+++ b/core/modules/filter/src/Plugin/DataType/FilterFormat.php
@@ -9,7 +9,7 @@
 
 use Drupal\Core\Session\AccountInterface;
 use Drupal\Core\TypedData\OptionsProviderInterface;
-use Drupal\Core\TypedData\Plugin\DataType\String;
+use Drupal\Core\TypedData\Plugin\DataType\StringType;
 
 /**
  * The filter format data type.
@@ -19,7 +19,7 @@
  *   label = @Translation("Filter format")
  * )
  */
-class FilterFormat extends String implements OptionsProviderInterface {
+class FilterFormat extends StringType implements OptionsProviderInterface {
 
   /**
    * {@inheritdoc}
