diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -2500,13 +2500,13 @@
     'PhabricatorSearchDeleteController' => 'applications/search/controller/PhabricatorSearchDeleteController.php',
     'PhabricatorSearchDocument' => 'applications/search/storage/document/PhabricatorSearchDocument.php',
     'PhabricatorSearchDocumentField' => 'applications/search/storage/document/PhabricatorSearchDocumentField.php',
+    'PhabricatorSearchDocumentFieldType' => 'applications/search/constants/PhabricatorSearchDocumentFieldType.php',
     'PhabricatorSearchDocumentIndexer' => 'applications/search/index/PhabricatorSearchDocumentIndexer.php',
     'PhabricatorSearchDocumentQuery' => 'applications/search/query/PhabricatorSearchDocumentQuery.php',
     'PhabricatorSearchDocumentRelationship' => 'applications/search/storage/document/PhabricatorSearchDocumentRelationship.php',
     'PhabricatorSearchDocumentTypeDatasource' => 'applications/search/typeahead/PhabricatorSearchDocumentTypeDatasource.php',
     'PhabricatorSearchEditController' => 'applications/search/controller/PhabricatorSearchEditController.php',
     'PhabricatorSearchEngine' => 'applications/search/engine/PhabricatorSearchEngine.php',
-    'PhabricatorSearchField' => 'applications/search/constants/PhabricatorSearchField.php',
     'PhabricatorSearchHovercardController' => 'applications/search/controller/PhabricatorSearchHovercardController.php',
     'PhabricatorSearchIndexer' => 'applications/search/index/PhabricatorSearchIndexer.php',
     'PhabricatorSearchManagementIndexWorkflow' => 'applications/search/management/PhabricatorSearchManagementIndexWorkflow.php',
@@ -5981,6 +5981,7 @@
     'PhabricatorSearchDeleteController' => 'PhabricatorSearchBaseController',
     'PhabricatorSearchDocument' => 'PhabricatorSearchDAO',
     'PhabricatorSearchDocumentField' => 'PhabricatorSearchDAO',
+    'PhabricatorSearchDocumentFieldType' => 'Phobject',
     'PhabricatorSearchDocumentIndexer' => 'Phobject',
     'PhabricatorSearchDocumentQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
     'PhabricatorSearchDocumentRelationship' => 'PhabricatorSearchDAO',
