code: def test_read_from_json_splits_columns_when_necessary(self):
      json = {
          "question": [
              Token(x) for x in ["where", "is", "mersin", "?"]
          ],
          "columns": ["Name in English", "Location"],
          "cells": [
              ["Paradeniz", "Mersin with spaces"],
              ["Lake, Gala", "Edirne"],
          ],
      }
      graph = TableQuestionKnowledgeGraph.read_from_json(json)
      assert graph.entities == [
          "-1",
          "0",
          "1",
          "fb:cell.edirne",
          "fb:cell.lake_gala",
          "fb:cell.mersin_with_spaces",
          "fb:cell.paradeniz",
          "fb:part.gala",
          "fb:part.lake",
          "fb:part.paradeniz",
          "fb:row.row.location",
          "fb:row.row.name_in_english",
      ]
      assert graph.neighbors["fb:part.lake"] == []
      assert graph.neighbors["fb:part.gala"] == []
      assert graph.neighbors["fb:part.paradeniz"] == []
  
imports: from __future__ import absolute_import
  from allennlp.common.testing import AllenNlpTestCase
  from allennlp.data import Token
  from allennlp.semparse.contexts import TableQuestionKnowledgeGraph
label_desc: Use image node_id 3 for calling the TestTableQuestionKnowledgeGraph obj's underlying member method code with example usage: obj.test_read_from_json_splits_columns_when_necessary() without return types