spec.json description

The spec.json file in an extension defines the additions and deletions the extension makes to the default IBM® Cognos® Analytics user interface. The structure and contents of this file are explained here.The structure and contents that are described here are provisional. They can change in future releases of Cognos Analytics. These changes may not be backward compatible.

Properties

NameType
schemaVersionString
nameString
coreBoolean
versionString
compatibleProductVersionObject
extensionsArray
commentString

schemaVersion

DescriptionSpecifies a numeric value for the schema version. Can be 1.0 or 2.0. The default value is 1.0.
TypeString
RequiredNo
Enum
  • 1.0
  • 2.0
  • 3.0

name

DescriptionSpecifies the name of the extension. The name can contain alphanumeric characters, underscores (_), and spaces ( ).
TypeString
RequiredYes
Pattern[a-zA-Z0-9_ ]+$

core

TypeBoolean
RequiredNo
Defaultfalse

version

TypeString
RequiredNo

compatibleProductVersion

TypeObject
RequiredNo

Properties

NameType
minString
maxString

compatibleProductVersion.min

TitleMIN
DescriptionFor each extension, specifies the earliest compatible version of Cognos Analytics.
TypeString
RequiredNo
Min Length1
Pattern^(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8})$

compatibleProductVersion.max

TitleMAX
DescriptionFor each extension, specifies the most recent compatible version of Cognos Analytics.
TypeString
RequiredNo
Min Length1
Pattern^(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8})$

extensions

DescriptionContains an array of perspective objects.
TypeArray
RequiredYes
Min Items1

extensions.perspective

DescriptionSpecifies the view that is being extended. The options are the following.
TypeString
Min Length1

extensions.compatibleProductVersion

TypeObject
RequiredNo

extensions.compatibleProductVersion.min

TitleMIN
DescriptionFor each extension, specifies the earliest compatible version of Cognos Analytics.
TypeString
RequiredNo
Min Length1
Pattern^(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8})$

extensions.compatibleProductVersion.max

TitleMAX
DescriptionFor each extension, specifies the most recent compatible version of Cognos Analytics.
TypeString
RequiredNo
Min Length1
Pattern^(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8}).(0|[1-9]\d{0,8})$

extensions.inherits

TypeString
Min Length1

extensions.excludeCommon

DescriptionSpecifies whether view contributions are received from the /common folder. The possible values are false to receive all contributions or true to receive no contributions. Any missing contributions can be added to the extension.
TypeBoolean

extensions.features

TypeArray
Min Items1

extensions.features.id

DescriptionSpecifies the unique identifier of the feature.
TypeString
Min Length1

extensions.features.svgImages

TypeArray

extensions.features.excludeItems

DescriptionContains an array of ids of user interface items to exclude. This feature cannot be applied to the common view.
TypeArray

extensions.features.excludeFeatures

DescriptionContains an array of ids of user interface features to exclude. This feature cannot be applied to the common view.
TypeArray

extensions.features.environment

TypeObject

extensions.features.toolItems

DescriptionContains an array of user interface elements that are being added.
TypeArray

extensions.features.toolItems.id

DescriptionThe unique identifier for the new user interface element.
TypeString
Min Length1

extensions.features.toolItems.title

DescriptionSpecifies the title of the new user interface element.
TypeString

extensions.features.toolItems.type

DescriptionSpecifies the user interface element type. The possible values are shown here. Button, Menu and MenuItem
TypeString
Min Length1

extensions.features.toolItems.environment

TypeObject

extensions.features.toolItems.actionController

DescriptionSpecifies the action to be taken when the user interface element is clicked. The available actions are listed here. 1. bi/glass/api/IFrameOpener - Opens a web page, 2. bi/glass/api/ReportOpener - Opens a particular report, 3. bi/glass/api/DashboardOpener - Opens a particular dashboard, 4. bi/glass/api/FolderOpener - Opens a particular folder, 5. v1/ext/<name>/js/controllers/controller_name - Runs the custom controller that is packaged in the extension. The controller is the file js/controllers/controller_name.js.
TypeString
Min Length1

extensions.features.toolItems.label

DescriptionSpecifies the text label for the user interface element. This text cannot be localized.
TypeString
Min Length1

extensions.features.toolItems.containerId

