Class: Google::Apis::FirebasemlV2beta::GoogleCloudAiplatformV1beta1Schema

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/firebaseml_v2beta/classes.rb,
lib/google/apis/firebaseml_v2beta/representations.rb,
lib/google/apis/firebaseml_v2beta/representations.rb

Overview

Defines the schema of input and output data. This is a subset of the OpenAPI 3.0 Schema Object.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAiplatformV1beta1Schema

Returns a new instance of GoogleCloudAiplatformV1beta1Schema.



3737
3738
3739
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3737

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#additional_propertiesObject

Optional. If type is OBJECT, specifies how to handle properties not defined in properties. If it is a boolean false, no additional properties are allowed. If it is a schema, additional properties are allowed if they conform to the schema. Corresponds to the JSON property additionalProperties

Returns:

  • (Object)


3581
3582
3583
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3581

def additional_properties
  @additional_properties
end

#any_ofArray<Google::Apis::FirebasemlV2beta::GoogleCloudAiplatformV1beta1Schema>

Optional. The instance must be valid against any (one or more) of the subschemas listed in any_of. Corresponds to the JSON property anyOf



3587
3588
3589
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3587

def any_of
  @any_of
end

#defaultObject

Optional. Default value to use if the field is not specified. Corresponds to the JSON property default

Returns:

  • (Object)


3592
3593
3594
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3592

def default
  @default
end

#defsHash<String,Google::Apis::FirebasemlV2beta::GoogleCloudAiplatformV1beta1Schema>

Optional. defs provides a map of schema definitions that can be reused by ref elsewhere in the schema. Only allowed at root level of the schema. Corresponds to the JSON property defs



3598
3599
3600
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3598

def defs
  @defs
end

#descriptionString

Optional. Describes the data. The model uses this field to understand the purpose of the schema and how to use it. It is a best practice to provide a clear and descriptive explanation for the schema and its properties here, rather than in the prompt. Corresponds to the JSON property description

Returns:

  • (String)


3606
3607
3608
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3606

def description
  @description
end

#enumArray<String>

Optional. Possible values of the field. This field can be used to restrict a value to a fixed set of values. To mark a field as an enum, set format to enum and provide the list of possible values in enum. For example: 1. To define directions: type:STRING, format:enum, enum:["EAST", "NORTH", "SOUTH", "WEST"] 2. To define apartment numbers: type:INTEGER, format:enum, enum:[" 101", "201", "301"] Corresponds to the JSON property enum

Returns:

  • (Array<String>)


3616
3617
3618
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3616

def enum
  @enum
end

#exampleObject

Optional. Example of an instance of this schema. Corresponds to the JSON property example

Returns:

  • (Object)


3621
3622
3623
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3621

def example
  @example
end

#formatString

Optional. The format of the data. For NUMBER type, format can be float or double. For INTEGER type, format can be int32 or int64. For STRING type, format can be email, byte, date, date-time, password, and other formats to further refine the data type. Corresponds to the JSON property format

Returns:

  • (String)


3629
3630
3631
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3629

def format
  @format
end

#itemsGoogle::Apis::FirebasemlV2beta::GoogleCloudAiplatformV1beta1Schema

Defines the schema of input and output data. This is a subset of the OpenAPI 3.0 Schema Object. Corresponds to the JSON property items



3635
3636
3637
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3635

def items
  @items
end

#max_itemsFixnum

Optional. If type is ARRAY, max_items specifies the maximum number of items in an array. Corresponds to the JSON property maxItems

Returns:

  • (Fixnum)


3641
3642
3643
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3641

def max_items
  @max_items
end

#max_lengthFixnum

Optional. If type is STRING, max_length specifies the maximum length of the string. Corresponds to the JSON property maxLength

Returns:

  • (Fixnum)


3647
3648
3649
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3647

def max_length
  @max_length
end

#max_propertiesFixnum

Optional. If type is OBJECT, max_properties specifies the maximum number of properties that can be provided. Corresponds to the JSON property maxProperties

Returns:

  • (Fixnum)


3653
3654
3655
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3653

def max_properties
  @max_properties
end

#maximumFloat

Optional. If type is INTEGER or NUMBER, maximum specifies the maximum allowed value. Corresponds to the JSON property maximum

Returns:

  • (Float)


3659
3660
3661
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3659

def maximum
  @maximum
end

#min_itemsFixnum

Optional. If type is ARRAY, min_items specifies the minimum number of items in an array. Corresponds to the JSON property minItems

