{
  "boType": "Storage",
  "description": "DTO (Data Transfer Object) for BO (Business Object) class 'StorageBO' representing the 'Storage' entity",
  "friendlyName": "Archivio",
  "kind": "SchemaRootObject",
  "name": "StorageDTO",
  "properties": [
    {
      "description": "The creator of the entity",
      "foreignKey": {
        "boType": "Account",
        "type": "AccountBO",
        "typeRef": "AccountBO"
      },
      "friendlyName": "Creato da",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": false,
          "isFreeField": false,
          "isTab": false,
          "name": "CreatedById",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "createdById",
      "underlyingName": "CreatedById",
      "underlyingType": "int",
      "underlyingTypeRef": "Int32"
    },
    {
      "description": "The creation date for the entity",
      "friendlyName": "Data creazione",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": false,
          "isFreeField": false,
          "isTab": false,
          "name": "CreatedDate",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "createdDate",
      "underlyingName": "CreatedDate",
      "underlyingType": "DateTime",
      "underlyingTypeRef": "DateTime"
    },
    {
      "description": "The description of the file",
      "friendlyName": "The description of the file",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": false,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "name": "Note",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "description",
      "underlyingName": "Description",
      "underlyingType": "string",
      "underlyingTypeRef": "String"
    },
    {
      "description": "The external references linked to current object",
      "elementSchema": {
        "friendlyName": "ExternalReference",
        "kind": "SchemaRootObject",
        "name": "ExternalReferenceDTO",
        "properties": [
          {
            "description": "Type",
            "friendlyName": "Type",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "type",
            "underlyingName": "Type",
            "underlyingType": "string",
            "underlyingTypeRef": "String"
          },
          {
            "description": "Value",
            "friendlyName": "Value",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "value",
            "underlyingName": "Value",
            "underlyingType": "string",
            "underlyingTypeRef": "String"
          }
        ],
        "underlyingType": "ExternalReferenceDTO",
        "underlyingTypeRef": "ExternalReferenceDTO"
      },
      "friendlyName": "Campi aggiuntivi",
      "isEnumerable": true,
      "kind": "SchemaArrayProperty",
      "max": -1.0,
      "name": "externalReferences",
      "underlyingName": "ExternalReferences",
      "underlyingType": "ExternalReferencesDTO",
      "underlyingTypeRef": "ExternalReferencesDTO"
    },
    {
      "customConverterType": "FilterForItemsOfArrayConverter",
      "description": "Linked files",
      "elementSchema": {
        "description": "DTO (Data Transfer Object) for Helper class FileCross representing the 'File Cross' entity",
        "friendlyName": "FileCross",
        "kind": "SchemaRootObject",
        "name": "FileCrossDTO",
        "properties": [
          {
            "customConverterType": "WebApiStyleBasedPropertyJsonConverter",
            "description": "The attribute tags of the file",
            "friendlyName": "The attribute tags of the file",
            "isEnum": true,
            "isLogicalPrimitive": true,
            "isPolymorphic": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "attributes",
            "polymorphicStyleParameterName": "FileCrossAttributesEnumStyle",
            "polymorphicStyles": {
              "LegacyV9;AdaptiveInteger": {
                "isLogicalPrimitive": true,
                "kind": "SchemaRootObject",
                "name": "Int32",
                "underlyingType": "int",
                "underlyingTypeRef": "Int32"
              },
              "WebApiV1;AdaptiveInteger": {
                "isLogicalPrimitive": true,
                "kind": "SchemaRootObject",
                "name": "Int32",
                "underlyingType": "int",
                "underlyingTypeRef": "Int32"
              },
              "WebApiV1;AdaptiveString": {
                "isLogicalPrimitive": true,
                "kind": "SchemaRootObject",
                "name": "String",
                "underlyingType": "string",
                "underlyingTypeRef": "String"
              }
            },
            "underlyingName": "Attributes",
            "underlyingType": "FileCrossAttributes",
            "underlyingTypeRef": "FileCrossAttributes"
          },
          {
            "description": "The description of the file",
            "friendlyName": "The description of the file",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "description",
            "underlyingName": "Description",
            "underlyingType": "string",
            "underlyingTypeRef": "String"
          },
          {
            "description": "The id of the file",
            "friendlyName": "The id of the file",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "fileId",
            "underlyingName": "FileId",
            "underlyingType": "long",
            "underlyingTypeRef": "Int64"
          },
          {
            "description": "The real name of the file",
            "friendlyName": "File",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "fileName",
            "underlyingName": "FileName",
            "underlyingType": "string",
            "underlyingTypeRef": "String"
          },
          {
            "description": "The guid of the file",
            "friendlyName": "The guid of the file",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "guid",
            "underlyingName": "Guid",
            "underlyingType": "string",
            "underlyingTypeRef": "String"
          },
          {
            "description": "The id of the cross",
            "friendlyName": "The id of the cross",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "id",
            "underlyingName": "Id",
            "underlyingType": "long",
            "underlyingTypeRef": "Int64"
          },
          {
            "description": "The real name of the file",
            "friendlyName": "The real name of the file",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "isImage",
            "underlyingName": "IsImage",
            "underlyingType": "bool",
            "underlyingTypeRef": "Boolean"
          },
          {
            "description": "The ref id of the cross",
            "friendlyName": "The ref id of the cross",
            "isLogicalPrimitive": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "refId",
            "underlyingName": "RefId",
            "underlyingType": "long",
            "underlyingTypeRef": "Int64"
          },
          {
            "customConverterType": "WebApiStyleBasedPropertyJsonConverter",
            "description": "The type of the cross",
            "friendlyName": "The type of the cross",
            "isEnum": true,
            "isLogicalPrimitive": true,
            "isPolymorphic": true,
            "kind": "SchemaObjectProperty",
            "layoutStudioPropertyAttributes": [],
            "name": "tableName",
            "polymorphicStyleParameterName": "FileCrossTypesEnumStyle",
            "polymorphicStyles": {
              "LegacyV9;AdaptiveInteger": {
                "isLogicalPrimitive": true,
                "kind": "SchemaRootObject",
                "name": "Int32",
                "underlyingType": "int",
                "underlyingTypeRef": "Int32"
              },
              "WebApiV1;AdaptiveInteger": {
                "isLogicalPrimitive": true,
                "kind": "SchemaRootObject",
                "name": "Int32",
                "underlyingType": "int",
                "underlyingTypeRef": "Int32"
              },
              "WebApiV1;AdaptiveString": {
                "isLogicalPrimitive": true,
                "kind": "SchemaRootObject",
                "name": "String",
                "underlyingType": "string",
                "underlyingTypeRef": "String"
              }
            },
            "underlyingName": "TableName",
            "underlyingType": "FileCrossTypes",
            "underlyingTypeRef": "FileCrossTypes"
          }
        ],
        "underlyingType": "FileCrossDTO",
        "underlyingTypeRef": "FileCrossDTO"
      },
      "friendlyName": "Linked files",
      "isEnumerable": true,
      "kind": "SchemaArrayProperty",
      "name": "fileCrossBo",
      "underlyingName": "FileCrossBo",
      "underlyingType": "FileCrossDTO[]",
      "underlyingTypeRef": "FileCrossDTO"
    },
    {
      "description": "Original name of the file",
      "friendlyName": "Original name of the file",
      "isLogicalPrimitive": true,
      "isRequired": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": false,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "name": "FileName",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "fileName",
      "underlyingName": "FileName",
      "underlyingType": "string",
      "underlyingTypeRef": "String"
    },
    {
      "description": "Icon",
      "friendlyName": "Icon",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "icon",
      "underlyingName": "Icon",
      "underlyingType": "string",
      "underlyingTypeRef": "String"
    },
    {
      "description": "The id of the file",
      "friendlyName": "The id of the file",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "id",
      "underlyingName": "Id",
      "underlyingType": "long",
      "underlyingTypeRef": "Int64"
    },
    {
      "description": "The last modified by id",
      "foreignKey": {
        "boType": "Account",
        "type": "AccountBO",
        "typeRef": "AccountBO"
      },
      "friendlyName": "Modificato da",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": false,
          "isFreeField": false,
          "isTab": false,
          "name": "LastModifiedBy",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "lastModifiedById",
      "underlyingName": "LastModifiedById",
      "underlyingType": "int",
      "underlyingTypeRef": "Int32"
    },
    {
      "description": "The last modified date",
      "friendlyName": "Data modifica",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": false,
          "isFreeField": false,
          "isTab": false,
          "name": "LastModifiedDate",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "lastModifiedDate",
      "underlyingName": "LastModifiedDate",
      "underlyingType": "DateTime",
      "underlyingTypeRef": "DateTime"
    },
    {
      "customConverterType": "WebApiStyleBasedPropertyInferentialJsonConverter",
      "description": "The owner of the entity",
      "foreignKey": {
        "boType": "Account",
        "type": "AccountBO",
        "typeRef": "AccountBO"
      },
      "friendlyName": "Proprietario",
      "isPolymorphic": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "name": "Owner",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        },
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "layoutName": "quote",
          "name": "OwnerId",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        },
        {
          "apiAlwaysVisible": true,
          "canBeRequired": false,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "layoutName": "event",
          "name": "OwnerId",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "ownerId",
      "polymorphicStyleParameterName": "OwnerIdStyle",
      "polymorphicStyles": {
        "LegacyV9;Id": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "Int32",
          "underlyingType": "int",
          "underlyingTypeRef": "Int32"
        },
        "WebApiV1;AdaptiveExternalReference": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;AdaptiveStringOnlyUserAccount": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;AdaptiveUserAccount": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;FlattenedExpansion": {
          "friendlyName": "FlattenedExpansionSchema",
          "kind": "SchemaRootObject",
          "name": "FlattenedExpansionSchema",
          "properties": [
            {
              "description": "Owner Id",
              "friendlyName": "Owner Id",
              "isLogicalPrimitive": true,
              "kind": "SchemaObjectProperty",
              "layoutStudioPropertyAttributes": [],
              "name": "ownerId",
              "underlyingName": "OwnerId",
              "underlyingType": "long",
              "underlyingTypeRef": "Int64"
            },
            {
              "description": "Owner Id Friendly Name",
              "friendlyName": "Owner Id Friendly Name",
              "isLogicalPrimitive": true,
              "kind": "SchemaObjectProperty",
              "layoutStudioPropertyAttributes": [],
              "name": "ownerId_FriendlyName",
              "underlyingName": "OwnerId_FriendlyName",
              "underlyingType": "string",
              "underlyingTypeRef": "String"
            },
            {
              "description": "Owner Id User Account",
              "friendlyName": "Owner Id User Account",
              "isLogicalPrimitive": true,
              "kind": "SchemaObjectProperty",
              "layoutStudioPropertyAttributes": [],
              "name": "ownerId_UserAccount",
              "underlyingName": "OwnerId_UserAccount",
              "underlyingType": "string",
              "underlyingTypeRef": "String"
            }
          ],
          "underlyingType": "FlattenedExpansionSchema",
          "underlyingTypeRef": "FlattenedExpansionSchema"
        },
        "WebApiV1;Id": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "Int32",
          "underlyingType": "int",
          "underlyingTypeRef": "Int32"
        },
        "WebApiV1;StrictEmail": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        }
      },
      "underlyingName": "OwnerId",
      "underlyingType": "int",
      "underlyingTypeRef": "Int32"
    },
    {
      "description": "The date of receipt of the file",
      "friendlyName": "The date of receipt of the file",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": false,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "name": "ReceptionDate",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "receptionDate",
      "underlyingName": "ReceptionDate",
      "underlyingType": "DateTime",
      "underlyingTypeRef": "DateTime"
    },
    {
      "description": "The size of the file",
      "friendlyName": "Dimensione",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": true,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "size",
      "underlyingName": "Size",
      "underlyingType": "long",
      "underlyingTypeRef": "Int64"
    },
    {
      "description": "The status of the flow of the file",
      "friendlyName": "The status of the flow of the file",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": false,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "name": "Status",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "status",
      "underlyingName": "Status",
      "underlyingType": "long",
      "underlyingTypeRef": "Int64"
    },
    {
      "customConverterType": "WebApiStyleBasedPropertyInferentialJsonConverter",
      "description": "Tags",
      "friendlyName": "Tags",
      "isEnumerable": true,
      "isLogicalPrimitive": true,
      "isPolymorphic": true,
      "kind": "SchemaArrayProperty",
      "name": "tags",
      "polymorphicStyleParameterName": "TagsStyle",
      "polymorphicStyles": {
        "LegacyV9;Id": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "Int32",
          "underlyingType": "int",
          "underlyingTypeRef": "Int32"
        },
        "WebApiV1;AdaptiveCsv": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;AdaptiveExternalReference": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;AdaptiveName": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;AdaptiveStringOnlyName": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;Csv": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;CsvOfIds": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;CsvOfNames": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "String",
          "underlyingType": "string",
          "underlyingTypeRef": "String"
        },
        "WebApiV1;Id": {
          "isLogicalPrimitive": true,
          "kind": "SchemaRootObject",
          "name": "Int32",
          "underlyingType": "int",
          "underlyingTypeRef": "Int32"
        }
      },
      "underlyingName": "Tags",
      "underlyingType": "long[]",
      "underlyingTypeRef": "Int64"
    },
    {
      "description": "The type of the path of the file",
      "friendlyName": "The type of the path of the file",
      "isLogicalPrimitive": true,
      "kind": "SchemaObjectProperty",
      "layoutStudioPropertyAttributes": [
        {
          "apiAlwaysVisible": false,
          "canBeRequired": true,
          "canWrite": true,
          "isFreeField": false,
          "isTab": false,
          "name": "Category",
          "typeId": "LayoutStudioPropertyAttribute",
          "useful": false
        }
      ],
      "name": "type",
      "underlyingName": "Type",
      "underlyingType": "long",
      "underlyingTypeRef": "Int64"
    }
  ],
  "underlyingType": "StorageDTO",
  "underlyingTypeRef": "StorageDTO"
}