DescriptionSpecifies the placement of the user interface element. If the user interface element is a menu or a button, the element is located in the application or navigation bars. The values of containerId corresponding to the button or menu placement are shown in the following list.
  • com.ibm.bi.glass.navbarLeadingGroup
  • com.ibm.bi.glass.navbarTrailingGroup
  • com.ibm.bi.glass.appbarLeadingGroup
  • com.ibm.bi.glass.appbarCenterGroup
  • com.ibm.bi.glass.appbarTrailingGroup
  • com.ibm.bi.glass.common.personalMenu
  • com.ibm.bi.glass.common.applicationHelp
  • com.ibm.bi.contentApps.listViewMenu
  • custom.appbar.trailingGroup.menu
  • com.ibm.bi.caHome.navigator
  • com.ibm.bi.glass.common
  • com.ibm.bi.glass.myContextMenu
  • com.ibm.bi.glass.global.menus
  • com.ibm.bi.glass.persistentBannerBarCenterGroup
  • com.ibm.bi.glass.common.createMenu
  • com.ibm.bi.glass.footerLeadingGroup
  • com.ibm.bi.glass.common.navmenu
If the user interface element is a menu item, the value of containerId is the id of the menu that contains the menu item.
TypeString
Min Length1

extensions.features.toolItems.icon

DescriptionSpecifies the user interface element image to be displayed. The path is relative to the image file in the extension zip archive.
TypeString

extensions.features.toolItems.weight

DescriptionSpecifies a numeric value that determines the placement of the user interface element in the container. A higher value moves up the element in the container.
TypeNumber

extensions.features.toolItems.comment

TypeString

extensions.features.toolItems.options

DescriptionContains an array of options to pass to the action controller. The options vary depending on which action controller is used. For the options used by the built-in action controllers, see Using built-in action controllers.
TypeObject

extensions.features.toolItems.push

DescriptionSpecifies whether when the button is pressed a second time, the action of the first press is undone. For example, opening and then closing a folder. The value can be true or false. The value must be true for a button that opens a folder.
TypeString
Enum
  • true
  • false

extensions.features.toolItems.coachMark

DescriptionSpecifies a coach mark.
TypeObject

extensions.features.toolItems.coachMark.title

DescriptionSpecifies the title of the coach mark.
TypeString

extensions.features.toolItems.coachMark.contents

DescriptionSpecifies the contents of the coach mark.
TypeString

extensions.features.toolItems.lensable

TypeBoolean

extensions.features.content

DescriptionContains definitions for a view.
TypeObject

extensions.features.content.type

DescriptionContains a link to the JavaScript file to run when this view is invoked.
TypeString
Min Length1
Pattern^v1/ext/.+$

extensions.features.content.options

DescriptionContains parameters to be passed to the JavaScript file.
TypeObject

extensions.features.cssStyles

DescriptionContains an array of links to .css files to be used for this view.
TypeArray

extensions.features.collectionItems

DescriptionContains an array of user interface elements that are being added.
TypeArray

extensions.features.collectionItems.id

DescriptionSpecifies the unique identifier of the user interface element.
TypeString
Min Length1

extensions.features.collectionItems.containerId

DescriptionSpecifies where the user interface element is located.
TypeString
Min Length1

extensions.features.collectionItems.label

TypeString
Min Length1

extensions.features.collectionItems.lensable

TypeBoolean

extensions.features.collectionContainers

TypeArray

extensions.features.collectionContainers.id

TypeString
Min Length1

extensions.features.collectionContainers.label

TypeString
Min Length1

extensions.features.collectionContainers.items

TypeArray

extensions.features.collectionContainers.items.id

TypeString
Min Length1

extensions.features.collectionContainers.items.label

TypeString
Min Length1

extensions.features.collectionContainers.items.lensable

TypeBoolean

extensions.features.collectionContainers.lensable

TypeBoolean

extensions.features.comment

TypeString

extensions.features.lensable

TypeBoolean

extensions.features.actions

TypeArray
Min Items1

extensions.features.actions.id

TypeString
Min Length1

extensions.features.actions.label

TypeString
Min Length1

extensions.features.actions.items

TypeArray
Min Items1

extensions.features.actions.items.controller

TypeString
Min Length1

extensions.features.actions.items.weight

TypeNumber

extensions.type

DescriptionIf the extension is a view, specifies the type. The possible values are login for a sign-in view and home for a home view. This element is only used in schema version 2.0. If it is omitted and schema version 2.0 is specified, then the view is not included in the list of possible default home or sign-in views.
TypeString
Enum
  • home
  • login

extensions.lensable

DescriptionIf false, this view is not included in the list of views for which features can be omitted. For more information, see Customizing roles.The default value is true.
TypeBoolean
Defaulttrue

extensions.comment

DescriptionAn optional comment.
TypeString

extensions.services

TypeObject

extensions.config

TypeObject

extensions.config.requirejs

TypeObject

extensions.config.requirejs.paths

TypeObject

extensions.config.scripts

TypeArray

extensions.config.scripts.path

TypeString

extensions.config.scripts.weight

TypeNumber

extensions.config.styles

TypeArray

extensions.config.styles.path

TypeString

extensions.config.styles.weight

TypeNumber

comment

DescriptionAn optional comment.
TypeString
RequiredNo