<!--
{
  "availability" : [
    "macOS: 10.4.0 - 10.15.0"
  ],
  "documentType" : "symbol",
  "framework" : "Quartz",
  "identifier" : "/documentation/Quartz/QCCompositionRenderer/attributes()",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Quartz"
    ],
    "preciseIdentifier" : "c:objc(pl)QCCompositionRenderer(im)attributes"
  },
  "title" : "attributes()"
}
-->

# attributes()

Returns the attributes of the composition associated with the renderer.

```
func attributes() -> [AnyHashable : Any]!
```

## Return Value

A dictionary that contains the attributes that describe the composition, including the input and output ports of the root patch.

## Discussion

The dictionary can define any of the attributes that are specified by the composition attribute keys. See [`QCCompositionAttributeNameKey`](/documentation/Quartz/QCCompositionAttributeNameKey), QCCompositionAttributeDescriptionKey, and [`QCCompositionAttributeCopyrightKey`](/documentation/Quartz/QCCompositionAttributeCopyrightKey).

The dictionary can also contain dictionaries that correspond to the keys that identify the input and output ports of the root patch of the composition. See QCPortAttributeTypeKey, QCPortAttributeNameKey, QCPortAttributeMinimumValueKey, QCPortAttributeMaximumValueKey, and [`QCPortAttributeMenuItemsKey`](/documentation/Quartz/QCPortAttributeMenuItemsKey).

## See Also

[`inputKeys()`](/documentation/Quartz/QCCompositionRenderer/inputKeys())

Returns an array that contains the keys that identify the input ports of the root patch of the composition.

[`outputKeys()`](/documentation/Quartz/QCCompositionRenderer/outputKeys())

Returns an array that contains the keys that identify the output ports of the root patch of the composition.



---

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)