Provided by: liblucy-perl_0.3.3-8_amd64 bug

NAME

       Lucy::Docs::Tutorial::FieldType - Specify per-field properties and behaviors.

DESCRIPTION

       The Schema we used in the last chapter specifies three fields:

           my $type = Lucy::Plan::FullTextType->new(
               analyzer => $polyanalyzer,
           );
           $schema->spec_field( name => 'title',   type => $type );
           $schema->spec_field( name => 'content', type => $type );
           $schema->spec_field( name => 'url',     type => $type );

       Since they are all defined as "full text" fields, they are all searchable -- including the
       "url" field, a dubious choice.  Some URLs contain meaningful information, but these don't,
       really:

           http://example.com/us_constitution/amend1.txt

       We may as well not bother indexing the URL content.  To achieve that we need to assign the
       "url" field to a different FieldType.

   StringType
       Instead of FullTextType, we'll use a StringType, which doesn't use an Analyzer to break up
       text into individual fields.  Furthermore, we'll mark this StringType as unindexed, so
       that its content won't be searchable at all.

           my $url_type = Lucy::Plan::StringType->new( indexed => 0 );
           $schema->spec_field( name => 'url', type => $url_type );

       To observe the change in behavior, try searching for "us_constitution" both before and
       after changing the Schema and re-indexing.

   Toggling 'stored'
       For a taste of other FieldType possibilities, try turning off "stored" for one or more
       fields.

           my $content_type = Lucy::Plan::FullTextType->new(
               analyzer => $polyanalyzer,
               stored   => 0,
           );

       Turning off "stored" for either "title" or "url" mangles our results page, but since we're
       not displaying "content", turning it off for "content" has no effect -- except on index
       size.

   Analyzers up next
       Analyzers play a crucial role in the behavior of FullTextType fields.  In our next
       tutorial chapter, Lucy::Docs::Tutorial::Analysis, we'll see how changing up the Analyzer
       changes search results.