{
  "title": "UniqueValueFromStyle Renderer",
  "type": "object",
  "$schema": "http://json-schema.org/draft-04/schema",
  "description": "This is a special version of UniqueValue Renderer, which loads uniqueValue infos from a style definition.",
  "properties": {
    "defaultLabel": {
      "type": "string",
      "description": "Default string for the default symbol used to draw unspecified values."
    },
    "defaultSymbol": {
      "description": "The defaultSymbol on the renderer that get assigned to features with no value or features that do not fall within the configured data.",
      "$ref": "symbol3D_schema.json"
    },
    "field1": {
      "type": "string",
      "description": "String value specifying the first field used to render matching values."
    },
    "styleName": {
      "type": "string",
      "description": "A registered web style name. Can not be used in conjunction with styleUrl."
    },
    "styleUrl": {
      "type": "string",
      "description": "URL that points to the web style definition. Can not be used in conjunction with styleName.",
      "format": "uri"
    },
    "type": {
      "type": "string",
      "description": "Specifies the type of renderer used.",
      "enum": [
        "uniqueValue"
      ]
    },
    "visualVariables": {
      "type": "array",
      "description": "An array of visualVariable objects used for continuous color or size, simple, and unique values with feature opacity.",
      "items": {
        "$ref": "visualVariable_schema.json"
      }
    }
  },
  "oneOf": [
    {
      "required": [
        "type",
        "styleName"
      ]
    },
    {
      "required": [
        "type",
        "styleUrl"
      ]
    }
  ],
  "additionalProperties": false,
  "esriDocumentation": {
    "examples": [
      {
        "title": "UniqueValueFromStyle Renderer",
        "code": {
          "renderer": {
            "type": "uniqueValue",
            "styleName": "EsriRealisticTreesStyle",
            "field1": "genus",
            "visualVariables": [
              {
                "type": "sizeInfo",
                "field": "height",
                "axis": "height",
                "valueUnit": "feet"
              },
              {
                "type": "sizeInfo",
                "field": "diameter",
                "axis": "widthAndDepth",
                "valueUnit": "feet"
              }
            ]
          }
        }
      }
    ]
  }
}
