diff --git a/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php b/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php
index ee1c193406a5a7b49dcee691933deaa014ea5b2b..32067a44de4f0b8fb25146f62d224addf6f99758 100644
--- a/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php
+++ b/core/lib/Drupal/Core/Entity/EntityViewBuilderInterface.php
@@ -96,8 +96,6 @@ public function resetCache(array $entities = NULL);
    * isolated field.
    * - Do not use inside node (or any other entity) templates; use
    *   render($content[FIELD_NAME]) instead.
-   * - Do not use to display all fields in an entity; use
-   *   field_attach_prepare_view() and field_attach_view() instead.
    * - The FieldItemInterface::view() method can be used to output a single
    *   formatted field value, without label or wrapping field markup.
    *
diff --git a/core/modules/field/field.api.php b/core/modules/field/field.api.php
index d6bc5784ba2c84cc7a551381cd6b7e3c7ffc739f..c1c097e40063dc929227a144417384be7dcd2546 100644
--- a/core/modules/field/field.api.php
+++ b/core/modules/field/field.api.php
@@ -217,7 +217,7 @@ function hook_field_info_max_weight($entity_type, $bundle, $context, $context_mo
 }
 
 /**
- * @addtogroup field_crud
+ * @addtogroup field_purge
  * @{
  */
 
@@ -294,7 +294,7 @@ function hook_field_purge_instance($instance) {
 }
 
 /**
- * @} End of "addtogroup field_crud".
+ * @} End of "addtogroup field_purge".
  */
 
 /**
diff --git a/core/modules/field/field.module b/core/modules/field/field.module
index 4e0157d7f88202312fef47d91704ef36d6eba72b..f423ff9e98fe7bf84b4e9fe0cdd0c33e70eb00e7 100644
--- a/core/modules/field/field.module
+++ b/core/modules/field/field.module
@@ -52,16 +52,6 @@
  *   types like Text and Node Reference along with the associated form elements
  *   and display formatters.
  *
- * - @link field_crud Field CRUD API @endlink: Create, updates, and deletes
- *   fields, bundles (a.k.a. "content types"), and instances. Modules use this
- *   API, often in hook_install(), to create custom data structures.
- *
- * - @link field_attach Field Attach API @endlink: Connects entity types to the
- *   Field API. Field Attach API functions load, store, generate Form API
- *   structures, display, and perform a variety of other functions for field
- *   data connected to individual entities. Fieldable entity types like node and
- *   user use this API to make themselves fieldable.
- *
  * - @link field_purge Field API bulk data deletion @endlink: Cleans up after
  *   bulk deletion operations such as deletion of field or field_instance.
  *
diff --git a/core/modules/field/src/Entity/FieldConfig.php b/core/modules/field/src/Entity/FieldConfig.php
index f25af7bacc25adfb74a3c1d97efbbecf67097ca1..7bef0553ea8e243b1d813b6f8e2434eb71ef5add 100644
--- a/core/modules/field/src/Entity/FieldConfig.php
+++ b/core/modules/field/src/Entity/FieldConfig.php
@@ -198,8 +198,6 @@ class FieldConfig extends ConfigEntityBase implements FieldConfigInterface {
    * parameter as in this constructor.
    *
    * @see entity_create()
-   *
-   * @ingroup field_crud
    */
   public function __construct(array $values, $entity_type = 'field_config') {
     // Check required properties.
diff --git a/core/modules/field/src/Entity/FieldInstanceConfig.php b/core/modules/field/src/Entity/FieldInstanceConfig.php
index bf8e354c7c5081712657867a908cb81e2c5d6e85..40fbbd229369e63da75692ef5ef2ed7601d77d04 100644
--- a/core/modules/field/src/Entity/FieldInstanceConfig.php
+++ b/core/modules/field/src/Entity/FieldInstanceConfig.php
@@ -228,8 +228,6 @@ class FieldInstanceConfig extends ConfigEntityBase implements FieldInstanceConfi
    *   property documentation for details.
    *
    * @see entity_create()
-   *
-   * @ingroup field_crud
    */
   public function __construct(array $values, $entity_type = 'field_instance_config') {
     // Allow either an injected FieldConfig object, or a field_name and
diff --git a/core/modules/field/src/Tests/FieldAttachOtherTest.php b/core/modules/field/src/Tests/FieldAttachOtherTest.php
index 297ad3b48f46a233f95608143564305d07746b48..73a3b1e0324053b059d7aa71b3a6dc59a1d9b5ae 100644
--- a/core/modules/field/src/Tests/FieldAttachOtherTest.php
+++ b/core/modules/field/src/Tests/FieldAttachOtherTest.php
@@ -10,7 +10,9 @@
 use Drupal\Core\Language\LanguageInterface;
 
 /**
- * Unit test class for non-storage related field_attach_* functions.
+ * Unit test class for non-storage related entity field functions.
+ *
+ * @todo move this to the Entity module
  */
 class FieldAttachOtherTest extends FieldUnitTestBase {
 
@@ -31,7 +33,7 @@ class FieldAttachOtherTest extends FieldUnitTestBase {
   public static function getInfo() {
     return array(
       'name' => 'Field attach tests (other)',
-      'description' => 'Test other Field Attach API functions.',
+      'description' => 'Test other Field API functions.',
       'group' => 'Field API',
     );
   }
@@ -373,7 +375,7 @@ function testEntityFormDisplayExtractFormValues() {
     }
     $this->assertIdentical($entity->{$this->field_name_2}->getValue(), $expected_values_2, 'Submit filters empty values');
 
-    // Call field_attach_extract_form_values() for a single field (the second field).
+    // Call EntityFormDisplayInterface::extractFormValues() for a single field (the second field).
     foreach ($display->getComponents() as $name => $options) {
       if ($name != $this->field_name_2) {
         $display->removeComponent($name);
diff --git a/core/modules/field/src/Tests/FieldAttachStorageTest.php b/core/modules/field/src/Tests/FieldAttachStorageTest.php
index 129a58f3111736c8cb915af1c68a9f5e9dea1262..492496c1eb78dcd00eb01039ccfbedae6b28563d 100644
--- a/core/modules/field/src/Tests/FieldAttachStorageTest.php
+++ b/core/modules/field/src/Tests/FieldAttachStorageTest.php
@@ -10,6 +10,8 @@
 
 /**
  * Unit test class for storage-related field behavior.
+ *
+ * @todo move this to the Entity module
  */
 class FieldAttachStorageTest extends FieldUnitTestBase {
 
diff --git a/core/modules/node/node.api.php b/core/modules/node/node.api.php
index 8293618b78d1dbd6392be625e633ff29ea1d64f4..35ac5332874fcb75871cbccdd0daf7037d868f3f 100644
--- a/core/modules/node/node.api.php
+++ b/core/modules/node/node.api.php
@@ -747,8 +747,7 @@ function hook_node_validate(\Drupal\node\NodeInterface $node, $form, &$form_stat
  * object, but before the node is saved or previewed. It is a chance for modules
  * to adjust the node's properties from what they are simply after a copy from
  * $form_state['values']. This hook is intended for adjusting non-field-related
- * properties. See hook_field_attach_extract_form_values() for customizing
- * field-related properties.
+ * properties.
  *
  * @param \Drupal\node\NodeInterface $node
  *   The node entity being updated in response to a form submission.