# MetadataClassProperty

#### new Cesium.MetadataClassProperty(options)
engine/Source/Scene/MetadataClassProperty.js 47

A metadata property, as part of a `MetadataClass`.

See the 3D Metadata Specification for 3D Tiles

Name | Type | Description
--- | --- | ---
`options` | object | Object with the following properties:
Name | Type | Default | Description
--- | --- | --- | ---
`id` | string |  | The ID of the property.
`type` | MetadataType |  | The type of the property such as SCALAR, VEC2, VEC3.
`componentType` | MetadataComponentType |  | optional The component type of the property. This includes integer (e.g. INT8 or UINT16), and floating point (FLOAT32 and FLOAT64) values.
`enumType` | MetadataEnum |  | optional The enum type of the property. Only defined when type is ENUM.
`isArray` | boolean | `false` | optional True if a property is an array (either fixed length or variable length), false otherwise.
`isVariableLengthArray` | boolean | `false` | optional True if a property is a variable length array, false otherwise.
`arrayLength` | number |  | optional The number of array elements. Only defined for fixed length arrays.
`normalized` | boolean | `false` | optional Whether the property is normalized.
`min` | number | Array.<number> | Array.<Array.<number>> |  | optional A number or an array of numbers storing the minimum allowable value of this property. Only defined when type is a numeric type.
`max` | number | Array.<number> | Array.<Array.<number>> |  | optional A number or an array of numbers storing the maximum allowable value of this property. Only defined when type is a numeric type.
`offset` | number | Array.<number> | Array.<Array.<number>> |  | optional The offset to be added to property values as part of the value transform.
`scale` | number | Array.<number> | Array.<Array.<number>> |  | optional The scale to be multiplied to property values as part of the value transform.
`noData` | boolean | number | string | Array |  | optional The no-data sentinel value that represents null values.
`default` | boolean | number | string | Array |  | optional A default value to use when an entity's property value is not defined.
`required` | boolean | `false` | optional Whether the property is required.
`name` | string |  | optional The name of the property.
`description` | string |  | optional The description of the property.
`semantic` | string |  | optional An identifier that describes how this property should be interpreted.
`extras` | * |  | optional Extra user-defined properties.
`extensions` | object |  | optional An object containing extensions.

##### Experimental

This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.

### Members

#### readonly arrayLength : number
engine/Source/Scene/MetadataClassProperty.js 323

The number of array elements. Only defined for fixed-size arrays.

#### readonly componentType : MetadataComponentType
engine/Source/Scene/MetadataClassProperty.js 266

The component type of the property. This includes integer (e.g. INT8 or UINT16), and floating point (FLOAT32 and FLOAT64) values

#### readonly default : boolean|number|string|Array
engine/Source/Scene/MetadataClassProperty.js 388

A default value to use when an entity's property value is not defined.

#### readonly description : string
engine/Source/Scene/MetadataClassProperty.js 226

The description of the property.

#### readonly enumType : MetadataEnum
engine/Source/Scene/MetadataClassProperty.js 252

The enum type of the property. Only defined when type is ENUM.

#### readonly extensions : object
engine/Source/Scene/MetadataClassProperty.js 489

An object containing extensions.

#### readonly extras : *
engine/Source/Scene/MetadataClassProperty.js 476

Extra user-defined properties.

#### readonly id : string
engine/Source/Scene/MetadataClassProperty.js 200

The ID of the property.

#### readonly isArray : boolean
engine/Source/Scene/MetadataClassProperty.js 296

True if a property is an array (either fixed length or variable length), false otherwise.

#### readonly isVariableLengthArray : boolean
engine/Source/Scene/MetadataClassProperty.js 309

True if a property is a variable length array, false otherwise.

#### readonly max : number|Array.<number>|Array.<Array.<number>>
engine/Source/Scene/MetadataClassProperty.js 349

A number or an array of numbers storing the maximum allowable value of this property. Only defined when type is a numeric type.

#### readonly min : number|Array.<number>|Array.<Array.<number>>
engine/Source/Scene/MetadataClassProperty.js 362

A number or an array of numbers storing the minimum allowable value of this property. Only defined when type is a numeric type.

#### readonly name : string
engine/Source/Scene/MetadataClassProperty.js 213

The name of the property.

#### readonly noData : boolean|number|string|Array
engine/Source/Scene/MetadataClassProperty.js 375

The no-data sentinel value that represents null values

#### readonly normalized : boolean
engine/Source/Scene/MetadataClassProperty.js 336

Whether the property is normalized.

#### readonly offset : number|Array.<number>|Array.<Array.<number>>
engine/Source/Scene/MetadataClassProperty.js 446

The offset to be added to property values as part of the value transform. This is always defined, even when `hasValueTransform` is `false`. If the class property JSON itself did not define it, then it will be initialized to the default value.

#### readonly required : boolean
engine/Source/Scene/MetadataClassProperty.js 401

Whether the property is required.

#### readonly scale : number|Array.<number>|Array.<Array.<number>>
engine/Source/Scene/MetadataClassProperty.js 463

The scale to be multiplied to property values as part of the value transform. This is always defined, even when `hasValueTransform` is `false`. If the class property JSON itself did not define it, then it will be initialized to the default value.

#### readonly semantic : string
engine/Source/Scene/MetadataClassProperty.js 414

An identifier that describes how this property should be interpreted.

#### readonly type : MetadataType
engine/Source/Scene/MetadataClassProperty.js 239

The type of the property such as SCALAR, VEC2, VEC3

Need help? The fastest way to get answers is from the community and team on the Cesium Forum.