Identifies entity schemas in the presentation domain.
Members (3)
get · iOS 18.0+
slide
Swift declaration
var slide: some AppSchemaEntity { get }
An entity schema for a slide.
To make your app's content available to Apple Intelligence,
conform your ``AppEntity`` to a schema that describes your content to the system.
If your app's functionality aligns with the `presentation` domain
and its content matches the `slide` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .presentation.slide)` Swift macro.
To make your app work with Siri,
see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>.
The following example shows an app entity that conforms to the `slide` schema:
```swift
@AppEntity(schema: .presentation.slide)
struct PresentationSlideEntity {
// MARK: Static
static let defaultQuery = PresentationSlideEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var presentation: <#PresentationEntity#>
var slideIndex: Int?
var title: String?
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct PresentationSlideEntityQuery: EntityQuery {
func entities(for identifiers: [PresentationSlideEntity.ID]) async throws -> [PresentationSlideEntity] {
<#code#>
}
}
}
```
The schema supports the following system experiences:
- Shortcuts
For more information about the App Intents framework and the experiences it supports,
see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.
get · iOS 18.0+
document
Swift declaration
var document: some AppSchemaEntity { get }
An entity schema for a document.
To make your app's content available to Apple Intelligence,
conform your ``AppEntity`` to a schema that describes your content to the system.
If your app's functionality aligns with the `presentation` domain
and its content matches the `document` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .presentation.document)` Swift macro.
To make your app work with Siri,
see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>.
The following example shows an app entity that conforms to the `document` schema:
```swift
@AppEntity(schema: .presentation.document)
struct PresentationEntity {
// MARK: Static
static let defaultQuery = PresentationEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var name: String
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct PresentationEntityQuery: EntityQuery {
func entities(for identifiers: [PresentationEntity.ID]) async throws -> [PresentationEntity] {
<#code#>
}
}
}
```
The schema supports the following system experiences:
- Shortcuts
For more information about the App Intents framework and the experiences it supports,
see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.
get · iOS 18.0+
template
Swift declaration
var template: some AppSchemaEntity { get }
An entity schema for a template.
To make your app's content available to Apple Intelligence,
conform your ``AppEntity`` to a schema that describes your content to the system.
If your app's functionality aligns with the `presentation` domain
and its content matches the `template` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .presentation.template)` Swift macro.
To make your app work with Siri,
see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>.
The following example shows an app entity that conforms to the `template` schema:
```swift
@AppEntity(schema: .presentation.template)
struct PresentationTemplateEntity {
// MARK: Static
static let defaultQuery = PresentationTemplateEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var name: String
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct PresentationTemplateEntityQuery: EntityQuery {
func entities(for identifiers: [PresentationTemplateEntity.ID]) async throws -> [PresentationTemplateEntity] {
<#code#>
}
}
}
```
The schema supports the following system experiences:
- Shortcuts
For more information about the App Intents framework and the experiences it supports,
see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.