Returns:

  • (Fixnum)


3665
3666
3667
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3665

def min_items
  @min_items
end

#min_lengthFixnum

Optional. If type is STRING, min_length specifies the minimum length of the string. Corresponds to the JSON property minLength

Returns:

  • (Fixnum)


3671
3672
3673
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3671

def min_length
  @min_length
end

#min_propertiesFixnum

Optional. If type is OBJECT, min_properties specifies the minimum number of properties that can be provided. Corresponds to the JSON property minProperties

Returns:

  • (Fixnum)


3677
3678
3679
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3677

def min_properties
  @min_properties
end

#minimumFloat

Optional. If type is INTEGER or NUMBER, minimum specifies the minimum allowed value. Corresponds to the JSON property minimum

Returns:

  • (Float)


3683
3684
3685
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3683

def minimum
  @minimum
end

#nullableBoolean Also known as: nullable?

Optional. Indicates if the value of this field can be null. Corresponds to the JSON property nullable

Returns:

  • (Boolean)


3688
3689
3690
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3688

def nullable
  @nullable
end

#patternString

Optional. If type is STRING, pattern specifies a regular expression that the string must match. Corresponds to the JSON property pattern

Returns:

  • (String)


3695
3696
3697
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3695

def pattern
  @pattern
end

#propertiesHash<String,Google::Apis::FirebasemlV2beta::GoogleCloudAiplatformV1beta1Schema>

Optional. If type is OBJECT, properties is a map of property names to schema definitions for each property of the object. Corresponds to the JSON property properties



3701
3702
3703
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3701

def properties
  @properties
end

#property_orderingArray<String>

Optional. Order of properties displayed or used where order matters. This is not a standard field in OpenAPI specification, but can be used to control the order of properties. Corresponds to the JSON property propertyOrdering

Returns:

  • (Array<String>)


3708
3709
3710
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3708

def property_ordering
  @property_ordering
end

#refString

Optional. Allows referencing another schema definition to use in place of this schema. The value must be a valid reference to a schema in defs. For example, the following schema defines a reference to a schema node named "Pet": type: object properties: pet: ref: #/defs/Pet defs: Pet: type: object properties: name: type: string The value of the "pet" property is a reference to the schema node named "Pet". See details in https://json-schema.org/understanding- json-schema/structuring Corresponds to the JSON property ref

Returns:

  • (String)


3719
3720
3721
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3719

def ref
  @ref
end

#requiredArray<String>

Optional. If type is OBJECT, required lists the names of properties that must be present. Corresponds to the JSON property required

Returns:

  • (Array<String>)


3725
3726
3727
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3725

def required
  @required
end

#titleString

Optional. Title for the schema. Corresponds to the JSON property title

Returns:

  • (String)


3730
3731
3732
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3730

def title
  @title
end

#typeString

Optional. Data type of the schema field. Corresponds to the JSON property type

Returns:

  • (String)


3735
3736
3737
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3735

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
# File 'lib/google/apis/firebaseml_v2beta/classes.rb', line 3742

def update!(**args)
  @additional_properties = args[:additional_properties] if args.key?(:additional_properties)
  @any_of = args[:any_of] if args.key?(:any_of)
  @default = args[:default] if args.key?(:default)
  @defs = args[:defs] if args.key?(:defs)
  @description = args[:description] if args.key?(:description)
  @enum = args[:enum] if args.key?(:enum)
  @example = args[:example] if args.key?(:example)
  @format = args[:format] if args.key?(:format)
  @items = args[:items] if args.key?(:items)
  @max_items = args[:max_items] if args.key?(:max_items)
  @max_length = args[:max_length] if args.key?(:max_length)
  @max_properties = args[:max_properties] if args.key?(:max_properties)
  @maximum = args[:maximum] if args.key?(:maximum)
  @min_items = args[:min_items] if args.key?(:min_items)
  @min_length = args[:min_length] if args.key?(:min_length)
  @min_properties = args[:min_properties] if args.key?(:min_properties)
  @minimum = args[:minimum] if args.key?(:minimum)
  @nullable = args[:nullable] if args.key?(:nullable)
  @pattern = args[:pattern] if args.key?(:pattern)
  @properties = args[:properties] if args.key?(:properties)
  @property_ordering = args[:property_ordering] if args.key?(:property_ordering)
  @ref = args[:ref] if args.key?(:ref)
  @required = args[:required] if args.key?(:required)
  @title = args[:title] if args.key?(:title)
  @type = args[:type] if args.key?(:type)
end