{
  "type": "object",
  "properties": {
    "globalFilterModel": {
      "description": "Represents the name of the global OData filter model.",
      "pattern": "^[a-zA-Z0-9_\\\\.\\\\-\\\\|@]*$",
      "type": "string",
      "artifactType": "Manifest"
    },
    "globalFilterEntityType": {
      "description": "Represents the entity type to use as global filter in the smart filter bar control.",
      "pattern": "^[a-zA-Z0-9_\\\\.\\\\-\\\\|@]*$",
      "type": "string",
      "artifactType": "Manifest"
    },
    "globalFilterEntitySet": {
      "description": "Represents the entity set to use as global filter in the smart filter bar control.",
      "pattern": "^[a-zA-Z0-9_\\\\.\\\\-\\\\|@]*$",
      "type": "string",
      "artifactType": "Manifest"
    },
    "showBasicSearch": {
      "description": "Represents a switch to include basic search in the global filters. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "disableErrorPage": {
      "description": "Represents a switch to disable the error page shown on load of overview page when no data is retrieved from the backend. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "smartVariantRequired": {
      "description": "Represents a switch to activate smart variant management in the global filters. The default value is true.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "bHeaderExpanded": {
      "description": "Represents a switch to show smart filter bar in expanded or collapsed mode. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "containerLayout": {
      "$ref": "#/definitions/ContainerLayoutType",
      "description": "Represents the layout of the card container. The default value is fixed.",
      "artifactType": "Manifest"
    },
    "showDateInRelativeFormat": {
      "description": "Represents a switch to enable or disable relative or normal date formating. The default value is true.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "disableTableCardFlexibility": {
      "description": "Represents a switch to enable or disable the flexibility of table cards. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "enableLiveFilter": {
      "description": "Represents the switch to activate live update in the global filters, else manual update will be required. The default value is true.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "enableLazyRendering": {
      "description": "Enable loading of cards when they enter viewport. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "refreshStrategyOnAppRestore": {
      "$ref": "#/definitions/RefreshStrategiesPropDef",
      "description": "Represents the refresh strategies configured for OVP while coming back to the source app.",
      "artifactType": "Manifest"
    },
    "considerAnalyticalParameters": {
      "description": "Flag to enable or disable analytical parameter support for the smart filter bar. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "refreshIntervalInMinutes": {
      "description": "Time interval in minutes to auto refresh the card models. The default value is 1.",
      "type": "number",
      "artifactType": "Manifest"
    },
    "useDateRangeType": {
      "description": "Flag to enable or disable semantic date range control for the smart filter bar. The default value is false.",
      "type": "boolean",
      "artifactType": "Manifest"
    },
    "chartSettings": {
      "$ref": "#/definitions/ChartSettingsType",
      "description": "Represents the object to store analytical chart settings."
    },
    "filterSettings": {
      "description": "Represents the object to store filter bar configuration.",
      "type": "object",
      "properties": {
        "dateSettings": {
          "$ref": "#/definitions/DateRangeOVP",
          "description": "Represents the object to store the configuration for the date type's filter fields."
        }
      },
      "additionalProperties": false,
      "artifactType": "Manifest"
    },
    "dataLoadSettings": {
      "description": "Represents the object to define data loading behaviour for an overview page application.",
      "type": "object",
      "additionalProperties": {},
      "properties": {
        "loadDataOnAppLaunch": {
          "$ref": "#/definitions/LoadDataOnAppLaunchType",
          "description": "Data load behaviour options on application launch. The default value is 'always'."
        }
      },
      "artifactType": "Manifest"
    },
    "resizableLayout": {
      "description": "Represents the resizable layout.",
      "type": "object",
      "additionalProperties": {
        "$ref": "#/definitions/ResizableLayoutVariant"
      },
      "artifactType": "Manifest"
    },
    "cards": {
      "description": "Cards",
      "isViewNode": true,
      "type": "object",
      "additionalProperties": {
        "anyOf": [
          {
            "$ref": "#/definitions/CustomCard"
          },
          {
            "$ref": "#/definitions/ListCard"
          },
          {
            "$ref": "#/definitions/StackCard"
          },
          {
            "$ref": "#/definitions/LinklistCard"
          },
          {
            "$ref": "#/definitions/TableCard"
          },
          {
            "$ref": "#/definitions/AnalyticalCard"
          }
        ]
      }
    },
    "$schema": {
      "type": "string"
    }
  },
  "additionalProperties": false,
  "definitions": {
    "ContainerLayoutType": {
      "enum": [
        "fixed",
        "resizable"
      ],
      "type": "string"
    },
    "RefreshStrategiesPropDef": {
      "description": "Represents the refresh strategies configured for external display navigation while coming back to the source app",
      "type": "object",
      "properties": {
        "entitySets": {
          "description": "Represents the map of entity sets configured for refresh strategies",
          "type": "object",
          "additionalProperties": {}
        }
      },
      "additionalProperties": false
    },
    "ChartSettingsType": {
      "type": "object",
      "properties": {
        "showDataLabel": {
          "description": "Flag to enable data labels on analytical charts. The default value is false.",
          "type": "boolean",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false
    },
    "DateRangeOVP": {
      "type": "object",
      "properties": {
        "fields": {
          "description": "For a fields' list you can define the set of standard date range values separately.",
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/SelectedValues"
          }
        },
        "useDateRange": {
          "description": "If set to true all date fields with filter restriction interval will be treated as DateTimeRange filters.",
          "type": "boolean"
        },
        "selectedValues": {
          "description": "The selectedValues property is a set of standard date range values that you want to include or exclude.",
          "type": "array",
          "items": {
            "enum": [
              "DATE",
              "DATERANGE",
              "DAYS",
              "FROM",
              "LAST2WEEKS",
              "LAST3WEEKS",
              "LAST4WEEKS",
              "LAST5WEEKS",
              "LASTDAYS",
              "LASTMONTH",
              "LASTMONTHS",
              "LASTQUARTER",
              "LASTQUARTERS",
              "LASTWEEK",
              "LASTWEEKS",
              "LASTYEAR",
              "LASTYEARS",
              "MONTH",
              "NEXT",
              "NEXT2WEEKS",
              "NEXT3WEEKS",
              "NEXT4WEEKS",
              "NEXT5WEEKS",
              "NEXTDAYS",
              "NEXTMONTH",
              "NEXTMONTHS",
              "NEXTQUARTER",
              "NEXTQUARTERS",
              "NEXTWEEK",
              "NEXTWEEKS",
              "NEXTYEARS",
              "QUARTER",
              "QUARTER1",
              "QUARTER2",
              "QUARTER3",
              "QUARTER4",
              "SPECIFICMONTH",
              "THISMONTH",
              "THISQUARTER",
              "THISWEEK",
              "TO",
              "TODAY",
              "TODAYFROMTO",
              "TOMORROW",
              "WEEK",
              "YEAR",
              "YEARTODATE",
              "YESTERDAY"
            ],
            "type": "string"
          }
        },
        "exclude": {
          "description": "This property is set to True by default. This excludes all values given as selectedValues from the list of date range filters.\nIf the exclude property is set to False, the application shows only selected values in the list of date range filters.",
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "SelectedValues": {
      "isViewNode": false,
      "type": "object",
      "properties": {
        "selectedValues": {
          "description": "Defines a set of standard date range values that you want to include or exclude.",
          "type": "array",
          "items": {
            "enum": [
              "DATE",
              "DATERANGE",
              "DAYS",
              "FROM",
              "LAST2WEEKS",
              "LAST3WEEKS",
              "LAST4WEEKS",
              "LAST5WEEKS",
              "LASTDAYS",
              "LASTMONTH",
              "LASTMONTHS",
              "LASTQUARTER",
              "LASTQUARTERS",
              "LASTWEEK",
              "LASTWEEKS",
              "LASTYEAR",
              "LASTYEARS",
              "MONTH",
              "NEXT",
              "NEXT2WEEKS",
              "NEXT3WEEKS",
              "NEXT4WEEKS",
              "NEXT5WEEKS",
              "NEXTDAYS",
              "NEXTMONTH",
              "NEXTMONTHS",
              "NEXTQUARTER",
              "NEXTQUARTERS",
              "NEXTWEEK",
              "NEXTWEEKS",
              "NEXTYEARS",
              "QUARTER",
              "QUARTER1",
              "QUARTER2",
              "QUARTER3",
              "QUARTER4",
              "SPECIFICMONTH",
              "THISMONTH",
              "THISQUARTER",
              "THISWEEK",
              "TO",
              "TODAY",
              "TODAYFROMTO",
              "TOMORROW",
              "WEEK",
              "YEAR",
              "YEARTODATE",
              "YESTERDAY"
            ],
            "type": "string"
          }
        },
        "exclude": {
          "description": "The exclude property is set to True by default. This means excluding all values given as selectedValues from the list of date range filters. If the exclude property is set to False, the application shows only selected values in the list of date range filters.",
          "type": "boolean"
        },
        "customDateRangeImplementation": {
          "description": "This property references a JS class, which you use to modify the date range value list. You can either remove standard data range values or add custom values.\nThe customDateRangeImplementation setting takes priority followed by filter and selectedValues when excluding date range types.",
          "type": "string"
        },
        "filter": {
          "description": "You can use the filter settings to include and exclude specific date range values.",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "path": {
                "$ref": "#/definitions/FilterPathType",
                "description": "Choose 'key' to define filter values for single values of the date range, or 'category' to filter by a whole subset."
              },
              "contains": {
                "description": "Specifies a filter describing a set of values of the date range type.",
                "type": "string"
              },
              "equals": {
                "description": "Defines a single value of the standard date range type.",
                "type": "array",
                "items": {
                  "enum": [
                    "DATE",
                    "DATERANGE",
                    "DAYS",
                    "FROM",
                    "LAST2WEEKS",
                    "LAST3WEEKS",
                    "LAST4WEEKS",
                    "LAST5WEEKS",
                    "LASTDAYS",
                    "LASTMONTH",
                    "LASTMONTHS",
                    "LASTQUARTER",
                    "LASTQUARTERS",
                    "LASTWEEK",
                    "LASTWEEKS",
                    "LASTYEAR",
                    "LASTYEARS",
                    "MONTH",
                    "NEXT",
                    "NEXT2WEEKS",
                    "NEXT3WEEKS",
                    "NEXT4WEEKS",
                    "NEXT5WEEKS",
                    "NEXTDAYS",
                    "NEXTMONTH",
                    "NEXTMONTHS",
                    "NEXTQUARTER",
                    "NEXTQUARTERS",
                    "NEXTWEEK",
                    "NEXTWEEKS",
                    "NEXTYEARS",
                    "QUARTER",
                    "QUARTER1",
                    "QUARTER2",
                    "QUARTER3",
                    "QUARTER4",
                    "SPECIFICMONTH",
                    "THISMONTH",
                    "THISQUARTER",
                    "THISWEEK",
                    "TO",
                    "TODAY",
                    "TODAYFROMTO",
                    "TOMORROW",
                    "WEEK",
                    "YEAR",
                    "YEARTODATE",
                    "YESTERDAY"
                  ],
                  "type": "string"
                }
              },
              "exclude": {
                "description": "This property is set to True by default which excludes all values given as selectedValues from the list of date range filters.\nIf this property is set to False, the application shows only selected values in the list of date range filters.",
                "type": "boolean"
              }
            },
            "additionalProperties": false,
            "required": [
              "path"
            ]
          }
        },
        "defaultValue": {
          "$ref": "#/definitions/DefaultDateRange",
          "description": "You can set a default value for semantic date range."
        }
      },
      "additionalProperties": false
    },
    "FilterPathType": {
      "enum": [
        "category",
        "key"
      ],
      "type": "string"
    },
    "DefaultDateRange": {
      "type": "object",
      "properties": {
        "operation": {
          "$ref": "#/definitions/DefaultDateRangeValueType",
          "description": "The operation property is the value that will be set for semantic date range.",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "operation"
      ]
    },
    "DefaultDateRangeValueType": {
      "enum": [
        "DATETOYEAR",
        "LAST2WEEKS",
        "LAST3WEEKS",
        "LAST4WEEKS",
        "LAST5WEEKS",
        "LASTMONTH",
        "LASTQUARTER",
        "LASTWEEK",
        "LASTYEAR",
        "QUARTER1",
        "QUARTER2",
        "QUARTER3",
        "QUARTER4",
        "THISMONTH",
        "THISQUARTER",
        "THISWEEK",
        "THISYEAR",
        "TODAY",
        "TOMORROW",
        "YEARTODATE",
        "YESTERDAY"
      ],
      "type": "string"
    },
    "LoadDataOnAppLaunchType": {
      "enum": [
        "always",
        "ifAnyFilterExist",
        "never"
      ],
      "type": "string"
    },
    "ResizableLayoutVariant": {
      "description": "Represents the resizable layout variant\n\nThis interface was referenced by `undefined`'s JSON-Schema definition\nvia the `patternProperty` \"^cols_[0-9]+$\".",
      "type": "object",
      "additionalProperties": {
        "$ref": "#/definitions/ResizableLayoutVariantCardProperties"
      }
    },
    "ResizableLayoutVariantCardProperties": {
      "description": "Represents the card properties is a layout variant\n\nThis interface was referenced by `ResizableLayoutVariant`'s JSON-Schema definition\nvia the `patternProperty` \"^[a-zA-Z0-9_\\.\\-]+$\".",
      "type": "object",
      "properties": {
        "col": {
          "description": "Represents the grid column",
          "type": "number"
        },
        "row": {
          "description": "Represents the grid row",
          "type": "number"
        },
        "colSpan": {
          "description": "Represents the column span",
          "type": "number"
        },
        "rowSpan": {
          "description": "Represents the row span",
          "type": "number"
        },
        "visible": {
          "description": "Represents the visibility of the card",
          "type": "boolean"
        }
      },
      "additionalProperties": false,
      "required": [
        "col",
        "colSpan",
        "row",
        "rowSpan"
      ]
    },
    "CustomCard": {
      "description": "Custom Card",
      "isViewNode": true,
      "type": "object",
      "properties": {
        "model": {
          "description": "Represents the model for the card",
          "type": "string",
          "artifactType": "Manifest"
        },
        "template": {
          "description": "Represents the card component path to use for this card.",
          "pattern": "^(?!(sap.ovp.cards.charts.analytical|sap.ovp.cards.v4.charts.analytical|sap.ovp.cards.linklist|sap.ovp.cards.v4.linklist|sap.ovp.cards.list|sap.ovp.cards.v4.list|sap.ovp.cards.stack|sap.ovp.cards.table|sap.ovp.cards.v4.table)$).*$",
          "type": "string",
          "artifactType": "Manifest"
        },
        "settings": {
          "$ref": "#/definitions/CommonCardSettings",
          "description": "Represents the properties that are passed to the custom card.",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "model",
        "template"
      ]
    },
    "CommonCardSettings": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "DefaultSpanObject": {
      "type": "object",
      "properties": {
        "cols": {
          "description": "Represents the number of grid columns.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "rows": {
          "description": "Represents the number of grid rows.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "showOnlyHeader": {
          "description": "Determines if only the header part of a card is shown in the resizable layout.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "minimumTitleRow": {
          "description": "Sets the number of lines for the title row. The maximum is 3.",
          "type": "number",
          "artifactType": "Manifest"
        },
        "minimumSubTitleRow": {
          "description": "Sets the number of lines for the subtitle row. The maximum is 2.",
          "type": "number",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "cols",
        "rows"
      ]
    },
    "PlotAreaDef": {
      "description": "Plot area is a parent property which defines multiple other properties for smoothness and marker size",
      "type": "object",
      "properties": {
        "isSmoothed": {
          "description": "Represents whether smoother curves are required or not",
          "type": "boolean"
        },
        "markerSize": {
          "description": "Represents the size of the markers in scatter plots",
          "type": "number"
        },
        "dataLabel": {
          "description": "dataLabel is a parent property that defines other properties for type",
          "type": "object",
          "properties": {
            "type": {
              "description": "Defines whether to display percentage values or actual counts in the donut chart",
              "enum": [
                "percentage",
                "value"
              ],
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "TimeAxisDef": {
      "description": "Represents the configuration to customize the time axis",
      "type": "object",
      "additionalProperties": {},
      "properties": {
        "levels": {
          "description": "Plot area is a parent property which defines multiple other properties for smoothness and marker size",
          "type": "array",
          "items": {}
        }
      }
    },
    "ColorPaletteSemanticColoringType": {
      "description": "Semantic coloring, up to four colors can be defined",
      "type": "object",
      "properties": {
        "0": {
          "type": "object",
          "properties": {
            "color": {
              "$ref": "#/definitions/ChartColor",
              "description": "color contains the value of the color for the particular state"
            },
            "legendText": {
              "description": "The legend text for the color",
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "color",
            "legendText"
          ]
        },
        "1": {
          "type": "object",
          "properties": {
            "color": {
              "$ref": "#/definitions/ChartColor",
              "description": "color contains the value of the color for the particular state"
            },
            "legendText": {
              "description": "The legend text for the color",
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "color",
            "legendText"
          ]
        },
        "2": {
          "type": "object",
          "properties": {
            "color": {
              "$ref": "#/definitions/ChartColor",
              "description": "color contains the value of the color for the particular state"
            },
            "legendText": {
              "description": "The legend text for the color",
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "color",
            "legendText"
          ]
        },
        "3": {
          "type": "object",
          "properties": {
            "color": {
              "$ref": "#/definitions/ChartColor",
              "description": "color contains the value of the color for the particular state"
            },
            "legendText": {
              "description": "The legend text for the color",
              "type": "string"
            }
          },
          "additionalProperties": false,
          "required": [
            "color",
            "legendText"
          ]
        },
        "colorPaletteType": {
          "type": "string",
          "const": "SemanticColoring"
        }
      },
      "additionalProperties": false,
      "required": [
        "0",
        "1",
        "colorPaletteType"
      ]
    },
    "ChartColor": {
      "enum": [
        "sapUiChartPaletteNoSemDiv1",
        "sapUiChartPaletteNoSemDiv1Dark1",
        "sapUiChartPaletteNoSemDiv1Dark2",
        "sapUiChartPaletteNoSemDiv1Light1",
        "sapUiChartPaletteNoSemDiv1Light2",
        "sapUiChartPaletteNoSemDiv1Light3",
        "sapUiChartPaletteQualitativeHue1",
        "sapUiChartPaletteQualitativeHue10",
        "sapUiChartPaletteQualitativeHue11",
        "sapUiChartPaletteQualitativeHue12",
        "sapUiChartPaletteQualitativeHue13",
        "sapUiChartPaletteQualitativeHue14",
        "sapUiChartPaletteQualitativeHue15",
        "sapUiChartPaletteQualitativeHue16",
        "sapUiChartPaletteQualitativeHue17",
        "sapUiChartPaletteQualitativeHue18",
        "sapUiChartPaletteQualitativeHue19",
        "sapUiChartPaletteQualitativeHue2",
        "sapUiChartPaletteQualitativeHue20",
        "sapUiChartPaletteQualitativeHue21",
        "sapUiChartPaletteQualitativeHue22",
        "sapUiChartPaletteQualitativeHue3",
        "sapUiChartPaletteQualitativeHue4",
        "sapUiChartPaletteQualitativeHue5",
        "sapUiChartPaletteQualitativeHue6",
        "sapUiChartPaletteQualitativeHue7",
        "sapUiChartPaletteQualitativeHue8",
        "sapUiChartPaletteQualitativeHue9",
        "sapUiChartPaletteSemanticBad",
        "sapUiChartPaletteSemanticBadDark1",
        "sapUiChartPaletteSemanticBadDark2",
        "sapUiChartPaletteSemanticBadLight1",
        "sapUiChartPaletteSemanticBadLight2",
        "sapUiChartPaletteSemanticBadLight3",
        "sapUiChartPaletteSemanticCritical",
        "sapUiChartPaletteSemanticCriticalDark1",
        "sapUiChartPaletteSemanticCriticalDark2",
        "sapUiChartPaletteSemanticCriticalLight1",
        "sapUiChartPaletteSemanticCriticalLight2",
        "sapUiChartPaletteSemanticCriticalLight3",
        "sapUiChartPaletteSemanticGood",
        "sapUiChartPaletteSemanticGoodDark1",
        "sapUiChartPaletteSemanticGoodDark2",
        "sapUiChartPaletteSemanticGoodLight1",
        "sapUiChartPaletteSemanticGoodLight2",
        "sapUiChartPaletteSemanticGoodLight3",
        "sapUiChartPaletteSemanticNeutral",
        "sapUiChartPaletteSemanticNeutralDark1",
        "sapUiChartPaletteSemanticNeutralDark2",
        "sapUiChartPaletteSemanticNeutralLight1",
        "sapUiChartPaletteSemanticNeutralLight2",
        "sapUiChartPaletteSemanticNeutralLight3",
        "sapUiChartPaletteSequentialHue1",
        "sapUiChartPaletteSequentialHue1Dark1",
        "sapUiChartPaletteSequentialHue1Dark2",
        "sapUiChartPaletteSequentialHue1Light1",
        "sapUiChartPaletteSequentialHue1Light2",
        "sapUiChartPaletteSequentialHue1Light3",
        "sapUiChartPaletteSequentialHue2",
        "sapUiChartPaletteSequentialHue2Dark1",
        "sapUiChartPaletteSequentialHue2Dark2",
        "sapUiChartPaletteSequentialHue2Light1",
        "sapUiChartPaletteSequentialHue2Light2",
        "sapUiChartPaletteSequentialHue2Light3",
        "sapUiChartPaletteSequentialHue3",
        "sapUiChartPaletteSequentialHue3Dark1",
        "sapUiChartPaletteSequentialHue3Dark2",
        "sapUiChartPaletteSequentialHue3Light1",
        "sapUiChartPaletteSequentialHue3Light2",
        "sapUiChartPaletteSequentialHue3Light3",
        "sapUiChartPaletteSequentialHue6",
        "sapUiChartPaletteSequentialHue6Dark1",
        "sapUiChartPaletteSequentialHue6Dark2",
        "sapUiChartPaletteSequentialHue6Light1",
        "sapUiChartPaletteSequentialHue6Light2",
        "sapUiChartPaletteSequentialHue6Light3",
        "sapUiChartPaletteSequentialNeutral",
        "sapUiChartPaletteSequentialNeutralDark1",
        "sapUiChartPaletteSequentialNeutralDark2",
        "sapUiChartPaletteSequentialNeutralLight1",
        "sapUiChartPaletteSequentialNeutralLight2",
        "sapUiChartPaletteSequentialNeutralLight3",
        "sapUiChartZeroAxisColor",
        "sapUiChoroplethRegionBG",
        "sapUiCriticalElement",
        "sapUiNegativeElement",
        "sapUiNeutralElement",
        "sapUiPositiveElement"
      ],
      "type": "string"
    },
    "ListCard": {
      "description": "List Card",
      "isViewNode": true,
      "controlProperty": "template",
      "type": "object",
      "properties": {
        "model": {
          "description": "Represents the model for the list card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "template": {
          "description": "Represents the card component path to use.",
          "enum": [
            "sap.ovp.cards.list",
            "sap.ovp.cards.v4.list"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "settings": {
          "$ref": "#/definitions/ListCardSettings",
          "description": "Represents the properties that are passed to the list card."
        }
      },
      "additionalProperties": false,
      "required": [
        "model",
        "template"
      ]
    },
    "ListCardSettings": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "listFlavor": {
          "$ref": "#/definitions/ListFlavorType",
          "description": "Represents the flavor of the list to use in this card.",
          "artifactType": "Manifest"
        },
        "listType": {
          "$ref": "#/definitions/ListTypeType",
          "description": "Represents the type of list to use for this card.\nThe list can be extended to display more information or condensed to take up less space.",
          "artifactType": "Manifest"
        },
        "showLineItemDetail": {
          "description": "Flag for show line item detail in list and table card.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableAddToInsights": {
          "description": "Removes the option to add cards to the Insights section.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "imageSupported": {
          "description": "Flag for enabling images in a condensed list card.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "valueSelectionInfo": {
          "description": "Represents things like people, number of items.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "ListFlavorType": {
      "enum": [
        "bar",
        "carousel",
        "standard"
      ],
      "type": "string"
    },
    "ListTypeType": {
      "enum": [
        "condensed",
        "extended"
      ],
      "type": "string"
    },
    "StackCard": {
      "description": "Stack Card",
      "isViewNode": true,
      "controlProperty": "template",
      "type": "object",
      "properties": {
        "model": {
          "description": "Represents the model for the card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "template": {
          "description": "Represents the component path to use for this card.",
          "type": "string",
          "const": "sap.ovp.cards.stack",
          "artifactType": "Manifest"
        },
        "settings": {
          "$ref": "#/definitions/StackCardSettings",
          "description": "Represents the properties that are passed to the stack card."
        }
      },
      "additionalProperties": false,
      "required": [
        "model",
        "template"
      ]
    },
    "StackCardSettings": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "itemText": {
          "description": "Represents the user defined string in placeholder card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "objectStreamCardsNavigationProperty": {
          "description": "The navigation property used to display information from a secondary entity set.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "objectStreamCardsSettings": {
          "$ref": "#/definitions/ObjectStreamCardsSettingsDef",
          "description": "Configures additional settings for the cards displayed in the object stream.",
          "artifactType": "Manifest"
        },
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "ObjectStreamCardsSettingsDef": {
      "description": "Represents the Object Stream properties - properties that are passed to the Object Stream cards",
      "type": "object",
      "additionalProperties": {},
      "properties": {
        "showFirstActionInFooter": {
          "description": "Represents the flag to show first action in footer of the Quickview cards",
          "type": "boolean"
        },
        "customActions": {
          "description": "Represents the custom actions in the Quick View Cards",
          "minItems": 1,
          "type": "array",
          "items": [
            {
              "$ref": "#/definitions/CustomActionsSetting"
            }
          ],
          "additionalItems": {
            "$ref": "#/definitions/CustomActionsSetting"
          }
        }
      }
    },
    "CustomActionsSetting": {
      "description": "Represents the properties for the custom actions in the Quick View Cards",
      "type": "object",
      "additionalProperties": {},
      "properties": {
        "text": {
          "description": "Text displayed for extended actions in Quick View",
          "type": "string"
        },
        "press": {
          "description": "Name of the press handler for extended actions in Quick View",
          "type": "string"
        },
        "position": {
          "description": "Position of extended actions in Quick View",
          "type": "number"
        }
      }
    },
    "LinklistCard": {
      "description": "Link List Card",
      "isViewNode": true,
      "controlProperty": "template",
      "type": "object",
      "properties": {
        "model": {
          "description": "Represents the model for the link list card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "template": {
          "description": "Represents the component path to use for this card.",
          "enum": [
            "sap.ovp.cards.linklist",
            "sap.ovp.cards.v4.linklist"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "settings": {
          "$ref": "#/definitions/LinkListCardSettings",
          "description": "Represents the properties that are passed to the link list card."
        }
      },
      "additionalProperties": false,
      "required": [
        "template"
      ]
    },
    "LinkListCardSettings": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "listFlavor": {
          "$ref": "#/definitions/LinkListFlavorType",
          "description": "listFlavor represents the flavor of the list to use in this card.",
          "artifactType": "Manifest"
        },
        "headerAnnotationPath": {
          "description": "headerAnnotationPath represents the path to a HeaderInfo annotation.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "staticContent": {
          "description": "staticContent represents the content of a static link list card.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/StaticContent"
          },
          "artifactType": "Manifest"
        },
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "LinkListFlavorType": {
      "enum": [
        "carousel",
        "standard"
      ],
      "type": "string"
    },
    "StaticContent": {
      "type": "object",
      "properties": {
        "title": {
          "description": "The language-dependent title of the static content.",
          "i18nClassification": "TIT: Title of the static content",
          "type": "string"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the static content.",
          "i18nClassification": "TIT: Subtitle of the static content",
          "type": "string"
        },
        "imageUri": {
          "description": "The URI for the image of the static content.",
          "type": "string"
        },
        "targetUri": {
          "description": "The URI for the target of the static content.",
          "type": "string"
        },
        "imageAltText": {
          "description": "The alternative text for the image of the static content.",
          "i18nClassification": "ALT: The alternative text for the image of the static content.",
          "type": "string"
        },
        "semanticObject": {
          "description": "Used to provide intent-based navigation.",
          "type": "string"
        },
        "action": {
          "description": "Used to provide intent based navigation.",
          "type": "string"
        },
        "openInNewWindow": {
          "description": "Open static content in a new window.",
          "type": "boolean"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "TableCard": {
      "description": "Table Card",
      "isViewNode": true,
      "controlProperty": "template",
      "type": "object",
      "properties": {
        "model": {
          "description": "Represents the model for the table card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "template": {
          "description": "Represents the component path to use for this card.",
          "enum": [
            "sap.ovp.cards.table",
            "sap.ovp.cards.v4.table"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "settings": {
          "$ref": "#/definitions/TableCardSettings",
          "description": "Represents the properties that are passed to the table card."
        }
      },
      "additionalProperties": false,
      "required": [
        "model",
        "template"
      ]
    },
    "TableCardSettings": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "showLineItemDetail": {
          "description": "Flag for showing line item details in list and table cards.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableAddToInsights": {
          "description": "Removes the option to add cards to the Insights section.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "valueSelectionInfo": {
          "description": "Represents things like people, number of items.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "AnalyticalCard": {
      "description": "Analytical Card",
      "isViewNode": true,
      "controlProperty": "template",
      "type": "object",
      "properties": {
        "model": {
          "description": "Represents the model for the Analytical Card",
          "type": "string",
          "artifactType": "Manifest"
        },
        "template": {
          "description": "Represents the component path to use for this card.",
          "enum": [
            "sap.ovp.cards.charts.analytical",
            "sap.ovp.cards.v4.charts.analytical"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "settings": {
          "description": "Represents the properties that are passed to the analytical card.",
          "anyOf": [
            {
              "$ref": "#/definitions/AnalyticalCardSettings"
            },
            {
              "$ref": "#/definitions/AnalyticalCardSettingsv4"
            }
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "model",
        "template"
      ]
    },
    "AnalyticalCardSettings": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "chartAnnotationPath": {
          "description": "Represents the chart annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "ignoreSapText": {
          "description": "Represents the flag to indicate priority of number formatting over sap text.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableAddToInsights": {
          "description": "Removes the option to add cards to the Insights section.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "navigation": {
          "$ref": "#/definitions/CardNavigationType",
          "description": "Represents the configuration to alter the navigation mode.",
          "artifactType": "Manifest"
        },
        "valueSelectionInfo": {
          "description": "Represents things like people, number of items.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "chartProperties": {
          "description": "This property is responsible for setting specific chart settings.",
          "type": "object",
          "properties": {
            "plotArea": {
              "$ref": "#/definitions/PlotAreaDef"
            },
            "timeAxis": {
              "$ref": "#/definitions/TimeAxisDef"
            }
          },
          "additionalProperties": false,
          "artifactType": "Manifest"
        },
        "colorPalette": {
          "description": "Color palette for semantic coloring.",
          "controlProperty": "colorPaletteType",
          "anyOf": [
            {
              "$ref": "#/definitions/ColorPaletteSemanticColoringType"
            },
            {
              "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
              "type": "object",
              "properties": {
                "colorPaletteType": {
                  "type": "string",
                  "const": "StableColoring"
                },
                "dimensionValueToColor": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "string"
                  }
                }
              },
              "additionalProperties": false,
              "required": [
                "colorPaletteType",
                "dimensionValueToColor"
              ]
            },
            {
              "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
              "type": "object",
              "properties": {
                "colorPaletteType": {
                  "type": "string",
                  "const": "MapDimensionValues"
                },
                "dimensionSettings": {
                  "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                  "type": "object",
                  "additionalProperties": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "$ref": "#/definitions/ChartColor",
                          "description": "color contains the value of the color for the particular state"
                        },
                        "dimensionValue": {
                          "type": "string"
                        },
                        "index": {
                          "description": "If the index property is maintained, legends will be positioned in that order",
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "color",
                        "dimensionValue"
                      ]
                    }
                  }
                }
              },
              "additionalProperties": false,
              "required": [
                "colorPaletteType",
                "dimensionSettings"
              ]
            }
          ]
        },
        "bEnableStableColors": {
          "description": "Enables the configuration of an analytical card with a column stack chart to map the dimension values to specific colors.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "CardNavigationType": {
      "enum": [
        "chartNav",
        "dataPointNav",
        "headerNav",
        "noHeaderNav"
      ],
      "type": "string"
    },
    "AnalyticalCardSettingsv4": {
      "displayName": "settings",
      "type": "object",
      "properties": {
        "measureAggregate": {
          "$ref": "#/definitions/MeasureAggregateSettings",
          "artifactType": "Manifest"
        },
        "chartAnnotationPath": {
          "description": "Represents the chart annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "ignoreSapText": {
          "description": "Represents the flag to indicate priority of number formatting over sap text.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableAddToInsights": {
          "description": "Removes the option to add cards to the Insights section.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "navigation": {
          "$ref": "#/definitions/CardNavigationType",
          "description": "Represents the configuration to alter the navigation mode.",
          "artifactType": "Manifest"
        },
        "valueSelectionInfo": {
          "description": "Represents things like people, number of items.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "chartProperties": {
          "description": "This property is responsible for setting specific chart settings.",
          "type": "object",
          "properties": {
            "plotArea": {
              "$ref": "#/definitions/PlotAreaDef"
            },
            "timeAxis": {
              "$ref": "#/definitions/TimeAxisDef"
            }
          },
          "additionalProperties": false,
          "artifactType": "Manifest"
        },
        "colorPalette": {
          "description": "Color palette for semantic coloring.",
          "controlProperty": "colorPaletteType",
          "anyOf": [
            {
              "$ref": "#/definitions/ColorPaletteSemanticColoringType"
            },
            {
              "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
              "type": "object",
              "properties": {
                "colorPaletteType": {
                  "type": "string",
                  "const": "StableColoring"
                },
                "dimensionValueToColor": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "string"
                  }
                }
              },
              "additionalProperties": false,
              "required": [
                "colorPaletteType",
                "dimensionValueToColor"
              ]
            },
            {
              "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
              "type": "object",
              "properties": {
                "colorPaletteType": {
                  "type": "string",
                  "const": "MapDimensionValues"
                },
                "dimensionSettings": {
                  "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                  "type": "object",
                  "additionalProperties": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "object",
                      "properties": {
                        "color": {
                          "$ref": "#/definitions/ChartColor",
                          "description": "color contains the value of the color for the particular state"
                        },
                        "dimensionValue": {
                          "type": "string"
                        },
                        "index": {
                          "description": "If the index property is maintained, legends will be positioned in that order",
                          "type": "number"
                        }
                      },
                      "additionalProperties": false,
                      "required": [
                        "color",
                        "dimensionValue"
                      ]
                    }
                  }
                }
              },
              "additionalProperties": false,
              "required": [
                "colorPaletteType",
                "dimensionSettings"
              ]
            }
          ]
        },
        "bEnableStableColors": {
          "description": "Enables the configuration of an analytical card with a column stack chart to map the dimension values to specific colors.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "entitySet": {
          "description": "Represents the dominant entity set that will be displayed in the given card.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "title": {
          "description": "The language-dependent title of the card, used in the card header.",
          "i18nClassification": "TIT: Title of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "subTitle": {
          "description": "The language-dependent subtitle of the card, used in the card header.",
          "i18nClassification": "TIT: Subtitle of the card, used in the card header",
          "type": "string",
          "artifactType": "Manifest"
        },
        "annotationPath": {
          "description": "Represents the annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "identificationAnnotationPath": {
          "description": "Represents the identification annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "dataPointAnnotationPath": {
          "description": "Represents the data point annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionAnnotationPath": {
          "description": "Represents the selection annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "presentationAnnotationPath": {
          "description": "Represents the presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "selectionPresentationAnnotationPath": {
          "description": "Represents the selection presentation annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "kpiAnnotationPath": {
          "description": "Represents the KPI annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "category": {
          "description": "The category of the card, as used in the card header.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "defaultSpan": {
          "description": "To load cards with specific requirements, define a default size as part of the card definition in the descriptor file.",
          "anyOf": [
            {
              "$ref": "#/definitions/DefaultSpanObject"
            },
            {
              "const": "auto",
              "type": "string"
            }
          ]
        },
        "requireAppAuthorization": {
          "description": "Define an authorization check at card level.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "tabs": {
          "description": "Represents the card with view switch control.",
          "type": "array",
          "items": {
            "additionalProperties": false,
            "type": "object",
            "properties": {
              "annotationPath": {
                "description": "Represents the annotation path",
                "type": "string"
              },
              "selectionAnnotationPath": {
                "description": "Represents the selection annotation path",
                "type": "string"
              },
              "chartAnnotationPath": {
                "description": "Represents the chart annotation path",
                "type": "string"
              },
              "presentationAnnotationPath": {
                "description": "Represents the presentation annotation path",
                "type": "string"
              },
              "dataPointAnnotationPath": {
                "description": "Represents the data point annotation path",
                "type": "string"
              },
              "identificationAnnotationPath": {
                "description": "Represents the identification annotation path",
                "type": "string"
              },
              "dynamicSubtitleAnnotationPath": {
                "description": "Represents the dynamic subtitle annotation path",
                "type": "string"
              },
              "value": {
                "description": "Represents the drop down value to be shown",
                "type": "string"
              },
              "chartProperties": {
                "description": "This property is responsible for setting specific chart settings",
                "type": "object",
                "properties": {
                  "plotArea": {
                    "$ref": "#/definitions/PlotAreaDef"
                  },
                  "timeAxis": {
                    "$ref": "#/definitions/TimeAxisDef"
                  }
                },
                "additionalProperties": false
              },
              "colorPalette": {
                "anyOf": [
                  {
                    "$ref": "#/definitions/ColorPaletteSemanticColoringType"
                  },
                  {
                    "description": "For donut charts, a specific color can be mapped to a particular dimension value, so that a stable coloring can be enabled",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "StableColoring"
                      },
                      "dimensionValueToColor": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionValueToColor"
                    ]
                  },
                  {
                    "description": "For columnn stack charts, rules can be defined to map a specific color to a particular dimension value",
                    "type": "object",
                    "properties": {
                      "colorPaletteType": {
                        "type": "string",
                        "const": "MapDimensionValues"
                      },
                      "dimensionSettings": {
                        "description": "For each dimension value to be colored, color and dimensionValue needs to be customized as a rule",
                        "type": "object",
                        "additionalProperties": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "object",
                            "properties": {
                              "color": {
                                "$ref": "#/definitions/ChartColor",
                                "description": "color contains the value of the color for the particular state"
                              },
                              "dimensionValue": {
                                "type": "string"
                              },
                              "index": {
                                "description": "If the index property is maintained, legends will be positioned in that order",
                                "type": "number"
                              }
                            },
                            "additionalProperties": false,
                            "required": [
                              "color",
                              "dimensionValue"
                            ]
                          }
                        }
                      }
                    },
                    "additionalProperties": false,
                    "required": [
                      "colorPaletteType",
                      "dimensionSettings"
                    ]
                  }
                ]
              }
            }
          },
          "artifactType": "Manifest"
        },
        "addODataSelect": {
          "description": "Determines if the $Select parameter shall be added to data fetch requests.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "sortBy": {
          "description": "Defines the property by which the list is sorted.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "sortOrder": {
          "description": "Sort order (ascending or descending).",
          "enum": [
            "ascending",
            "descending"
          ],
          "type": "string",
          "artifactType": "Manifest"
        },
        "dynamicSubtitleAnnotationPath": {
          "description": "Represents the dynamic subtitle annotation path.",
          "type": "string",
          "artifactType": "Manifest"
        },
        "showRefresh": {
          "description": "Determines if the refresh icon is shown under a card's more actions. The default value is true.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "enableLocaleCurrencyFormatting": {
          "description": "Represents the flag to indicate the use of object number/smart field.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showFilterInHeader": {
          "description": "Determines if filters are shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "showSortingInHeader": {
          "description": "Determines if sorting is shown in card headers.",
          "type": "boolean",
          "artifactType": "Manifest"
        },
        "customParams": {
          "description": "Custom parameters for intent-based navigation to the target application.\nEnter the name of the custom parameter function defined in your custom controller file.",
          "type": "string",
          "artifactType": "Manifest"
        }
      },
      "additionalProperties": false,
      "required": [
        "title"
      ]
    },
    "MeasureAggregateSettings": {
      "type": "object",
      "properties": {
        "Axis1": {
          "$ref": "#/definitions/MeasureAggregateValues"
        },
        "Axis2": {
          "$ref": "#/definitions/MeasureAggregateValues"
        },
        "Axis3": {
          "$ref": "#/definitions/MeasureAggregateValues"
        }
      },
      "additionalProperties": false
    },
    "MeasureAggregateValues": {
      "enum": [
        "$count",
        "average",
        "max",
        "min",
        "sum"
      ],
      "type": "string"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}