// Configures two JSON schemas, with references. var jsonCode = [ '{', ' "p1": "v3",', ' "p2": false', "}" ].join('\n'); var modelUri = monaco.Uri.parse("a://b/foo.json"); // a made up unique URI for our model var model = monaco.editor.createModel(jsonCode, "json", modelUri); // configure the JSON language support with schemas and schema associations monaco.languages.json.jsonDefaults.setDiagnosticsOptions({ validate: true, schemas: [{ uri: "http://myserver/foo-schema.json", // id of the first schema fileMatch: [modelUri.toString()], // associate with our model schema: { type: "object", properties: { p1: { enum: ["v1", "v2"] }, p2: { $ref: "http://myserver/bar-schema.json" // reference the second schema } } } }, { uri: "http://myserver/bar-schema.json", // id of the second schema schema: { type: "object", properties: { q1: { enum: ["x1", "x2"] } } } }] }); monaco.editor.create(document.getElementById("container"), { model: model });