An entity schema for an operating hours.
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 `maps` domain
and its content matches the `operatingHours` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .maps.operatingHours)` 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 `operatingHours` schema:
```swift
@AppEntity(schema: .maps.operatingHours)
struct MapsOperatingHoursEntity {
// MARK: Static
static let defaultQuery = MapsOperatingHoursEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var monday: [<#MapsOperatingTimeRangeEntity#>]
var tuesday: [<#MapsOperatingTimeRangeEntity#>]
var wednesday: [<#MapsOperatingTimeRangeEntity#>]
var thursday: [<#MapsOperatingTimeRangeEntity#>]
var friday: [<#MapsOperatingTimeRangeEntity#>]
var saturday: [<#MapsOperatingTimeRangeEntity#>]
var sunday: [<#MapsOperatingTimeRangeEntity#>]
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct MapsOperatingHoursEntityQuery: EntityQuery {
func entities(for identifiers: [MapsOperatingHoursEntity.ID]) async throws -> [MapsOperatingHoursEntity] {
<#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+
currentLocation
Swift declaration
var currentLocation: some AppSchemaEntity { get }
An entity schema for a current location.
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 `maps` domain
and its content matches the `currentLocation` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .maps.currentLocation)` 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 `currentLocation` schema:
```swift
@AppEntity(schema: .maps.currentLocation)
struct MapsCurrentLocationEntity {
// MARK: Static
static let defaultQuery = MapsCurrentLocationEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct MapsCurrentLocationEntityQuery: EntityQuery {
func entities(for identifiers: [MapsCurrentLocationEntity.ID]) async throws -> [MapsCurrentLocationEntity] {
<#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+
navigationSession
Swift declaration
var navigationSession: some AppSchemaEntity { get }
An entity schema for a navigation session.
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 `maps` domain
and its content matches the `navigationSession` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .maps.navigationSession)` 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 `navigationSession` schema:
```swift
@AppEntity(schema: .maps.navigationSession)
struct MapsNavigationSessionEntity: UniqueEntity {
// MARK: Static
static let defaultQuery = MapsNavigationSessionEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var estimatedArrivalDate: Date
var waypoints: [<#MapsLocation#>]
var transportationType: <#MapsTransportTypeEnum#>
var preferences: [<#MapsNavigationPreferencesEnum#>]
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct MapsNavigationSessionEntityQuery: EntityQuery {
func entities(for identifiers: [MapsNavigationSessionEntity.ID]) async throws -> [MapsNavigationSessionEntity] {
<#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+
operatingTimeRange
Swift declaration
var operatingTimeRange: some AppSchemaEntity { get }
An entity schema for an operating time range.
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 `maps` domain
and its content matches the `operatingTimeRange` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .maps.operatingTimeRange)` 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 `operatingTimeRange` schema:
```swift
@AppEntity(schema: .maps.operatingTimeRange)
struct MapsOperatingTimeRangeEntity {
// MARK: Static
static let defaultQuery = MapsOperatingTimeRangeEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var startTime: DateComponents
var endTime: DateComponents
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct MapsOperatingTimeRangeEntityQuery: EntityQuery {
func entities(for identifiers: [MapsOperatingTimeRangeEntity.ID]) async throws -> [MapsOperatingTimeRangeEntity] {
<#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+
place
Swift declaration
var place: some AppSchemaEntity { get }
An entity schema for a place.
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 `maps` domain
and its content matches the `place` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .maps.place)` 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 `place` schema:
```swift
@AppEntity(schema: .maps.place)
struct MapsPlaceEntity {
// MARK: Static
static let defaultQuery = MapsPlaceEntityQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var place: GeoToolbox.PlaceDescriptor
var name: String?
var categories: [String]
var operatingStatus: <#MapsOperatingStatusEnum#>?
var operatingHours: <#MapsOperatingHoursEntity#>?
var phoneNumber: String?
var priceRange: <#MapsPriceRangeEnum#>?
var ratings: [<#MapsRating#>]
var amenities: [String]
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct MapsPlaceEntityQuery: EntityQuery {
func entities(for identifiers: [MapsPlaceEntity.ID]) async throws -> [MapsPlaceEntity] {
<#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+
rating
Swift declaration
var rating: some AppSchemaEntity { get }
An entity schema for a rating.
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 `maps` domain
and its content matches the `rating` schema,
you can generate the properties and protocol conformance the schema requires
for your app entity implementation
with the `@AppEntity( .maps.rating)` 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 `rating` schema:
```swift
@AppEntity(schema: .maps.rating)
struct MapsRating {
// MARK: Static
static let defaultQuery = MapsRatingQuery()
// MARK: Properties
let id: <#Identifiable.ID#>
var value: Double
var descriptor: <#MapsRatingDescriptor#>
var count: Int?
var provider: String
var displayRepresentation: DisplayRepresentation {
<#DisplayRepresentation#>
}
// MARK: Query
struct MapsRatingQuery: EntityQuery {
func entities(for identifiers: [MapsRating.ID]) async throws -> [MapsRating] {
<#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>.