namespace PhotoFlash::Data { entity Album in [Album]; entity ScreenTime; entity User in [UserGroup] { account: Account }; entity UserGroup; entity Account { age: Long }; entity Photo in [Album] { owner: User }; action edit appliesTo { principal: [User], resource: [Photo] }; action view appliesTo { principal: [User], resource: [Photo, ScreenTime], context: { addr: { city: String, street: String }, person: { age: Long, name: String }, role: Set } }; }