"""
Defines mapping of resource types to schema
Generated. Do not edit!
"""
SCHEMA = {'device': {u'$schema': u'http://json-schema.org/draft-04/schema#',
            u'description': u'Describes a Device',
            u'properties': {u'id': {u'description': u'Globally unique identifier for the Device',
                                    u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                    u'type': u'string'},
                            u'label': {u'description': u'Freeform string label for the Device',
                                       u'type': u'string'},
                            u'node_id': {u'description': u'Globally unique identifier for the Node which initially created the Device',
                                         u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                         u'type': u'string'},
                            u'receivers': {u'description': u'UUIDs of Receivers attached to the Device',
                                           u'items': {u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                                      u'type': u'string'},
                                           u'type': u'array'},
                            u'senders': {u'description': u'UUIDs of Senders attached to the Device',
                                         u'items': {u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                                    u'type': u'string'},
                                         u'type': u'array'},
                            u'type': {u'description': u'Device type URN',
                                      u'format': u'uri',
                                      u'type': u'string'},
                            u'version': {u'description': u'String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed',
                                         u'pattern': u'^[0-9]+:[0-9]+$',
                                         u'type': u'string'}},
            u'required': [u'id',
                          u'version',
                          u'label',
                          u'type',
                          u'node_id',
                          u'senders',
                          u'receivers'],
            u'title': u'Device resource',
            u'type': u'object'},
 'flow': {u'$schema': u'http://json-schema.org/draft-04/schema#',
          u'description': u'Describes a Flow',
          u'properties': {u'description': {u'description': u'Detailed description of the Flow',
                                           u'type': u'string'},
                          u'format': {u'description': u'Format of the data coming from the Flow as a URN',
                                      u'enum': [u'urn:x-nmos:format:video',
                                                u'urn:x-nmos:format:audio',
                                                u'urn:x-nmos:format:data'],
                                      u'format': u'uri',
                                      u'type': u'string'},
                          u'id': {u'description': u'Globally unique identifier for the Flow',
                                  u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                  u'type': u'string'},
                          u'label': {u'description': u'Freeform string label for the Flow',
                                     u'type': u'string'},
                          u'parents': {u'description': u'Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow)',
                                       u'items': {u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                                  u'type': u'string'},
                                       u'type': u'array'},
                          u'source_id': {u'description': u'Globally unique identifier for the Source which initially created the Flow',
                                         u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                         u'type': u'string'},
                          u'tags': {u'description': u'Key value set of freeform string tags to aid in filtering Flows. Values should be represented as an array of strings. Can be empty.',
                                    u'patternProperties': {u'': {u'items': {u'type': u'string'},
                                                                 u'type': u'array'}},
                                    u'type': u'object'},
                          u'version': {u'description': u'String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed',
                                       u'pattern': u'^[0-9]+:[0-9]+$',
                                       u'type': u'string'}},
          u'required': [u'id',
                        u'version',
                        u'label',
                        u'description',
                        u'format',
                        u'tags',
                        u'source_id',
                        u'parents'],
          u'title': u'Flow resource',
          u'type': u'object'},
 'node': {u'$schema': u'http://json-schema.org/draft-04/schema#',
          u'description': u'Describes the Node and the services which run on it',
          u'properties': {u'caps': {u'description': u'Capabilities (not yet defined)',
                                    u'type': u'object'},
                          u'hostname': {u'description': u'Node hostname (optional)',
                                        u'format': u'hostname',
                                        u'type': u'string'},
                          u'href': {u'description': u"HTTP access href for the Node's API",
                                    u'format': u'uri',
                                    u'type': u'string'},
                          u'id': {u'description': u'Globally unique identifier for the Node',
                                  u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                  u'type': u'string'},
                          u'label': {u'description': u'Freeform string label for the Node',
                                     u'type': u'string'},
                          u'services': {u'description': u'Array of objects containing a URN format type and href',
                                        u'items': {u'properties': {u'href': {u'description': u'URL to reach a service running on the Node',
                                                                             u'format': u'uri',
                                                                             u'type': u'string'},
                                                                   u'type': {u'description': u'URN identifying the type of service',
                                                                             u'format': u'uri',
                                                                             u'type': u'string'}},
                                                   u'required': [u'href',
                                                                 u'type'],
                                                   u'type': u'object'},
                                        u'type': u'array'},
                          u'version': {u'description': u'String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed',
                                       u'pattern': u'^[0-9]+:[0-9]+$',
                                       u'type': u'string'}},
          u'required': [u'id',
                        u'version',
                        u'label',
                        u'href',
                        u'caps',
                        u'services'],
          u'title': u'Node resource',
          u'type': u'object'},
 'receiver': {u'$schema': u'http://json-schema.org/draft-04/schema#',
              u'description': u'Describes a receiver',
              u'properties': {u'caps': {u'description': u'Capabilities (not yet defined)',
                                        u'type': u'object'},
                              u'description': {u'description': u'Detailed description of the Receiver',
                                               u'type': u'string'},
                              u'device_id': {u'description': u'Device ID which this Receiver forms part of',
                                             u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                             u'type': u'string'},
                              u'format': {u'description': u'Type of Flow accepted by the Receiver as a URN',
                                          u'enum': [u'urn:x-nmos:format:video',
                                                    u'urn:x-nmos:format:audio',
                                                    u'urn:x-nmos:format:data'],
                                          u'format': u'uri',
                                          u'type': u'string'},
                              u'id': {u'description': u'Globally unique identifier for the Receiver',
                                      u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                      u'type': u'string'},
                              u'label': {u'description': u'Freeform string label for the Receiver',
                                         u'type': u'string'},
                              u'subscription': {u'description': u"Object containing the 'sender_id' currently subscribed to. Sender_id should be null on initialisation.",
                                                u'properties': {u'sender_id': {u'default': None,
                                                                               u'description': u'UUID of the Sender that this Receiver is currently subscribed to',
                                                                               u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                                                               u'type': [u'string',
                                                                                         u'null']}},
                                                u'type': u'object'},
                              u'tags': {u'description': u'Key value set of freeform string tags to aid in filtering sources. Values should be represented as an array of strings. Can be empty.',
                                        u'patternProperties': {u'': {u'items': {u'type': u'string'},
                                                                     u'type': u'array'}},
                                        u'type': u'object'},
                              u'transport': {u'description': u'Transport type accepted by the Receiver in URN format',
                                             u'enum': [u'urn:x-nmos:transport:rtp',
                                                       u'urn:x-nmos:transport:rtp.ucast',
                                                       u'urn:x-nmos:transport:rtp.mcast',
                                                       u'urn:x-nmos:transport:dash'],
                                             u'format': u'uri',
                                             u'type': u'string'},
                              u'version': {u'description': u'String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed',
                                           u'pattern': u'^[0-9]+:[0-9]+$',
                                           u'type': u'string'}},
              u'required': [u'id',
                            u'version',
                            u'label',
                            u'description',
                            u'format',
                            u'caps',
                            u'tags',
                            u'device_id',
                            u'transport',
                            u'subscription'],
              u'title': u'Receiver resource',
              u'type': u'object'},
 'sender': {u'$schema': u'http://json-schema.org/draft-04/schema#',
            u'description': u'Describes a sender',
            u'properties': {u'description': {u'description': u'Detailed description of the Sender',
                                             u'type': u'string'},
                            u'device_id': {u'description': u'Device ID which this Sender forms part of',
                                           u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                           u'type': u'string'},
                            u'flow_id': {u'description': u'ID of the Flow currently passing via this Sender',
                                         u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                         u'type': u'string'},
                            u'id': {u'description': u'Globally unique identifier for the Sender',
                                    u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                    u'type': u'string'},
                            u'label': {u'description': u'Freeform string label for the Sender',
                                       u'type': u'string'},
                            u'manifest_href': {u'description': u'HTTP URL to a file describing how to connect to the Sender (SDP for RTP)',
                                               u'format': u'uri',
                                               u'type': u'string'},
                            u'tags': {u'description': u'Key value set of freeform string tags to aid in filtering Senders. Values should be represented as an array of strings. Can be empty.',
                                      u'patternProperties': {u'': {u'items': {u'type': u'string'},
                                                                   u'type': u'array'}},
                                      u'type': u'object'},
                            u'transport': {u'description': u'Transport type used by the Sender in URN format',
                                           u'enum': [u'urn:x-nmos:transport:rtp',
                                                     u'urn:x-nmos:transport:rtp.ucast',
                                                     u'urn:x-nmos:transport:rtp.mcast',
                                                     u'urn:x-nmos:transport:dash'],
                                           u'format': u'uri',
                                           u'type': u'string'},
                            u'version': {u'description': u'String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed',
                                         u'pattern': u'^[0-9]+:[0-9]+$',
                                         u'type': u'string'}},
            u'required': [u'id',
                          u'version',
                          u'label',
                          u'description',
                          u'flow_id',
                          u'transport',
                          u'device_id',
                          u'manifest_href'],
            u'title': u'Sender resource',
            u'type': u'object'},
 'source': {u'$schema': u'http://json-schema.org/draft-04/schema#',
            u'description': u'Describes a Source',
            u'properties': {u'caps': {u'description': u'Capabilities (not yet defined)',
                                      u'type': u'object'},
                            u'description': {u'description': u'Detailed description of the Source',
                                             u'type': u'string'},
                            u'device_id': {u'description': u'Globally unique identifier for the Device which initially created the Source',
                                           u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                           u'type': u'string'},
                            u'format': {u'description': u'Format of the data coming from the Source as a URN',
                                        u'enum': [u'urn:x-nmos:format:video',
                                                  u'urn:x-nmos:format:audio',
                                                  u'urn:x-nmos:format:data'],
                                        u'format': u'uri',
                                        u'type': u'string'},
                            u'id': {u'description': u'Globally unique identifier for the Source',
                                    u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                    u'type': u'string'},
                            u'label': {u'description': u'Freeform string label for the Source',
                                       u'type': u'string'},
                            u'parents': {u'description': u'Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source)',
                                         u'items': {u'pattern': u'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
                                                    u'type': u'string'},
                                         u'type': u'array'},
                            u'tags': {u'description': u'Key value set of freeform string tags to aid in filtering Sources. Values should be represented as an array of strings. Can be empty.',
                                      u'patternProperties': {u'': {u'items': {u'type': u'string'},
                                                                   u'type': u'array'}},
                                      u'type': u'object'},
                            u'version': {u'description': u'String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed',
                                         u'pattern': u'^[0-9]+:[0-9]+$',
                                         u'type': u'string'}},
            u'required': [u'id',
                          u'version',
                          u'label',
                          u'description',
                          u'format',
                          u'caps',
                          u'tags',
                          u'device_id',
                          u'parents'],
            u'title': u'Source resource',
            u'type': u'object'}}
None
