code: def check_layout_json(self):
          
          # the install.json files can't be validates if the schema file is not present
          layout_json_file = 'layout.json'
          if self.layout_json_schema is None or not os.path.isfile(layout_json_file):
              return
  
          error = None
          status = True
          try:
              # loading explicitly here to keep all error catching in this file
              with open(layout_json_file) as fh:
                  data = json.loads(fh.read())
              validate(data, self.layout_json_schema)
          except SchemaError as e:
              status = False
              error = e
          except ValidationError as e:
              status = False
              error = e.message
          except ValueError:
              # any JSON decode error will be caught during syntax validation
              return
  
          # update validation data for module
          self.validation_data['schema'].append({'filename': layout_json_file, 'status': status})
  
          if error:
              # update validation data errors
              self.validation_data['errors'].append(
                  'Schema validation failed for {} ({}).'.format(layout_json_file, error)
              )
          else:
              self.check_layout_params()
docs: Check all layout.json files for valid schema.