{
    "properties" : {
        "bool" : { "type" : "boolean" },
        "int" : { "type" : "integer" },
        "unsigned_long" : { "type" : "unsigned_long" },
        "text" : { "type" : "text" },
        "keyword" : { "type" : "keyword" },
        "unsupported" : { "type" : "ip_range" },
        "date" : { "type" : "date" },
        "date_nanos" : { "type" : "date_nanos" },
        "shape": { "type" : "shape" },
        "geo_shape": { "type" : "geo_shape" },
        "binary": {"type" : "binary", "doc_values": false },
        "binary_stored": {"type" : "binary", "doc_values": true },
        "x" : {
            "type" : "text",
            "fields" : {
                "y" : {
                    "type" : "foobar",
                    "fields" : {
                        "z" : {
                            "properties" : {
                                "v" : {
                                    "type" : "keyword"
                                },
                                "w" : {
                                    "type" : "foo"
                                }
                            }
                        }
                    }
                }
            }
        },
        "some" : {
            "properties" : {
                "dotted" : {
                    "properties" : {
                        "field" : {
                            "type" : "keyword"
                        }
                    }
                },
                "string" : {
                    "type" : "text",
                    "fields" : {
                        "normalized" : {
                            "type" : "keyword",
                            "normalizer" : "some_normalizer"
                        },
                        "typical" : {
                            "type" : "keyword"
                        }
                    }
                },
                "ambiguous" : {
                    "type" : "text",
                    "fields" : {
                        "one" : {
                            "type" : "keyword"
                        },
                        "two" : {
                            "type" : "keyword"
                        },
                        "normalized" : {
                            "type" : "keyword",
                            "normalizer" : "some_normalizer"
                        }
                    }
                }
            }
        },
        "dep" : {
            "type" : "nested",
            "properties" : {
                "dep_name" : {
                    "type" : "text"
                },
                "dep_id" : {
                    "type" : "text",
                    "fields" : {
                        "keyword" : {
                            "type" : "keyword",
                            "ignore_above" : 256
                        }
                    }
                },
                "end_date" : {
                    "type" : "date"
                },
                "start_date" : {
                    "type" : "date"
                },
                "location" : {
                    "type" : "geo_point"
                }
            }
        }
    }
}
