Teach Siri AI to Share Structured Types Without Known Formats Across Apps with ValueRepresentation

Some apps have unique types that Siri AI can't understand by default โ€“ ValueRepresentatino helps teach the system about your type.

In the WWDC 26 session โ€œDiscover new capabilities in the App Intents framework,โ€ App Intents Engineer Moe Mehrabi talks about ValueRepresentation, a way for apps to mark up their structured types that donโ€™t fit into existing file types in such a way that other apps on the systemโ€”and, more importantly, Siri AIโ€”can understand them:

Your entitiesโ€”your appโ€™s content, like a landmark or playlistโ€”live inside your app. But the people using your app donโ€™t. They move between apps all the time.

Letโ€™s go through a pair of examples using Mail and Maps with my travel tracking app.

I built a shortcut to share trip ideas with friends. It finds a nearby landmark and its it along with a message. My entity conforms to Transferable from the CoreTransferable framework.

So the shortcut can share it in a format mail can use. And that works great.

But what if, instead of sending it to a friend, I want to get directions to that landmark? Well, that wonโ€™t work.

Maps needs some structured information, a coordinate, an address, or something it can navigate to. But that kind of data doesnโ€™t have an associated format that can be put in a file or data.

The existing file and data representations work great for known formats like PDFs or images โ€“ but not for structured types that donโ€™t have any [format].

This is where ValueRepresentation comes in. Itโ€™s a new representation that lets you share a structured type that the system already understands.

Hereโ€™s my Landmark entity. It represents a place in a travel tracking app.

It already conforms to Transferable, so I just need to add a ValueRepresentation alongside any existing representations.

Inside my ValueRepresentation, I export my landmarkโ€™s coordinate and name as a PlaceDescriptor from the GeoToolbox framework. PlaceDescriptor carries coordinates and other metadata that Maps needs to navigate.

If my entity already has a PlaceDescriptor @Property, I can skip the closure entirely and use a key-path. Same result, much less code.

So, going back to my shortcut โ€“ I tap run, my landmark flows to Maps as a PlaceDescriptor, and Maps opens with directions to the landmark.

Your entities now have more ways to travel across apps.

The core experience here is making sure Siri AI can take your app and connect it with another app, without the content failing to transfer. Itโ€™s like Transferable, but for representing unique values rather than known types.

Given this, Iโ€™m super intrigued with the idea of apps specifically designed to share their unique types with other apps. What if there was a suite of apps that all knew about each othersโ€™ data? What kind of experiences could they create?

Check out the session on YouTube and read the documentation on IntentValueRepresentation from Apple Developer.

Posts You Might Like

Now Available For App Intents Consulting: Hire Me For Your Apple Intelligence Integration
Looking to add Apple Intelligence to your app? Hire me as your App Intents consultant and together we'll build the best integration possible.
No Ticket to WWDC? Come to CommunityKit, the New, Free Alt Conf
Join me near Apple Park for the CommunityKit conference for watch parties, live podcasts, community meetups, and a free hackathon space.
Drafts 50 released! Shortcuts Revisited, AppleScript Improved (Client Work)
I had the pleasure of helping Greg Pierce update his Shortcuts support for Drafts โ€“ check out the release.
Ulysses adds Find Sheet, Find Group actions for Shortcuts; Substack support ยป
Ulysses has expanded their App Intents support in version 39 with Find, Import File, and Search actions โ€“ plus support for Spotlight on Mac.