code: private List<SchemaDescriptor> createSchemas(Catalog catalog, Store store) throws IOException {
          List<SchemaDescriptor> schemaDescriptors = new ArrayList<>();
          Map<String, ColumnTypeDescriptor> columnTypes = new HashMap<>();
          Map<Column, ColumnDescriptor> allColumns = new HashMap<>();
          Set<ForeignKey> allForeignKeys = new HashSet<>();
          for (Schema schema : catalog.getSchemas()) {
              SchemaDescriptor schemaDescriptor = store.create(SchemaDescriptor.class);
              schemaDescriptor.setName(schema.getName());
              // Tables
              createTables(catalog, schema, schemaDescriptor, columnTypes, allColumns, allForeignKeys, store);
              // Sequences
              createSequences(catalog.getSequences(schema), schemaDescriptor, store);
              // Procedures and Functions
              createRoutines(catalog.getRoutines(schema), schemaDescriptor, columnTypes, store);
              schemaDescriptors.add(schemaDescriptor);
          }
          // Foreign keys
          createForeignKeys(allForeignKeys, allColumns, store);
          return schemaDescriptors;
      }
docs: Stores the data.
  
  @param catalog The catalog.
  @param store   The store.
  @return The list of created schema descriptors.
  @throws java.io.IOException If an error occurs.