The folder schema maps group asset structures into a folder representation in the CI HUB panel.

Asset type

  • Group

Schema

{
    "cs:related.queries": {
        "media": "@media[parentFolders.@folder.assetId=${id}]",
        "folder": "@folder[parentFolders.@folder.assetId=${id}]"
    },
    "cs:$no_new_masterdata": true,
    "cs:roles.required": {},
    "cs:queries": {
        "roots": "$savedSearch(\"censhare:search.cihub.groups.top-level\")"
    },
    "cs:asset.type": "group.",
    "title": "Folder",
    "type": "object",
    "properties": {
        "assetId": {
            "minValue": 0,
            "maxValue": 9007199254740991,
            "cs:feature.key": "censhare:asset.id",
            "type": "integer"
        },
        "name": {
            "cs:feature.key": "censhare:asset.name",
            "type": "string"
        },
        "link": {
            "cs:entity.link": true,
            "type": "string"
        },
        "parentFolders": {
            "type": "array",
            "items": {
                "cs:relation.direction": "parent",
                "oneOf": [
                    {
                        "type": "string"
                    },
                    {
                        "type": "null"
                    }
                ],
                "cs:relation.$ref_type": "link",
                "cs:relation.key": "user.",
                "cs:relation.$filter.asset_type": ["group.*"]
            }
        },
        "subfolders": {
            "type": "array",
            "items": {
                "cs:relation.direction": "child",
                "oneOf": [
                    {
                        "type": "string"
                    },
                    {
                        "type": "null"
                    }
                ],
                "cs:relation.$ref_type": "link",
                "cs:relation.key": "user.",
                "cs:relation.$filter.asset_type": ["group.*"]
            }
        }
    },
    "required": [
        "name"
    ]
}
cs:related.queries.media @media[parentFolders.@folder.assetId=${id}]
cs:related.queries.folder @folder[parentFolders.@folder.assetId=${id}]
cs:$no_new_masterdata true
cs:queries.roots $savedSearch("censhare:search.cihub.groups.top-level")
cs:asset.type group.
title Folder
type object
properties.assetId.minValue 0
properties.assetId.maxValue 9007199254740991
properties.assetId.cs:feature.key censhare:asset.id
properties.assetId.type integer
properties.name.cs:feature.key censhare:asset.name
properties.name.type string
properties.link.cs:entity.link
properties.link.type string
properties.parentFolders.type array
properties.parentFolders.items.cs:relation.direction parent
properties.parentFolders.items.oneOf.type [string, null]
properties.parentFolders.items.cs:relation.$ref_type link
properties.parentFolders.items.cs:relation.key user.
properties.parentFolders.items.cs:relation.$filter.asset_type group.*
properties.subfolders.type array
properties.subfolders.items.cs:relation.direction child
properties.subfolders.items.oneOf.type [string, null]
properties.subfolders.items.cs:relation.$ref_type link
properties.subfolders.items.cs:relation.key user.
properties.subfolders.items.cs:relation.$filter.asset_type group.*
required name