log.schema.json (1614B)
1 { 2 "$schema": "https://json-schema.org/draft/2020-12/vocab/validation", 3 "$vocabulary": { 4 "https://json-schema.org/draft/2020-12/vocab/validation": true 5 }, 6 "$id": "ROOT/log.schema.json", 7 "type": "object", 8 "title": "Log of agoran events", 9 "description": "This schema describes a JSON array of objects representing events in the nomic game known as Agora Nomic.", 10 "properties": { 11 "defs": { 12 "type": "object", 13 "patternProperties": { 14 ".*": { 15 "type": "string", 16 "format": "uri" 17 } 18 } 19 }, 20 "events": { 21 "type": "array", 22 "items": { 23 "type": "object", 24 "title": "Agoran event", 25 "description": "Representation of an event that happened in a message (the “carrying message”) in the game of Agora Nomic", 26 "required": ["when", "what"], 27 "properties": { 28 "when": { 29 "type": "integer", 30 "description": "The UNIX time equivalent of the timestamp in the 'Date' header of the carrying message." 31 }, 32 "where": { 33 "type": "string", 34 "description": "The contents of the 'Message-Id' header of the message where the event took place, with the preceding '<' and trailing '>' removed." 35 }, 36 "what": { 37 "type": "string", 38 "description": "A keyword identifying the type of event that happened." 39 }, 40 "who": { 41 "type": "string", 42 "description": "The name of the player/person that performed the action that caused or is identical to the event. Not necessarily all events are caused by a player, so this is optional, though it MAY be made mandatory by any extensions of this schema." 43 } 44 } 45 } 46 } 47 } 48 49 }