code: def example_graph_schema():
      def create_schema(aa=1, ab=1, ba=1, bb=1):
          # graph schema
          schema = {"A": [], "B": []}
          for ii in range(aa):
              schema["A"].append(EdgeType("A", "a%d" % ii, "A"))
          for ii in range(ab):
              schema["A"].append(EdgeType("A", "ab%d" % ii, "B"))
          for ii in range(ba):
              schema["B"].append(EdgeType("B", "ab%d" % ii, "A"))
          for ii in range(bb):
              schema["B"].append(EdgeType("B", "b%d" % ii, "B"))
  
          return GraphSchema(
              is_directed=False,
              node_types=sorted(schema.keys()),
              edge_types=sorted(set(it.chain(*schema.values()))),
              schema=schema,
          )
  
      return create_schema
  
file_path: stellargraph/tests/core/test_schema.py
imports: import pytest
  from stellargraph.core.schema import *
  import itertools
label_desc: Use image node_id 1 for calling a global function with example usage: example_graph_schema() and returns: create_schema, GraphSchema