<!--
{
  "availability" : [
    "iOS: 27.0.0 -",
    "iPadOS: 27.0.0 -",
    "macCatalyst: 27.0.0 -",
    "macOS: 27.0.0 -",
    "tvOS: 27.0.0 -",
    "visionOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "USDKit",
  "identifier" : "/documentation/USDKit/USDPrim/Property/Spec/ValueCollection",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "USDKit"
    ],
    "preciseIdentifier" : "s:6USDKit7USDPrimV8PropertyV4SpecV15ValueCollectionP"
  },
  "title" : "USDPrim.Property.Spec.ValueCollection"
}
-->

# USDPrim.Property.Spec.ValueCollection

Value-related API for property specs that hold typed default values.

```
protocol ValueCollection
```

## Overview

Only `USDPrim.Property.Spec` and `USDPrim.Attribute.Spec` conform to
this protocol; `USDPrim.Relationship.Spec` does not, because
relationships don’t store typed values.

## Topics

### Instance Properties

[`var defaultValue: USDValue?`](/documentation/USDKit/USDPrim/Property/Spec/ValueCollection/defaultValue)

The authored default value, or `nil` if not authored.
Assigning `nil` clears the default.

[`var typeName: USDPrim.Attribute.ValueType`](/documentation/USDKit/USDPrim/Property/Spec/ValueCollection/typeName)

The property’s value type.

[`var variability: USDPrim.Property.Variability`](/documentation/USDKit/USDPrim/Property/Spec/ValueCollection/variability)

The property’s variability (varying, uniform, or config).

## Relationships

### Conforming Types

[`Spec`](/documentation/USDKit/USDPrim/Property/Spec)

[`Spec`](/documentation/USDKit/USDPrim/Attribute/Spec)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)