---
title: Schema components
framework: swiftdata
role: collectionGroup
role_heading: API Collection
path: swiftdata/schemacomponents
---

# Schema components

Specify the constituent parts of your schema, including entities, attributes, and relationships.

## Topics

### Entities

- [Schema.Entity](swiftdata/schema/entity.md)

### Attributes

- [Schema.Attribute](swiftdata/schema/attribute.md)
- [Schema.CompositeAttribute](swiftdata/schema/compositeattribute.md)

### Relationships

- [Schema.Relationship](swiftdata/schema/relationship.md)

### Internal

- [Internal symbols](swiftdata/schemacomponentsinternal.md)

## See Also

### Creating a schema

- [init(_:version:)](swiftdata/schema/init(_:version:)-8el78.md)
- [init(_:version:)](swiftdata/schema/init(_:version:)-8jo9o.md)
- [init(versionedSchema:)](swiftdata/schema/init(versionedschema:).md)
- [VersionedSchema](swiftdata/versionedschema.md)
- [init()](swiftdata/schema/init().md)
