I'm a Swift newbie and I'm trying to get to grips with the following data structure. I have an array (categories) of category structs. Each category struct contains an array of business structs stored as a value on the property items. I'm not sure how to represent this kind of thing but hopefully this pseudo-code makes it a little bit clearer:
categories: [category]
- category: Struct
.categoryId: Int
.items: [business]
- business: Struct
.busId: Int
- business: Struct
.busId: Int
- category: Struct
.categoryId: Int
.items: [business]
- business: Struct
.busId: Int
- business: Struct
.busId: Int
Given a busId I'm trying to return a matching business Struct and the categoryId in which it is contained. I've tried using FlatMap and Map but I'm going round in circles trying to unwrap and filter this data structure.
Any pointers/advice about approaches to take would be great.

Businessappear in more then 1Category?