Open Source Web Application Framework for ASP.NET Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

45 lines
1.6 KiB

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "foreign-key-descriptor.schema.json",
"title": "ForeignKeyDescriptor",
"description": "Describes a foreign key relationship",
"type": "object",
"properties": {
"entityName": {
"type": "string",
"description": "Full name of the related entity",
"minLength": 1
},
"displayPropertyName": {
"type": "string",
"description": "Property name to display from the related entity",
"minLength": 1
},
"access": {
"type": "string",
"description": "Access level for managing this relation from the referenced entity side. When set to 'view' or 'edit', the referenced entity can see/manage items that reference it.",
"enum": ["none", "view", "edit"],
"default": "none"
},
"dependsOn": {
"type": "object",
"description": "Cascading dependency: filter this FK's lookup by the value of another FK property on the same entity.",
"properties": {
"propertyName": {
"type": "string",
"description": "The property name on the owning entity whose value provides the filter (e.g. 'CountryId' on Author)",
"minLength": 1
},
"filterPropertyName": {
"type": "string",
"description": "The property name on the target (lookup) entity to filter by (e.g. 'CountryId' on City)",
"minLength": 1
}
},
"required": ["propertyName", "filterPropertyName"],
"additionalProperties": false
}
},
"required": ["entityName"],
"additionalProperties": false
}