727 lines
		
	
	
		
			27 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			727 lines
		
	
	
		
			27 KiB
		
	
	
	
		
			Ruby
		
	
	
	
# Copyright 2015 Google Inc.
 | 
						|
#
 | 
						|
# Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
# you may not use this file except in compliance with the License.
 | 
						|
# You may obtain a copy of the License at
 | 
						|
#
 | 
						|
#      http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
#
 | 
						|
# Unless required by applicable law or agreed to in writing, software
 | 
						|
# distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
# See the License for the specific language governing permissions and
 | 
						|
# limitations under the License.
 | 
						|
 | 
						|
require 'date'
 | 
						|
require 'google/apis/core/base_service'
 | 
						|
require 'google/apis/core/json_representation'
 | 
						|
require 'google/apis/core/hashable'
 | 
						|
require 'google/apis/errors'
 | 
						|
 | 
						|
module Google
 | 
						|
  module Apis
 | 
						|
    module LanguageV1beta1
 | 
						|
      
 | 
						|
      # The entity analysis request message.
 | 
						|
      class AnalyzeEntitiesRequest
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # ################################################################ #
 | 
						|
        # Represents the input to API methods.
 | 
						|
        # Corresponds to the JSON property `document`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Document]
 | 
						|
        attr_accessor :document
 | 
						|
      
 | 
						|
        # The encoding type used by the API to calculate offsets.
 | 
						|
        # Corresponds to the JSON property `encodingType`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :encoding_type
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @document = args[:document] if args.key?(:document)
 | 
						|
          @encoding_type = args[:encoding_type] if args.key?(:encoding_type)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The entity analysis response message.
 | 
						|
      class AnalyzeEntitiesResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The recognized entities in the input document.
 | 
						|
        # Corresponds to the JSON property `entities`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Entity>]
 | 
						|
        attr_accessor :entities
 | 
						|
      
 | 
						|
        # The language of the text, which will be the same as the language specified
 | 
						|
        # in the request or, if not specified, the automatically-detected language.
 | 
						|
        # See Document.language field for more details.
 | 
						|
        # Corresponds to the JSON property `language`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :language
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @entities = args[:entities] if args.key?(:entities)
 | 
						|
          @language = args[:language] if args.key?(:language)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The sentiment analysis request message.
 | 
						|
      class AnalyzeSentimentRequest
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # ################################################################ #
 | 
						|
        # Represents the input to API methods.
 | 
						|
        # Corresponds to the JSON property `document`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Document]
 | 
						|
        attr_accessor :document
 | 
						|
      
 | 
						|
        # The encoding type used by the API to calculate sentence offsets for the
 | 
						|
        # sentence sentiment.
 | 
						|
        # Corresponds to the JSON property `encodingType`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :encoding_type
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @document = args[:document] if args.key?(:document)
 | 
						|
          @encoding_type = args[:encoding_type] if args.key?(:encoding_type)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The sentiment analysis response message.
 | 
						|
      class AnalyzeSentimentResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Represents the feeling associated with the entire text or entities in
 | 
						|
        # the text.
 | 
						|
        # Corresponds to the JSON property `documentSentiment`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Sentiment]
 | 
						|
        attr_accessor :document_sentiment
 | 
						|
      
 | 
						|
        # The language of the text, which will be the same as the language specified
 | 
						|
        # in the request or, if not specified, the automatically-detected language.
 | 
						|
        # See Document.language field for more details.
 | 
						|
        # Corresponds to the JSON property `language`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :language
 | 
						|
      
 | 
						|
        # The sentiment for all the sentences in the document.
 | 
						|
        # Corresponds to the JSON property `sentences`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Sentence>]
 | 
						|
        attr_accessor :sentences
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment)
 | 
						|
          @language = args[:language] if args.key?(:language)
 | 
						|
          @sentences = args[:sentences] if args.key?(:sentences)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The syntax analysis request message.
 | 
						|
      class AnalyzeSyntaxRequest
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # ################################################################ #
 | 
						|
        # Represents the input to API methods.
 | 
						|
        # Corresponds to the JSON property `document`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Document]
 | 
						|
        attr_accessor :document
 | 
						|
      
 | 
						|
        # The encoding type used by the API to calculate offsets.
 | 
						|
        # Corresponds to the JSON property `encodingType`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :encoding_type
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @document = args[:document] if args.key?(:document)
 | 
						|
          @encoding_type = args[:encoding_type] if args.key?(:encoding_type)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The syntax analysis response message.
 | 
						|
      class AnalyzeSyntaxResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The language of the text, which will be the same as the language specified
 | 
						|
        # in the request or, if not specified, the automatically-detected language.
 | 
						|
        # See Document.language field for more details.
 | 
						|
        # Corresponds to the JSON property `language`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :language
 | 
						|
      
 | 
						|
        # Sentences in the input document.
 | 
						|
        # Corresponds to the JSON property `sentences`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Sentence>]
 | 
						|
        attr_accessor :sentences
 | 
						|
      
 | 
						|
        # Tokens, along with their syntactic information, in the input document.
 | 
						|
        # Corresponds to the JSON property `tokens`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Token>]
 | 
						|
        attr_accessor :tokens
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @language = args[:language] if args.key?(:language)
 | 
						|
          @sentences = args[:sentences] if args.key?(:sentences)
 | 
						|
          @tokens = args[:tokens] if args.key?(:tokens)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The request message for the text annotation API, which can perform multiple
 | 
						|
      # analysis types (sentiment, entities, and syntax) in one call.
 | 
						|
      class AnnotateTextRequest
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # ################################################################ #
 | 
						|
        # Represents the input to API methods.
 | 
						|
        # Corresponds to the JSON property `document`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Document]
 | 
						|
        attr_accessor :document
 | 
						|
      
 | 
						|
        # The encoding type used by the API to calculate offsets.
 | 
						|
        # Corresponds to the JSON property `encodingType`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :encoding_type
 | 
						|
      
 | 
						|
        # All available features for sentiment, syntax, and semantic analysis.
 | 
						|
        # Setting each one to true will enable that specific analysis for the input.
 | 
						|
        # Corresponds to the JSON property `features`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Features]
 | 
						|
        attr_accessor :features
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @document = args[:document] if args.key?(:document)
 | 
						|
          @encoding_type = args[:encoding_type] if args.key?(:encoding_type)
 | 
						|
          @features = args[:features] if args.key?(:features)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The text annotations response message.
 | 
						|
      class AnnotateTextResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Represents the feeling associated with the entire text or entities in
 | 
						|
        # the text.
 | 
						|
        # Corresponds to the JSON property `documentSentiment`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Sentiment]
 | 
						|
        attr_accessor :document_sentiment
 | 
						|
      
 | 
						|
        # Entities, along with their semantic information, in the input document.
 | 
						|
        # Populated if the user enables
 | 
						|
        # AnnotateTextRequest.Features.extract_entities.
 | 
						|
        # Corresponds to the JSON property `entities`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Entity>]
 | 
						|
        attr_accessor :entities
 | 
						|
      
 | 
						|
        # The language of the text, which will be the same as the language specified
 | 
						|
        # in the request or, if not specified, the automatically-detected language.
 | 
						|
        # See Document.language field for more details.
 | 
						|
        # Corresponds to the JSON property `language`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :language
 | 
						|
      
 | 
						|
        # Sentences in the input document. Populated if the user enables
 | 
						|
        # AnnotateTextRequest.Features.extract_syntax.
 | 
						|
        # Corresponds to the JSON property `sentences`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Sentence>]
 | 
						|
        attr_accessor :sentences
 | 
						|
      
 | 
						|
        # Tokens, along with their syntactic information, in the input document.
 | 
						|
        # Populated if the user enables
 | 
						|
        # AnnotateTextRequest.Features.extract_syntax.
 | 
						|
        # Corresponds to the JSON property `tokens`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::Token>]
 | 
						|
        attr_accessor :tokens
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment)
 | 
						|
          @entities = args[:entities] if args.key?(:entities)
 | 
						|
          @language = args[:language] if args.key?(:language)
 | 
						|
          @sentences = args[:sentences] if args.key?(:sentences)
 | 
						|
          @tokens = args[:tokens] if args.key?(:tokens)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents dependency parse tree information for a token.
 | 
						|
      class DependencyEdge
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Represents the head of this token in the dependency tree.
 | 
						|
        # This is the index of the token which has an arc going to this token.
 | 
						|
        # The index is the position of the token in the array of tokens returned
 | 
						|
        # by the API method. If this token is a root token, then the
 | 
						|
        # `head_token_index` is its own index.
 | 
						|
        # Corresponds to the JSON property `headTokenIndex`
 | 
						|
        # @return [Fixnum]
 | 
						|
        attr_accessor :head_token_index
 | 
						|
      
 | 
						|
        # The parse label for the token.
 | 
						|
        # Corresponds to the JSON property `label`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :label
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @head_token_index = args[:head_token_index] if args.key?(:head_token_index)
 | 
						|
          @label = args[:label] if args.key?(:label)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # ################################################################ #
 | 
						|
      # Represents the input to API methods.
 | 
						|
      class Document
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The content of the input in string format.
 | 
						|
        # Cloud audit logging exempt since it is based on user data.
 | 
						|
        # Corresponds to the JSON property `content`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :content
 | 
						|
      
 | 
						|
        # The Google Cloud Storage URI where the file content is located.
 | 
						|
        # This URI must be of the form: gs://bucket_name/object_name. For more
 | 
						|
        # details, see https://cloud.google.com/storage/docs/reference-uris.
 | 
						|
        # NOTE: Cloud Storage object versioning is not supported.
 | 
						|
        # Corresponds to the JSON property `gcsContentUri`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :gcs_content_uri
 | 
						|
      
 | 
						|
        # The language of the document (if not specified, the language is
 | 
						|
        # automatically detected). Both ISO and BCP-47 language codes are
 | 
						|
        # accepted.<br>
 | 
						|
        # [Language Support](/natural-language/docs/languages)
 | 
						|
        # lists currently supported languages for each API method.
 | 
						|
        # If the language (either specified by the caller or automatically detected)
 | 
						|
        # is not supported by the called API method, an `INVALID_ARGUMENT` error
 | 
						|
        # is returned.
 | 
						|
        # Corresponds to the JSON property `language`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :language
 | 
						|
      
 | 
						|
        # Required. If the type is not set or is `TYPE_UNSPECIFIED`,
 | 
						|
        # returns an `INVALID_ARGUMENT` error.
 | 
						|
        # Corresponds to the JSON property `type`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :type
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @content = args[:content] if args.key?(:content)
 | 
						|
          @gcs_content_uri = args[:gcs_content_uri] if args.key?(:gcs_content_uri)
 | 
						|
          @language = args[:language] if args.key?(:language)
 | 
						|
          @type = args[:type] if args.key?(:type)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents a phrase in the text that is a known entity, such as
 | 
						|
      # a person, an organization, or location. The API associates information, such
 | 
						|
      # as salience and mentions, with entities.
 | 
						|
      class Entity
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The mentions of this entity in the input document. The API currently
 | 
						|
        # supports proper noun mentions.
 | 
						|
        # Corresponds to the JSON property `mentions`
 | 
						|
        # @return [Array<Google::Apis::LanguageV1beta1::EntityMention>]
 | 
						|
        attr_accessor :mentions
 | 
						|
      
 | 
						|
        # Metadata associated with the entity.
 | 
						|
        # Currently, Wikipedia URLs and Knowledge Graph MIDs are provided, if
 | 
						|
        # available. The associated keys are "wikipedia_url" and "mid", respectively.
 | 
						|
        # Corresponds to the JSON property `metadata`
 | 
						|
        # @return [Hash<String,String>]
 | 
						|
        attr_accessor :metadata
 | 
						|
      
 | 
						|
        # The representative name for the entity.
 | 
						|
        # Corresponds to the JSON property `name`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :name
 | 
						|
      
 | 
						|
        # The salience score associated with the entity in the [0, 1.0] range.
 | 
						|
        # The salience score for an entity provides information about the
 | 
						|
        # importance or centrality of that entity to the entire document text.
 | 
						|
        # Scores closer to 0 are less salient, while scores closer to 1.0 are highly
 | 
						|
        # salient.
 | 
						|
        # Corresponds to the JSON property `salience`
 | 
						|
        # @return [Float]
 | 
						|
        attr_accessor :salience
 | 
						|
      
 | 
						|
        # The entity type.
 | 
						|
        # Corresponds to the JSON property `type`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :type
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @mentions = args[:mentions] if args.key?(:mentions)
 | 
						|
          @metadata = args[:metadata] if args.key?(:metadata)
 | 
						|
          @name = args[:name] if args.key?(:name)
 | 
						|
          @salience = args[:salience] if args.key?(:salience)
 | 
						|
          @type = args[:type] if args.key?(:type)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents a mention for an entity in the text. Currently, proper noun
 | 
						|
      # mentions are supported.
 | 
						|
      class EntityMention
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Represents an output piece of text.
 | 
						|
        # Corresponds to the JSON property `text`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::TextSpan]
 | 
						|
        attr_accessor :text
 | 
						|
      
 | 
						|
        # The type of the entity mention.
 | 
						|
        # Corresponds to the JSON property `type`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :type
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @text = args[:text] if args.key?(:text)
 | 
						|
          @type = args[:type] if args.key?(:type)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # All available features for sentiment, syntax, and semantic analysis.
 | 
						|
      # Setting each one to true will enable that specific analysis for the input.
 | 
						|
      class Features
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Extract document-level sentiment.
 | 
						|
        # Corresponds to the JSON property `extractDocumentSentiment`
 | 
						|
        # @return [Boolean]
 | 
						|
        attr_accessor :extract_document_sentiment
 | 
						|
        alias_method :extract_document_sentiment?, :extract_document_sentiment
 | 
						|
      
 | 
						|
        # Extract entities.
 | 
						|
        # Corresponds to the JSON property `extractEntities`
 | 
						|
        # @return [Boolean]
 | 
						|
        attr_accessor :extract_entities
 | 
						|
        alias_method :extract_entities?, :extract_entities
 | 
						|
      
 | 
						|
        # Extract syntax information.
 | 
						|
        # Corresponds to the JSON property `extractSyntax`
 | 
						|
        # @return [Boolean]
 | 
						|
        attr_accessor :extract_syntax
 | 
						|
        alias_method :extract_syntax?, :extract_syntax
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @extract_document_sentiment = args[:extract_document_sentiment] if args.key?(:extract_document_sentiment)
 | 
						|
          @extract_entities = args[:extract_entities] if args.key?(:extract_entities)
 | 
						|
          @extract_syntax = args[:extract_syntax] if args.key?(:extract_syntax)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents part of speech information for a token.
 | 
						|
      class PartOfSpeech
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The grammatical aspect.
 | 
						|
        # Corresponds to the JSON property `aspect`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :aspect
 | 
						|
      
 | 
						|
        # The grammatical case.
 | 
						|
        # Corresponds to the JSON property `case`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :case
 | 
						|
      
 | 
						|
        # The grammatical form.
 | 
						|
        # Corresponds to the JSON property `form`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :form
 | 
						|
      
 | 
						|
        # The grammatical gender.
 | 
						|
        # Corresponds to the JSON property `gender`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :gender
 | 
						|
      
 | 
						|
        # The grammatical mood.
 | 
						|
        # Corresponds to the JSON property `mood`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :mood
 | 
						|
      
 | 
						|
        # The grammatical number.
 | 
						|
        # Corresponds to the JSON property `number`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :number
 | 
						|
      
 | 
						|
        # The grammatical person.
 | 
						|
        # Corresponds to the JSON property `person`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :person
 | 
						|
      
 | 
						|
        # The grammatical properness.
 | 
						|
        # Corresponds to the JSON property `proper`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :proper
 | 
						|
      
 | 
						|
        # The grammatical reciprocity.
 | 
						|
        # Corresponds to the JSON property `reciprocity`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :reciprocity
 | 
						|
      
 | 
						|
        # The part of speech tag.
 | 
						|
        # Corresponds to the JSON property `tag`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :tag
 | 
						|
      
 | 
						|
        # The grammatical tense.
 | 
						|
        # Corresponds to the JSON property `tense`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :tense
 | 
						|
      
 | 
						|
        # The grammatical voice.
 | 
						|
        # Corresponds to the JSON property `voice`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :voice
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @aspect = args[:aspect] if args.key?(:aspect)
 | 
						|
          @case = args[:case] if args.key?(:case)
 | 
						|
          @form = args[:form] if args.key?(:form)
 | 
						|
          @gender = args[:gender] if args.key?(:gender)
 | 
						|
          @mood = args[:mood] if args.key?(:mood)
 | 
						|
          @number = args[:number] if args.key?(:number)
 | 
						|
          @person = args[:person] if args.key?(:person)
 | 
						|
          @proper = args[:proper] if args.key?(:proper)
 | 
						|
          @reciprocity = args[:reciprocity] if args.key?(:reciprocity)
 | 
						|
          @tag = args[:tag] if args.key?(:tag)
 | 
						|
          @tense = args[:tense] if args.key?(:tense)
 | 
						|
          @voice = args[:voice] if args.key?(:voice)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents a sentence in the input document.
 | 
						|
      class Sentence
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Represents the feeling associated with the entire text or entities in
 | 
						|
        # the text.
 | 
						|
        # Corresponds to the JSON property `sentiment`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::Sentiment]
 | 
						|
        attr_accessor :sentiment
 | 
						|
      
 | 
						|
        # Represents an output piece of text.
 | 
						|
        # Corresponds to the JSON property `text`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::TextSpan]
 | 
						|
        attr_accessor :text
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @sentiment = args[:sentiment] if args.key?(:sentiment)
 | 
						|
          @text = args[:text] if args.key?(:text)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents the feeling associated with the entire text or entities in
 | 
						|
      # the text.
 | 
						|
      class Sentiment
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # A non-negative number in the [0, +inf) range, which represents
 | 
						|
        # the absolute magnitude of sentiment regardless of score (positive or
 | 
						|
        # negative).
 | 
						|
        # Corresponds to the JSON property `magnitude`
 | 
						|
        # @return [Float]
 | 
						|
        attr_accessor :magnitude
 | 
						|
      
 | 
						|
        # DEPRECATED FIELD - This field is being deprecated in
 | 
						|
        # favor of score. Please refer to our documentation at
 | 
						|
        # https://cloud.google.com/natural-language/docs for more information.
 | 
						|
        # Corresponds to the JSON property `polarity`
 | 
						|
        # @return [Float]
 | 
						|
        attr_accessor :polarity
 | 
						|
      
 | 
						|
        # Sentiment score between -1.0 (negative sentiment) and 1.0
 | 
						|
        # (positive sentiment).
 | 
						|
        # Corresponds to the JSON property `score`
 | 
						|
        # @return [Float]
 | 
						|
        attr_accessor :score
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @magnitude = args[:magnitude] if args.key?(:magnitude)
 | 
						|
          @polarity = args[:polarity] if args.key?(:polarity)
 | 
						|
          @score = args[:score] if args.key?(:score)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The `Status` type defines a logical error model that is suitable for
 | 
						|
      # different programming environments, including REST APIs and RPC APIs. It is
 | 
						|
      # used by [gRPC](https://github.com/grpc). Each `Status` message contains
 | 
						|
      # three pieces of data: error code, error message, and error details.
 | 
						|
      # You can find out more about this error model and how to work with it in the
 | 
						|
      # [API Design Guide](https://cloud.google.com/apis/design/errors).
 | 
						|
      class Status
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The status code, which should be an enum value of google.rpc.Code.
 | 
						|
        # Corresponds to the JSON property `code`
 | 
						|
        # @return [Fixnum]
 | 
						|
        attr_accessor :code
 | 
						|
      
 | 
						|
        # A list of messages that carry the error details.  There is a common set of
 | 
						|
        # message types for APIs to use.
 | 
						|
        # Corresponds to the JSON property `details`
 | 
						|
        # @return [Array<Hash<String,Object>>]
 | 
						|
        attr_accessor :details
 | 
						|
      
 | 
						|
        # A developer-facing error message, which should be in English. Any
 | 
						|
        # user-facing error message should be localized and sent in the
 | 
						|
        # google.rpc.Status.details field, or localized by the client.
 | 
						|
        # Corresponds to the JSON property `message`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :message
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @code = args[:code] if args.key?(:code)
 | 
						|
          @details = args[:details] if args.key?(:details)
 | 
						|
          @message = args[:message] if args.key?(:message)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents an output piece of text.
 | 
						|
      class TextSpan
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The API calculates the beginning offset of the content in the original
 | 
						|
        # document according to the EncodingType specified in the API request.
 | 
						|
        # Corresponds to the JSON property `beginOffset`
 | 
						|
        # @return [Fixnum]
 | 
						|
        attr_accessor :begin_offset
 | 
						|
      
 | 
						|
        # The content of the output text.
 | 
						|
        # Corresponds to the JSON property `content`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :content
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @begin_offset = args[:begin_offset] if args.key?(:begin_offset)
 | 
						|
          @content = args[:content] if args.key?(:content)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Represents the smallest syntactic building block of the text.
 | 
						|
      class Token
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Represents dependency parse tree information for a token.
 | 
						|
        # Corresponds to the JSON property `dependencyEdge`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::DependencyEdge]
 | 
						|
        attr_accessor :dependency_edge
 | 
						|
      
 | 
						|
        # [Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.
 | 
						|
        # Corresponds to the JSON property `lemma`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :lemma
 | 
						|
      
 | 
						|
        # Represents part of speech information for a token.
 | 
						|
        # Corresponds to the JSON property `partOfSpeech`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::PartOfSpeech]
 | 
						|
        attr_accessor :part_of_speech
 | 
						|
      
 | 
						|
        # Represents an output piece of text.
 | 
						|
        # Corresponds to the JSON property `text`
 | 
						|
        # @return [Google::Apis::LanguageV1beta1::TextSpan]
 | 
						|
        attr_accessor :text
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @dependency_edge = args[:dependency_edge] if args.key?(:dependency_edge)
 | 
						|
          @lemma = args[:lemma] if args.key?(:lemma)
 | 
						|
          @part_of_speech = args[:part_of_speech] if args.key?(:part_of_speech)
 | 
						|
          @text = args[:text] if args.key?(:text)
 | 
						|
        end
 | 
						|
      end
 | 
						|
    end
 | 
						|
  end
 | 
						|
end
 |