code: def testSqlSliceKeyExtractorWithMultipleSchema(self):
      eval_config = config_pb2.EvalConfig(
          slicing_specs=[
              config_pb2.SlicingSpec(
                  slice_keys_sql="""
          SELECT
            STRUCT(fixed_string)
          FROM
            example.fixed_string,
            example.fixed_int
          WHERE fixed_int = 1
          """
              )
          ]
      )
      feature_extractor = features_extractor.FeaturesExtractor(
          eval_config=eval_config
      )
      slice_key_extractor = (
          sql_slice_key_extractor.SqlSliceKeyExtractor(eval_config)
      )
  
      record_batch_1 = pa.RecordBatch.from_arrays(
          [
              pa.array([[1], [1], [2]], type=pa.list_(pa.int64())),
              pa.array(
                  [[1.0], [1.0], [2.0]], type=pa.list_(pa.float64())
              ),
              pa.array(
                  [
                      ["fixed_string1"],
                      ["fixed_string2"],
                      ["fixed_string3"],
                  ],
                  type=pa.list_(pa.string()),
              ),
          ],
          ["fixed_int", "fixed_float", "fixed_string"],
      )
      record_batch_2 = pa.RecordBatch.from_arrays(
          [
              pa.array([[1], [1], [2]], type=pa.list_(pa.int64())),
              pa.array(
                  [[1.0], [1.0], [2.0]], type=pa.list_(pa.float64())
              ),
              pa.array(
                  [
                      ["fixed_string1"],
                      ["fixed_string2"],
                      ["fixed_string3"],
                  ],
                  type=pa.list_(pa.string()),
              ),
              pa.array(
                  [
                      ["extra_field1"],
                      ["extra_field2"],
                      ["extra_field3"],
                  ],
                  type=pa.list_(pa.string()),
              ),
          ],
          ["fixed_int", "fixed_float", "fixed_string", "extra_field"],
      )
  
      with beam.Pipeline() as pipeline:
          # pylint: disable=no-value-for-parameter
          result = (
              pipeline
              | "Create"
              >> beam.Create(
                  [record_batch_1, record_batch_2], reshuffle=False
              )
              | "InputsToExtracts"
              >> model_eval_lib.BatchedInputsToExtracts()
              | feature_extractor.stage_name
              >> feature_extractor.ptransform
              | slice_key_extractor.stage_name
              >> slice_key_extractor.ptransform
          )
  
          # pylint: enable=no-value-for-parameter
  
          def check_result(got):
              try:
                  self.assertLen(got, 2)
                  np.testing.assert_equal(
                      got[0][constants.SLICE_KEY_TYPES_KEY],
                      types.VarLenTensorValue.from_dense_rows(
                          [
                              slicer_lib.slice_keys_to_numpy_array(
                                  [(("fixed_string", "fixed_string1"),)]
                              ),
                              slicer_lib.slice_keys_to_numpy_array(
                                  [(("fixed_string", "fixed_string2"),)]
                              ),
                              np.array([]),
                          ]
                      ),
                  )
                  np.testing.assert_equal(
                      got[1][constants.SLICE_KEY_TYPES_KEY],
                      types.VarLenTensorValue.from_dense_rows(
                          [
                              slicer_lib.slice_keys_to_numpy_array(
                                  [(("fixed_string", "fixed_string1"),)]
                              ),
                              slicer_lib.slice_keys_to_numpy_array(
                                  [(("fixed_string", "fixed_string2"),)]
                              ),
                              np.array([]),
                          ]
                      ),
                  )
  
              except AssertionError as err:
                  raise util.BeamAssertException(err)
  
          util.assert_that(result, check_result)
  
imports: import apache_beam
  from apache_beam.testing import util
  import numpy
  import pyarrow
  import tensorflow
  from tensorflow_model_analysis import constants
  from tensorflow_model_analysis.api import model_eval_lib
  from tensorflow_model_analysis.api import types
  from tensorflow_model_analysis.eval_saved_model import testutil
  from tensorflow_model_analysis.extractors import features_extractor
  from tensorflow_model_analysis.extractors import sql_slice_key_extractor
  from tensorflow_model_analysis.proto import config_pb2
  from tensorflow_model_analysis.slicer import slicer_lib
  from tfx_bsl.tfxio import tf_example_record
  from google.protobuf import text_format
  from tensorflow_metadata.proto.v0 import schema_pb2
label_desc: Use image node_id 5 for calling the SqlSliceKeyExtractorTest obj's underlying member method code with example usage: obj.testSqlSliceKeyExtractorWithMultipleSchema() without return types