diff --git a/src/applications/calendar/search/PhabricatorCalendarEventSearchIndexer.php b/src/applications/calendar/search/PhabricatorCalendarEventSearchIndexer.php
--- a/src/applications/calendar/search/PhabricatorCalendarEventSearchIndexer.php
+++ b/src/applications/calendar/search/PhabricatorCalendarEventSearchIndexer.php
@@ -18,7 +18,7 @@
     $doc->setDocumentModified($event->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $event->getDescription());
 
     $doc->addRelationship(
diff --git a/src/applications/diviner/search/DivinerAtomSearchIndexer.php b/src/applications/diviner/search/DivinerAtomSearchIndexer.php
--- a/src/applications/diviner/search/DivinerAtomSearchIndexer.php
+++ b/src/applications/diviner/search/DivinerAtomSearchIndexer.php
@@ -16,7 +16,7 @@
       ->setDocumentModified($book->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $atom->getSummary());
 
     $doc->addRelationship(
diff --git a/src/applications/diviner/search/DivinerBookSearchIndexer.php b/src/applications/diviner/search/DivinerBookSearchIndexer.php
--- a/src/applications/diviner/search/DivinerBookSearchIndexer.php
+++ b/src/applications/diviner/search/DivinerBookSearchIndexer.php
@@ -15,7 +15,7 @@
       ->setDocumentModified($book->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $book->getPreface());
 
     return $doc;
diff --git a/src/applications/maniphest/search/ManiphestSearchIndexer.php b/src/applications/maniphest/search/ManiphestSearchIndexer.php
--- a/src/applications/maniphest/search/ManiphestSearchIndexer.php
+++ b/src/applications/maniphest/search/ManiphestSearchIndexer.php
@@ -17,7 +17,7 @@
     $doc->setDocumentModified($task->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $task->getDescription());
 
     $doc->addRelationship(
diff --git a/src/applications/passphrase/search/PassphraseSearchIndexer.php b/src/applications/passphrase/search/PassphraseSearchIndexer.php
--- a/src/applications/passphrase/search/PassphraseSearchIndexer.php
+++ b/src/applications/passphrase/search/PassphraseSearchIndexer.php
@@ -17,7 +17,7 @@
     $doc->setDocumentModified($credential->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $credential->getDescription());
 
     $doc->addRelationship(
diff --git a/src/applications/pholio/search/PholioSearchIndexer.php b/src/applications/pholio/search/PholioSearchIndexer.php
--- a/src/applications/pholio/search/PholioSearchIndexer.php
+++ b/src/applications/pholio/search/PholioSearchIndexer.php
@@ -15,7 +15,7 @@
       ->setDocumentModified($mock->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $mock->getDescription());
 
     $doc->addRelationship(
diff --git a/src/applications/phriction/search/PhrictionSearchIndexer.php b/src/applications/phriction/search/PhrictionSearchIndexer.php
--- a/src/applications/phriction/search/PhrictionSearchIndexer.php
+++ b/src/applications/phriction/search/PhrictionSearchIndexer.php
@@ -25,7 +25,7 @@
     $doc->setDocumentModified($content->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $content->getContent());
 
     $doc->addRelationship(
diff --git a/src/applications/ponder/search/PonderSearchIndexer.php b/src/applications/ponder/search/PonderSearchIndexer.php
--- a/src/applications/ponder/search/PonderSearchIndexer.php
+++ b/src/applications/ponder/search/PonderSearchIndexer.php
@@ -16,7 +16,7 @@
       ->setDocumentModified($question->getDateModified());
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $question->getContent());
 
     $doc->addRelationship(
@@ -32,7 +32,7 @@
     foreach ($answers as $answer) {
       if (strlen($answer->getContent())) {
         $doc->addField(
-          PhabricatorSearchField::FIELD_COMMENT,
+          PhabricatorSearchDocumentFieldType::FIELD_COMMENT,
           $answer->getContent());
       }
     }
diff --git a/src/applications/project/customfield/PhabricatorProjectDescriptionField.php b/src/applications/project/customfield/PhabricatorProjectDescriptionField.php
--- a/src/applications/project/customfield/PhabricatorProjectDescriptionField.php
+++ b/src/applications/project/customfield/PhabricatorProjectDescriptionField.php
@@ -11,7 +11,7 @@
           'name'        => pht('Description'),
           'type'        => 'remarkup',
           'description' => pht('Short project description.'),
-          'fulltext'    => PhabricatorSearchField::FIELD_BODY,
+          'fulltext'    => PhabricatorSearchDocumentFieldType::FIELD_BODY,
         ),
       ));
   }
diff --git a/src/applications/repository/search/PhabricatorRepositoryCommitSearchIndexer.php b/src/applications/repository/search/PhabricatorRepositoryCommitSearchIndexer.php
--- a/src/applications/repository/search/PhabricatorRepositoryCommitSearchIndexer.php
+++ b/src/applications/repository/search/PhabricatorRepositoryCommitSearchIndexer.php
@@ -36,7 +36,7 @@
     $doc->setDocumentTitle($title);
 
     $doc->addField(
-      PhabricatorSearchField::FIELD_BODY,
+      PhabricatorSearchDocumentFieldType::FIELD_BODY,
       $commit_message);
 
     if ($author_phid) {
diff --git a/src/applications/search/constants/PhabricatorSearchField.php b/src/applications/search/constants/PhabricatorSearchDocumentFieldType.php
rename from src/applications/search/constants/PhabricatorSearchField.php
rename to src/applications/search/constants/PhabricatorSearchDocumentFieldType.php
--- a/src/applications/search/constants/PhabricatorSearchField.php
+++ b/src/applications/search/constants/PhabricatorSearchDocumentFieldType.php
@@ -1,6 +1,6 @@
 <?php
 
-final class PhabricatorSearchField {
+final class PhabricatorSearchDocumentFieldType extends Phobject {
 
   const FIELD_TITLE         = 'titl';
   const FIELD_BODY          = 'body';
diff --git a/src/applications/search/index/PhabricatorSearchAbstractDocument.php b/src/applications/search/index/PhabricatorSearchAbstractDocument.php
--- a/src/applications/search/index/PhabricatorSearchAbstractDocument.php
+++ b/src/applications/search/index/PhabricatorSearchAbstractDocument.php
@@ -22,7 +22,7 @@
 
   public function setDocumentTitle($title) {
     $this->documentTitle = $title;
-    $this->addField(PhabricatorSearchField::FIELD_TITLE, $title);
+    $this->addField(PhabricatorSearchDocumentFieldType::FIELD_TITLE, $title);
     return $this;
   }
 
diff --git a/src/applications/search/index/PhabricatorSearchDocumentIndexer.php b/src/applications/search/index/PhabricatorSearchDocumentIndexer.php
--- a/src/applications/search/index/PhabricatorSearchDocumentIndexer.php
+++ b/src/applications/search/index/PhabricatorSearchDocumentIndexer.php
@@ -154,7 +154,7 @@
 
       $comment = $xaction->getComment();
       $doc->addField(
-        PhabricatorSearchField::FIELD_COMMENT,
+        PhabricatorSearchDocumentFieldType::FIELD_COMMENT,
         $comment->getContent());
     }
   }