One Logo Pool Ball
AppIntents · IOS API REFERENCE

AppSchema.PhotosEntity

protocol · iOS 18.0+ · SDK 27.1

protocol PhotosEntity : AppSchema.Kind

Identifies entity schemas in the photos domain.

Members (3)

get · iOS 18.0+

recognizedPerson

Swift declaration
var recognizedPerson: some AppSchemaEntity { get }

An entity schema for a recognized person. 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 `photos` domain and its content matches the `recognizedPerson` schema, you can generate the properties and protocol conformance the schema requires for your app entity implementation with the `@AppEntity( .photos.recognizedPerson)` 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 `recognizedPerson` schema: ```swift @AppEntity(schema: .photos.recognizedPerson) struct PhotoPersonEntity { // MARK: Static static let defaultQuery = PhotoPersonEntityQuery() // MARK: Properties let id: <#Identifiable.ID#> var name: String var isFavorite: Bool var displayRepresentation: DisplayRepresentation { <#DisplayRepresentation#> } // MARK: Query struct PhotoPersonEntityQuery: EntityQuery { func entities(for identifiers: [PhotoPersonEntity.ID]) async throws -> [PhotoPersonEntity] { <#code#> } } } ``` The schema supports the following system experiences: - Siri - 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+

album

Swift declaration
var album: some AppSchemaEntity { get }

An entity schema for an album. 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 `photos` domain and its content matches the `album` schema, you can generate the properties and protocol conformance the schema requires for your app entity implementation with the `@AppEntity( .photos.album)` 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 `album` schema: ```swift @AppEntity(schema: .photos.album) struct PhotoAlbumEntity { // MARK: Static static let defaultQuery = PhotoAlbumEntityQuery() // MARK: Properties let id: <#Identifiable.ID#> var name: String var creationDate: Date? var albumType: <#PhotoAlbumType#> var displayRepresentation: DisplayRepresentation { <#DisplayRepresentation#> } // MARK: Query struct PhotoAlbumEntityQuery: EntityQuery { func entities(for identifiers: [PhotoAlbumEntity.ID]) async throws -> [PhotoAlbumEntity] { <#code#> } } } ``` The schema supports the following system experiences: - Siri - 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 27.0+

asset

Swift declaration
var asset: some AppSchemaEntity { get }

An entity schema for an asset. 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 `photos` domain and its content matches the `asset` schema, you can generate the properties and protocol conformance the schema requires for your app entity implementation with the `@AppEntity( .photos.asset)` 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 `asset` schema: ```swift @AppEntity(schema: .photos.asset) struct PhotoEntity { // MARK: Static static let defaultQuery = PhotoEntityQuery() // MARK: Properties let id: <#Identifiable.ID#> var creationDate: Date? var location: GeoToolbox.PlaceDescriptor? var assetType: <#PhotoAssetType#>? var isFavorite: Bool var isHidden: Bool var hasSuggestedEdits: Bool var aperture: Double? var exposure: Double? var saturation: Double? var warmth: Double? var filter: <#PhotoFilterEffectType#>? var isPortraitModeEnabled: Bool? var displayRepresentation: DisplayRepresentation { <#DisplayRepresentation#> } // MARK: Query struct PhotoEntityQuery: EntityQuery { func entities(for identifiers: [PhotoEntity.ID]) async throws -> [PhotoEntity] { <#code#> } } } ``` The schema supports the following system experiences: - Siri - 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>.

Skipped declarations

No declarations were skipped in this snapshot.

All AppIntents types →