Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 81 additions & 0 deletions fabric/item/ontology/contextualization/1.0.0/schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"$id": "https://developer.microsoft.com/json-schemas/fabric/item/ontology/contextualization/1.0.0/schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "contextualization definition",
"type": "object",
"properties": {
"$schema": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string",
"format": "uuid",
"description": "The unique id of the contextualization"
},
"dataBindingTable": {
"$ref": "#/definitions/LakehouseTableDataBindingProperties"
},
"sourceKeyRefBindings": {
"type": "array",
"items": {
"$ref": "#/definitions/KeyRefBinding"
},
"description": "Bindings from source columns to target properties"
},
"targetKeyRefBindings": {
"type": "array",
"items": {
"$ref": "#/definitions/KeyRefBinding"
},
"description": "Bindings from target columns to target properties"
}
},
"definitions": {
"LakehouseTableDataBindingProperties": {
"type": "object",
"properties": {
"sourceType": {
"type": "string",
"const": "LakehouseTable",
"description": "The sourceType of the Data Binding"
},
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The id of the workspace where the customer's lakehouse table is located"
},
"itemId": {
"type": "string",
"format": "uuid",
"description": "ArtifactId of the customer's lakehouse"
},
"sourceTableName": {
"type": "string",
"description": "The name of the data table from the lakehouse"
},
"sourceSchema": {
"type": "string",
"description": "The schema of the data table"
}
},
"required": ["sourceType", "workspaceId", "itemId", "sourceTableName"]
},
"KeyRefBinding": {
"type": "object",
"properties": {
"sourceColumnName": {
"type": "string",
"description": "The name of the source column"
},
"targetPropertyId": {
"type": "string",
"description": "The target property identifier"
}
},
"required": ["sourceColumnName", "targetPropertyId"]
}
}
}
169 changes: 169 additions & 0 deletions fabric/item/ontology/dataBinding/1.0.0/schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
{
"$id": "https://developer.microsoft.com/json-schemas/fabric/item/ontology/dataBinding/1.0.0/schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "data binding definition",
"type": "object",
"properties": {
"$schema": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string",
"format": "uuid",
"description": "Unique id of the data binding"
},
"dataBindingConfiguration": {
"$ref": "#/definitions/DataBindingConfiguration",
"description": "Configuration specific to the kind of data binding"
}
},
"required": ["id", "dataBindingConfiguration"],
"definitions": {
"DataBindingConfiguration": {
"type": "object",
"properties": {
"dataBindingType": {
"type": "string",
"enum": ["TimeSeries", "NonTimeSeries"],
"description": "The type of data binding"
},
"timestampColumnName": {
"type": "string",
"description": "Only required if dataBindingType is TimeSeries. This is the name of the timestamp column from the data table"
},
"propertyBindings": {
"type": "array",
"items": {
"$ref": "#/definitions/EntityTypePropertyBinding"
},
"description": "The bindings from source columns to entity type properties"
},
"sourceTableProperties": {
"description": "Data source table properties"
}
},
"required": ["dataBindingType", "sourceTableProperties"],
"allOf": [
{
"if": {
"properties": {
"dataBindingType": {
"const": "TimeSeries"
}
}
},
"then": {
"required": ["timestampColumnName"],
"properties": {
"sourceTableProperties": {
"oneOf": [
{
"$ref": "#/definitions/LakehouseTableDataBindingProperties"
},
{
"$ref": "#/definitions/EventhouseTableDataBindingProperties"
}
]
}
}
}
},
{
"if": {
"properties": {
"dataBindingType": {
"const": "NonTimeSeries"
}
}
},
"then": {
"properties": {
"sourceTableProperties": {
"$ref": "#/definitions/LakehouseTableDataBindingProperties"
}
}
}
}
]
},
"EntityTypePropertyBinding": {
"type": "object",
"properties": {
"sourceColumnName": {
"type": "string",
"description": "The name of the source column in the data table"
},
"targetPropertyId": {
"type": "string",
"description": "The target property id in the entity type"
}
},
"required": ["sourceColumnName", "targetPropertyId"]
},
"LakehouseTableDataBindingProperties": {
"type": "object",
"properties": {
"sourceType": {
"type": "string",
"const": "LakehouseTable",
"description": "The sourceType of the Data Binding"
},
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The id of the workspace where the customer's lakehouse table is located"
},
"itemId": {
"type": "string",
"format": "uuid",
"description": "ArtifactId of the customer's lakehouse"
},
"sourceTableName": {
"type": "string",
"description": "The name of the data table from the lakehouse"
},
"sourceSchema": {
"type": "string",
"description": "The schema of the data table"
}
},
"required": ["sourceType", "workspaceId", "itemId", "sourceTableName"]
},
"EventhouseTableDataBindingProperties": {
"type": "object",
"properties": {
"sourceType": {
"type": "string",
"const": "KustoTable",
"description": "The sourceType of the Data Binding"
},
"workspaceId": {
"type": "string",
"format": "uuid",
"description": "The id of the workspace where the customer's eventhouse is located"
},
"itemId": {
"type": "string",
"format": "uuid",
"description": "ArtifactId of the customer's eventhouse"
},
"clusterUri": {
"type": "string",
"description": "The URL to the Kusto cluster"
},
"databaseName": {
"type": "string",
"description": "The name of the database in the Kusto cluster"
},
"sourceTableName": {
"type": "string",
"description": "The name of the source table in the Kusto cluster"
}
},
"required": ["sourceType", "workspaceId", "itemId", "clusterUri", "databaseName", "sourceTableName"]
}
}
}
23 changes: 23 additions & 0 deletions fabric/item/ontology/document/1.0.0/schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"$id": "https://developer.microsoft.com/json-schemas/fabric/item/ontology/document/1.0.0/schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "document definition",
"type": "object",
"properties": {
"$schema": {
"type": [
"string",
"null"
]
},
"displayText": {
"type": "string",
"description": "The display text for the document"
},
"url": {
"type": "string",
"description": "The URL pointing to the document"
}
},
"required": ["url"]
}
110 changes: 110 additions & 0 deletions fabric/item/ontology/entityType/1.0.0/schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
{
"$id": "https://developer.microsoft.com/json-schemas/fabric/item/ontology/entityType/1.0.0/schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "entity type definition",
"type": "object",
"properties": {
"$schema": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string",
"description": "Unique id of the entity type"
},
"namespace": {
"type": "string",
"const": "usertypes",
"description": "Namespace of the entity type should always be usertypes"
},
"baseEntityTypeId": {
"type": [
"string",
"null"
],
"description": "Unique id of the base entity type"
},
"name": {
"type": "string",
"pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,127}$",
"description": "Name of the entity type"
},
"entityIdParts": {
"type": "array",
"items": {
"type": "string"
},
"description": "The properties (by id) that together uniquely identify an entity"
},
"displayNamePropertyId": {
"type": [
"string",
"null"
],
"description": "The id of the property that should be used as the display name for the entity"
},
"namespaceType": {
"type": "string",
"const": "Custom",
"description": "NamespaceType of the entity type should always be Custom"
},
"visibility": {
"type": "string",
"const": "Visible",
"description": "Visibility of the entity type should always be Visible"
},
"properties": {
"type": "array",
"items": {
"$ref": "#/definitions/EntityTypeProperty"
},
"description": "List of entity type properties"
},
"timeseriesProperties": {
"type": "array",
"items": {
"$ref": "#/definitions/EntityTypeProperty"
},
"description": "List of entity type timeseries properties"
}
},
"required": ["id", "namespace", "name", "namespaceType"],
"definitions": {
"EntityTypeProperty": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique id of the entity type property"
},
"name": {
"type": "string",
"pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,127}$",
"description": "Name of the entity type property"
},
"redefines": {
"type": [
"string",
"null"
],
"description": "Pointer to property inherited from base type that this property redefines"
},
"baseTypeNamespaceType": {
"type": [
"string",
"null"
],
"description": "The namespace of the base entity type"
},
"valueType": {
"type": "string",
"enum": ["String", "Boolean", "DateTime", "Object", "BigInt", "Double"],
"description": "Describes the value type of the entity type property"
}
},
"required": ["id", "name", "valueType"]
}
}
}
Loading