$defs: project: type: object additionalProperties: false required: - id - name properties: id: type: string name: type: string type: type: string enum: - research links: type: object event: type: object additionalProperties: false required: - id - date - city - country properties: id: type: string type: type: string enum: - summit - meetup - hackathon - privacy-corner confirmed: type: boolean tags: type: array items: type: string enum: - sfe date: type: string days: type: number city: type: string country: type: string pattern: "^\\w{2}$" place: type: string place-address: type: string coincidence: type: string lead: type: string helpers: type: array items: type: string slots: type: number visitors: type: number optional: type: boolean links: type: object additionalProperties: false patternProperties: "^[\\w]+": type: string format: uri speakers: type: array person: type: object additionalProperties: false required: - name properties: id: type: string pattern: "^[a-z0-9-]+$" name: type: string nickname: type: string caption: type: string country: type: string pattern: '^[a-z]{2}$' refs: type: object additionalProperties: false properties: twitter: type: string linkedin: type: string bsky: type: string imageUrl: type: string format: uri type: object additionalProperties: false properties: name: type: string email: type: string format: email domain: type: string links: type: object core-team: type: array items: type: object additionalProperties: false required: - name properties: name: type: string refs: type: object projects: type: array items: $ref: "#/$defs/project" events: type: array items: $ref: "#/$defs/event" people: type: array items: $ref: "#/$defs/person"