Skip to content

Instantly share code, notes, and snippets.

@Hugoberry
Created August 22, 2023 09:21
Show Gist options
  • Save Hugoberry/f905ee328a93facfa02e8acc8c677bef to your computer and use it in GitHub Desktop.
Save Hugoberry/f905ee328a93facfa02e8acc8c677bef to your computer and use it in GitHub Desktop.
VPAX VertiPaq Analyzer schema and example https://jsonhero.io/j/mFFhtpW86TFC and https://jsonhero.io/j/PS9LBqBTctw6
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"DaxModelVersion": {
"type": "string"
},
"ExtractorApp": {
"type": "string"
},
"ExtractorAppVersion": {
"type": "string"
},
"ExtractorLib": {
"type": "string"
},
"ExtractorLibVersion": {
"type": "string"
},
"DaxModelLib": {
"type": "string"
},
"DaxModelLibVersion": {
"type": "string"
},
"ServerName": {
"type": "string"
},
"ModelName": {
"type": "string"
},
"CompatibilityLevel": {
"type": "integer"
},
"CompatibilityMode": {
"type": "string"
},
"ExtractionDate": {
"type": "string",
"format": "date-time"
},
"LastDataRefresh": {
"type": "string",
"format": "date-time"
},
"LastProcessed": {
"type": "string",
"format": "date-time"
},
"LastUpdate": {
"type": "string",
"format": "date-time"
},
"Version": {
"type": "integer"
},
"Tables": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Model": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"TableName": {
"type": "string"
},
"TableType": {
"type": [
"string",
"null"
]
},
"IsHidden": {
"type": "boolean"
},
"IsPrivate": {
"type": "boolean"
},
"IsLocalDateTable": {
"type": "boolean"
},
"IsTemplateDateTable": {
"type": "boolean"
},
"TableExpression": {
"type": [
"string",
"null"
]
},
"RowsCount": {
"type": "integer"
},
"ReferentialIntegrityViolationCount": {
"type": "integer"
},
"CalculationGroup": {
"type": "null"
},
"Description": {
"type": "string"
},
"IsReferenced": {
"type": "boolean"
},
"HasDualPartitions": {
"type": "boolean"
},
"HasDirectQueryPartitions": {
"type": "boolean"
},
"IsDateTable": {
"type": "boolean"
},
"Columns": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Table": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"ColumnName": {
"type": "string"
},
"ColumnCardinality": {
"type": "integer"
},
"DataType": {
"type": "string"
},
"ColumnType": {
"type": "string"
},
"IsHidden": {
"type": "boolean"
},
"Encoding": {
"type": "string"
},
"ColumnExpression": {
"type": [
"string",
"null"
]
},
"DisplayFolder": {
"type": "string"
},
"FormatString": {
"type": "string"
},
"Description": {
"type": "string"
},
"EncodingHint": {
"type": "string"
},
"IsAvailableInMDX": {
"type": "boolean"
},
"IsKey": {
"type": "boolean"
},
"IsNullable": {
"type": "boolean"
},
"IsUnique": {
"type": "boolean"
},
"KeepUniqueRows": {
"type": "boolean"
},
"SortByColumnName": {
"type": [
"string",
"null"
]
},
"GroupByColumns": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"$values": {
"type": "array",
"items": false
}
},
"required": [
"$id",
"$values"
]
},
"State": {
"type": "string"
},
"IsRowNumber": {
"type": "boolean"
},
"IsCalculationGroupAttribute": {
"type": "boolean"
},
"IsReferenced": {
"type": "boolean"
},
"DictionarySize": {
"type": "integer"
},
"DataSize": {
"type": "integer"
},
"HierarchiesSize": {
"type": "integer"
},
"TotalSize": {
"type": "integer"
},
"Selectivity": {
"type": [
"number",
"null"
]
},
"ColumnHierarchies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Column": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"StructureName": {
"type": "string"
},
"SegmentNumber": {
"type": "integer"
},
"TablePartitionNumber": {
"type": "integer"
},
"UsedSize": {
"type": "integer"
}
},
"required": [
"$id",
"Column",
"StructureName",
"SegmentNumber",
"TablePartitionNumber",
"UsedSize"
]
}
},
"ColumnSegments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Column": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"Partition": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Table": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"PartitionName": {
"type": "string"
},
"PartitionNumber": {
"type": "integer"
},
"Description": {
"type": "null"
},
"State": {
"type": "integer"
},
"Type": {
"type": "integer"
},
"Mode": {
"type": "integer"
},
"RefreshedTime": {
"type": "string",
"format": "date-time"
},
"$ref": {
"type": "string"
}
}
},
"SegmentNumber": {
"type": "integer"
},
"SegmentRows": {
"type": "integer"
},
"UsedSize": {
"type": "integer"
},
"CompressionType": {
"type": "string"
},
"BitsCount": {
"type": "integer"
},
"BookmarkBitsCount": {
"type": "integer"
},
"VertipaqState": {
"type": "string"
},
"IsPageable": {
"type": "null"
},
"IsResident": {
"type": "null"
},
"Temperature": {
"type": "null"
},
"LastAccessed": {
"type": "null"
}
},
"required": [
"$id",
"Column",
"Partition",
"SegmentNumber",
"SegmentRows",
"UsedSize",
"CompressionType",
"BitsCount",
"BookmarkBitsCount",
"VertipaqState",
"IsPageable",
"IsResident",
"Temperature",
"LastAccessed"
]
}
}
},
"required": [
"$id",
"Table",
"ColumnName",
"ColumnCardinality",
"DataType",
"ColumnType",
"IsHidden",
"Encoding",
"ColumnExpression",
"DisplayFolder",
"FormatString",
"Description",
"EncodingHint",
"IsAvailableInMDX",
"IsKey",
"IsNullable",
"IsUnique",
"KeepUniqueRows",
"SortByColumnName",
"GroupByColumns",
"State",
"IsRowNumber",
"IsCalculationGroupAttribute",
"IsReferenced",
"DictionarySize",
"DataSize",
"HierarchiesSize",
"TotalSize",
"Selectivity",
"ColumnHierarchies",
"ColumnSegments"
]
}
},
"Measures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Table": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"MeasureName": {
"type": "string"
},
"MeasureExpression": {
"type": "string"
},
"DisplayFolder": {
"type": "string"
},
"Description": {
"type": "string"
},
"IsHidden": {
"type": "boolean"
},
"DataType": {
"type": "string"
},
"DetailRowsExpression": {
"type": "null"
},
"FormatString": {
"type": "string"
},
"KpiStatusExpression": {
"type": "null"
},
"KpiTargetExpression": {
"type": "null"
},
"KpiTargetFormatString": {
"type": "null"
},
"KpiTrendExpression": {
"type": "null"
},
"IsReferenced": {
"type": "boolean"
}
},
"required": [
"$id",
"Table",
"MeasureName",
"MeasureExpression",
"DisplayFolder",
"Description",
"IsHidden",
"DataType",
"DetailRowsExpression",
"FormatString",
"KpiStatusExpression",
"KpiTargetExpression",
"KpiTargetFormatString",
"KpiTrendExpression",
"IsReferenced"
]
}
},
"UserHierarchies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"Table": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"HierarchyName": {
"type": "string"
},
"IsHidden": {
"type": "boolean"
},
"UsedSize": {
"type": "integer"
},
"Levels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
}
}
},
"required": [
"$id",
"Table",
"HierarchyName",
"IsHidden",
"UsedSize",
"Levels"
]
}
},
"Partitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
}
}
},
"required": [
"$id",
"Model",
"TableName",
"TableType",
"IsHidden",
"IsPrivate",
"IsLocalDateTable",
"IsTemplateDateTable",
"TableExpression",
"RowsCount",
"ReferentialIntegrityViolationCount",
"CalculationGroup",
"Description",
"IsReferenced",
"HasDualPartitions",
"HasDirectQueryPartitions",
"IsDateTable",
"Columns",
"Measures",
"UserHierarchies",
"Partitions"
]
}
},
"Relationships": {
"type": "array",
"items": {
"type": "object",
"properties": {
"$id": {
"type": "string"
},
"FromColumn": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"FromCardinalityType": {
"type": "string"
},
"ToColumn": {
"type": "object",
"properties": {
"$ref": {
"type": "string"
}
},
"required": [
"$ref"
]
},
"ToCardinalityType": {
"type": "string"
},
"RelyOnReferentialIntegrity": {
"type": "boolean"
},
"JoinOnDateBehavior": {
"type": "string"
},
"CrossFilteringBehavior": {
"type": "string"
},
"Type": {
"type": "string"
},
"IsActive": {
"type": "boolean"
},
"Name": {
"type": "string",
"format": "uuid"
},
"SecurityFilteringBehavior": {
"type": "string"
},
"UsedSizeFrom": {
"type": "integer"
},
"UsedSizeTo": {
"type": "integer"
},
"MissingKeys": {
"type": "integer"
},
"InvalidRows": {
"type": "integer"
}
},
"required": [
"$id",
"FromColumn",
"FromCardinalityType",
"ToColumn",
"ToCardinalityType",
"RelyOnReferentialIntegrity",
"JoinOnDateBehavior",
"CrossFilteringBehavior",
"Type",
"IsActive",
"Name",
"SecurityFilteringBehavior",
"UsedSizeFrom",
"UsedSizeTo",
"MissingKeys",
"InvalidRows"
]
}
},
"Roles": {
"type": "array",
"items": false
},
"DefaultMode": {
"type": "integer"
},
"Culture": {
"type": "string"
}
},
"required": [
"$id",
"DaxModelVersion",
"ExtractorApp",
"ExtractorAppVersion",
"ExtractorLib",
"ExtractorLibVersion",
"DaxModelLib",
"DaxModelLibVersion",
"ServerName",
"ModelName",
"CompatibilityLevel",
"CompatibilityMode",
"ExtractionDate",
"LastDataRefresh",
"LastProcessed",
"LastUpdate",
"Version",
"Tables",
"Relationships",
"Roles",
"DefaultMode",
"Culture"
]
}
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"Tables": {
"type": "array",
"items": {
"type": "object",
"properties": {
"TableName": {
"type": "string"
},
"TableExpression": {
"type": [
"string",
"null"
]
},
"RowsCount": {
"type": "integer"
},
"ReferentialIntegrityViolationCount": {
"type": "integer"
},
"IsHidden": {
"type": "boolean"
},
"IsPrivate": {
"type": "boolean"
},
"IsLocalDateTable": {
"type": "boolean"
},
"IsTemplateDateTable": {
"type": "boolean"
},
"Description": {
"type": "string"
},
"ColumnsSize": {
"type": "integer"
},
"TableSize": {
"type": "integer"
},
"RelationshipsSize": {
"type": "integer"
},
"UserHierarchiesSize": {
"type": "integer"
},
"IsReferenced": {
"type": "boolean"
}
},
"required": [
"TableName",
"TableExpression",
"RowsCount",
"ReferentialIntegrityViolationCount",
"IsHidden",
"IsPrivate",
"IsLocalDateTable",
"IsTemplateDateTable",
"Description",
"ColumnsSize",
"TableSize",
"RelationshipsSize",
"UserHierarchiesSize",
"IsReferenced"
]
}
},
"Columns": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ColumnName": {
"type": "string"
},
"TableName": {
"type": "string"
},
"FullColumnName": {
"type": "string"
},
"ColumnCardinality": {
"type": "integer"
},
"DataType": {
"type": "string"
},
"ColumnType": {
"type": "string"
},
"IsHidden": {
"type": "boolean"
},
"Encoding": {
"type": "string"
},
"ColumnExpression": {
"type": [
"string",
"null"
]
},
"DisplayFolder": {
"type": "string"
},
"Description": {
"type": "string"
},
"FormatString": {
"type": "string"
},
"EncodingHint": {
"type": "string"
},
"IsAvailableInMDX": {
"type": "boolean"
},
"IsKey": {
"type": "boolean"
},
"IsNullable": {
"type": "boolean"
},
"IsUnique": {
"type": "boolean"
},
"KeepUniqueRows": {
"type": "boolean"
},
"SortByColumnName": {
"type": [
"string",
"null"
]
},
"State": {
"type": "string"
},
"IsRowNumber": {
"type": "boolean"
},
"IsReferenced": {
"type": "boolean"
},
"DictionarySize": {
"type": "integer"
},
"DataSize": {
"type": "integer"
},
"HierarchiesSize": {
"type": "integer"
},
"TotalSize": {
"type": "integer"
},
"Selectivity": {
"type": [
"number",
"null"
]
}
},
"required": [
"ColumnName",
"TableName",
"FullColumnName",
"ColumnCardinality",
"DataType",
"ColumnType",
"IsHidden",
"Encoding",
"ColumnExpression",
"DisplayFolder",
"Description",
"FormatString",
"EncodingHint",
"IsAvailableInMDX",
"IsKey",
"IsNullable",
"IsUnique",
"KeepUniqueRows",
"SortByColumnName",
"State",
"IsRowNumber",
"IsReferenced",
"DictionarySize",
"DataSize",
"HierarchiesSize",
"TotalSize",
"Selectivity"
]
}
},
"Measures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"MeasureName": {
"type": "string"
},
"TableName": {
"type": "string"
},
"FullMeasureName": {
"type": "string"
},
"MeasureExpression": {
"type": "string"
},
"DisplayFolder": {
"type": "string"
},
"Description": {
"type": "string"
},
"IsHidden": {
"type": "boolean"
},
"DataType": {
"type": "string"
},
"DetailRowsExpression": {
"type": "null"
},
"FormatString": {
"type": "string"
},
"KpiStatusExpression": {
"type": "null"
},
"KpiTargetExpression": {
"type": "null"
},
"KpiTargetFormatString": {
"type": "null"
},
"KpiTrendExpression": {
"type": "null"
},
"IsReferenced": {
"type": "boolean"
}
},
"required": [
"MeasureName",
"TableName",
"FullMeasureName",
"MeasureExpression",
"DisplayFolder",
"Description",
"IsHidden",
"DataType",
"DetailRowsExpression",
"FormatString",
"KpiStatusExpression",
"KpiTargetExpression",
"KpiTargetFormatString",
"KpiTrendExpression",
"IsReferenced"
]
}
},
"ColumnsSegments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ColumnName": {
"type": "string"
},
"TableName": {
"type": "string"
},
"FullColumnName": {
"type": "string"
},
"PartitionName": {
"type": "string"
},
"PartitionState": {
"type": "string"
},
"PartitionType": {
"type": "string"
},
"PartitionMode": {
"type": "string"
},
"RefreshedTime": {
"type": "string",
"format": "date-time"
},
"SegmentNumber": {
"type": "integer"
},
"TablePartitionNumber": {
"type": "integer"
},
"SegmentRows": {
"type": "integer"
},
"UsedSize": {
"type": "integer"
},
"CompressionType": {
"type": "string"
},
"BitsCount": {
"type": "integer"
},
"BookmarkBitsCount": {
"type": "integer"
},
"VertipaqState": {
"type": "string"
},
"IsPageable": {
"type": "null"
},
"IsResident": {
"type": "null"
},
"Temperature": {
"type": "null"
},
"LastAccessed": {
"type": "null"
}
},
"required": [
"ColumnName",
"TableName",
"FullColumnName",
"PartitionName",
"PartitionState",
"PartitionType",
"PartitionMode",
"RefreshedTime",
"SegmentNumber",
"TablePartitionNumber",
"SegmentRows",
"UsedSize",
"CompressionType",
"BitsCount",
"BookmarkBitsCount",
"VertipaqState",
"IsPageable",
"IsResident",
"Temperature",
"LastAccessed"
]
}
},
"ColumnsHierarchies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ColumnName": {
"type": "string"
},
"TableName": {
"type": "string"
},
"FullColumnName": {
"type": "string"
},
"StructureName": {
"type": "string"
},
"SegmentNumber": {
"type": "integer"
},
"TablePartitionNumber": {
"type": "integer"
},
"UsedSize": {
"type": "integer"
}
},
"required": [
"ColumnName",
"TableName",
"FullColumnName",
"StructureName",
"SegmentNumber",
"TablePartitionNumber",
"UsedSize"
]
}
},
"UserHierarchies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"TableName": {
"type": "string"
},
"UserHierarchyName": {
"type": "string"
},
"IsHidden": {
"type": "boolean"
},
"UsedSize": {
"type": "integer"
},
"Levels": {
"type": "string"
}
},
"required": [
"TableName",
"UserHierarchyName",
"IsHidden",
"UsedSize",
"Levels"
]
}
},
"Relationships": {
"type": "array",
"items": {
"type": "object",
"properties": {
"FromTableName": {
"type": "string"
},
"FromFullColumnName": {
"type": "string"
},
"FromCardinality": {
"type": "integer"
},
"FromCardinalityType": {
"type": "string"
},
"ToTableName": {
"type": "string"
},
"ToFullColumnName": {
"type": "string"
},
"ToCardinality": {
"type": "integer"
},
"ToCardinalityType": {
"type": "string"
},
"RelyOnReferentialIntegrity": {
"type": "boolean"
},
"JoinOnDateBehavior": {
"type": "string"
},
"CrossFilteringBehavior": {
"type": "string"
},
"RelationshipType": {
"type": "string"
},
"IsActive": {
"type": "boolean"
},
"RelationshipName": {
"type": "string",
"format": "uuid"
},
"SecurityFilteringBehavior": {
"type": "string"
},
"UsedSizeFrom": {
"type": "integer"
},
"UsedSizeTo": {
"type": "integer"
},
"UsedSize": {
"type": "integer"
},
"MissingKeys": {
"type": "integer"
},
"InvalidRows": {
"type": "integer"
},
"OneToManyRatio": {
"type": "number"
}
},
"required": [
"FromTableName",
"FromFullColumnName",
"FromCardinality",
"FromCardinalityType",
"ToTableName",
"ToFullColumnName",
"ToCardinality",
"ToCardinalityType",
"RelyOnReferentialIntegrity",
"JoinOnDateBehavior",
"CrossFilteringBehavior",
"RelationshipType",
"IsActive",
"RelationshipName",
"SecurityFilteringBehavior",
"UsedSizeFrom",
"UsedSizeTo",
"UsedSize",
"MissingKeys",
"InvalidRows",
"OneToManyRatio"
]
}
},
"TablePermissions": {
"type": "array",
"items": false
},
"CalculationItems": {
"type": "array",
"items": false
}
},
"required": [
"Tables",
"Columns",
"Measures",
"ColumnsSegments",
"ColumnsHierarchies",
"UserHierarchies",
"Relationships",
"TablePermissions",
"CalculationItems"
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment