class Google::Apis::CloudsearchV1::PropertyDefinition
The definition of a property within an object.
Attributes
Options for boolean properties. Corresponds to the JSON property `booleanPropertyOptions` @return [Google::Apis::CloudsearchV1::BooleanPropertyOptions]
Options for date properties. Corresponds to the JSON property `datePropertyOptions` @return [Google::Apis::CloudsearchV1::DatePropertyOptions]
The display options for a property. Corresponds to the JSON property `displayOptions` @return [Google::Apis::CloudsearchV1::PropertyDisplayOptions]
Options for double properties. Corresponds to the JSON property `doublePropertyOptions` @return [Google::Apis::CloudsearchV1::DoublePropertyOptions]
Options for enum properties, which allow you to define a restricted set of strings to match user queries, set rankings for those string values, and define an operator name to be paired with those strings so that users can narrow results to only items with a specific value. For example, for items in a request tracking system with priority information, you could define p0 as an allowable enum value and tie this enum to the operator name priority so that search users could add priority:p0 to their query to restrict the set of results to only those items indexed with the value p0. Corresponds to the JSON property `enumPropertyOptions` @return [Google::Apis::CloudsearchV1::EnumPropertyOptions]
Options for html properties. Corresponds to the JSON property `htmlPropertyOptions` @return [Google::Apis::CloudsearchV1::HtmlPropertyOptions]
Options for integer properties. Corresponds to the JSON property `integerPropertyOptions` @return [Google::Apis::CloudsearchV1::IntegerPropertyOptions]
Indicates that the property can be used for generating facets. Cannot be true for properties whose type is object. IsReturnable must be true to set this option. Only supported for Boolean, Enum, and Text properties. Corresponds to the JSON property `isFacetable` @return [Boolean]
Indicates that the property can be used for generating facets. Cannot be true for properties whose type is object. IsReturnable must be true to set this option. Only supported for Boolean, Enum, and Text properties. Corresponds to the JSON property `isFacetable` @return [Boolean]
Indicates that multiple values are allowed for the property. For example, a document only has one description but can have multiple comments. Cannot be true for properties whose type is a boolean. If set to false, properties that contain more than one value cause the indexing request for that item to be rejected. Corresponds to the JSON property `isRepeatable` @return [Boolean]
Indicates that multiple values are allowed for the property. For example, a document only has one description but can have multiple comments. Cannot be true for properties whose type is a boolean. If set to false, properties that contain more than one value cause the indexing request for that item to be rejected. Corresponds to the JSON property `isRepeatable` @return [Boolean]
Indicates that the property identifies data that should be returned in search results via the Query API. If set to true, indicates that Query API users can use matching property fields in results. However, storing fields requires more space allocation and uses more bandwidth for search queries, which impacts performance over large datasets. Set to true here only if the field is needed for search results. Cannot be true for properties whose type is an object. Corresponds to the JSON property `isReturnable` @return [Boolean]
Indicates that the property identifies data that should be returned in search results via the Query API. If set to true, indicates that Query API users can use matching property fields in results. However, storing fields requires more space allocation and uses more bandwidth for search queries, which impacts performance over large datasets. Set to true here only if the field is needed for search results. Cannot be true for properties whose type is an object. Corresponds to the JSON property `isReturnable` @return [Boolean]
Indicates that the property can be used for sorting. Cannot be true for properties that are repeatable. Cannot be true for properties whose type is object or user identifier. IsReturnable must be true to set this option. Only supported for Boolean, Date
, Double, Integer, and Timestamp properties. Corresponds to the JSON property `isSortable` @return [Boolean]
Indicates that the property can be used for sorting. Cannot be true for properties that are repeatable. Cannot be true for properties whose type is object or user identifier. IsReturnable must be true to set this option. Only supported for Boolean, Date
, Double, Integer, and Timestamp properties. Corresponds to the JSON property `isSortable` @return [Boolean]
Indicates that the property can be used for generating query suggestions. Corresponds to the JSON property `isSuggestable` @return [Boolean]
Indicates that the property can be used for generating query suggestions. Corresponds to the JSON property `isSuggestable` @return [Boolean]
Indicates that users can perform wildcard search for this property. Only supported for Text properties. IsReturnable must be true to set this option. In a given datasource maximum of 5 properties can be marked as is_wildcard_searchable. Corresponds to the JSON property `isWildcardSearchable` @return [Boolean]
Indicates that users can perform wildcard search for this property. Only supported for Text properties. IsReturnable must be true to set this option. In a given datasource maximum of 5 properties can be marked as is_wildcard_searchable. Corresponds to the JSON property `isWildcardSearchable` @return [Boolean]
The name of the property. Item
indexing requests sent to the Indexing API should set the property name equal to this value. For example, if name is * subject_line*, then indexing requests for document items with subject fields should set the name for that field equal to subject_line. Use the name as the identifier for the object property. Once registered as a property for an object, you cannot re-use this name for another property within that object. The name must start with a letter and can only contain letters (A-Z, a-z) or numbers (0-9). The maximum length is 256 characters. Corresponds to the JSON property `name` @return [String]
Options for object properties. Corresponds to the JSON property `objectPropertyOptions` @return [Google::Apis::CloudsearchV1::ObjectPropertyOptions]
Options for text properties. Corresponds to the JSON property `textPropertyOptions` @return [Google::Apis::CloudsearchV1::TextPropertyOptions]
Options for timestamp properties. Corresponds to the JSON property `timestampPropertyOptions` @return [Google::Apis::CloudsearchV1::TimestampPropertyOptions]
Public Class Methods
# File lib/google/apis/cloudsearch_v1/classes.rb, line 3101 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/cloudsearch_v1/classes.rb, line 3106 def update!(**args) @boolean_property_options = args[:boolean_property_options] if args.key?(:boolean_property_options) @date_property_options = args[:date_property_options] if args.key?(:date_property_options) @display_options = args[:display_options] if args.key?(:display_options) @double_property_options = args[:double_property_options] if args.key?(:double_property_options) @enum_property_options = args[:enum_property_options] if args.key?(:enum_property_options) @html_property_options = args[:html_property_options] if args.key?(:html_property_options) @integer_property_options = args[:integer_property_options] if args.key?(:integer_property_options) @is_facetable = args[:is_facetable] if args.key?(:is_facetable) @is_repeatable = args[:is_repeatable] if args.key?(:is_repeatable) @is_returnable = args[:is_returnable] if args.key?(:is_returnable) @is_sortable = args[:is_sortable] if args.key?(:is_sortable) @is_suggestable = args[:is_suggestable] if args.key?(:is_suggestable) @is_wildcard_searchable = args[:is_wildcard_searchable] if args.key?(:is_wildcard_searchable) @name = args[:name] if args.key?(:name) @object_property_options = args[:object_property_options] if args.key?(:object_property_options) @text_property_options = args[:text_property_options] if args.key?(:text_property_options) @timestamp_property_options = args[:timestamp_property_options] if args.key?(:timestamp_property_options) end