Exemple #1
0
    def alter_schema(self, schema, fqn):

        if schema[u'type'] != u'object':

            # some properties must be moved from the array object to the item
            # object :
            items = Schema(schema)
            # clean some uneeded value in items
            for k in items.keys():
                if k in ['asPatternProperty', 'required']:
                    del items[k]

            # delete migrated values
            for k in schema.keys():
                if k in items:
                    del schema[k]

            schema[u'type'] = u'array'
            schema[u'items'] = items
            if self.min_items is not None:
                schema[u'minItems'] = self.min_items
            if self.max_items is not None:
                schema[u'maxItems'] = self.max_items