The product descriptor is a JSON structure held in the Product descriptor member type on the product builder and product. During the product generation process, the product descriptor manually entered on the product builder is extended to include many other details from the product builder, and the result written to the product.
The product descriptor describes the main characteristics of the product, in JSON format.
It contains standard properties generated from the product builder, and product reference information derived from the product (shown in blue). It may also contain custom properties added manually to the product builder.
{ "nodeNameProduct": "product name", "productDescription": "product description", "productIcon":"icon specifier", "tags": [ { "nodeReference": "tag node reference", "name": "tag name" }, ... ], "productKey": "key", "nodeReferenceTemplateSource": "node reference", "localReference": "local reference", "inheritSubscriptionList": ["node ref", ...], "instanceInitialIndicator": true|false,
"instanceMandatoryIndicator": true|false, "instanceSingleIndicator": true|false,
"forceInstanceUpdateIndicator": true|false,
"draftPermissionIndicator": true|false,
"setInitialLockIndicator": true|false,
"accountPackageIndicator": true|false,
"nodeVersionReferenceProduct": "product reference",
"nodeVersionReferenceTemplate": "template reference", "nodeReference": "node reference", "versionNumber": "version number", "userLogonReferenceOwner": "reference", "ownerName": "name", "ownerEmailAddress": "email address",
}
nodeNameProduct | Name of the product |
---|---|
productDescription | Description of the product. May contain markup. |
productIcon | Icon for the product. May be a file URL, markup, or a class. |
tags | List of tags. |
tags[n].nodeReference | Node reference of tag |
tags[n].name | Name of tag |
productKey | A hashed version of the product key. If not present, then no key is required to install the product. |
nodeReferenceTemplateSource | Node reference of the product template package. This should be accompanied by an export of the package. |
accountPackageIndicator | If set to true, install the template as the account package, overwriting the existing account package. |
localReference | Suggested local reference for installed product. Omit for auto. Use / for high-level account structure. |
inheritSubscriptionList | List of node references within the product template file which should inherit from the subscription. This can be used within the product instance to manage permission to use the subscription content. |
instanceInitialIndicator | If true, create an instance of the product when the user first subscribes to a product. |
instanceMandatoryIndicator | Indicates that the instance may not be deleted until the subscription is deleted. Specifically, it means that where this product appears in another product's dependency list, this product must have an instance in order to satisfy that dependency. |
instanceSingleIndicator | Indicates that only one instance is permitted. |
forceInstanceUpdateIndicator | Indicates that instances must be updated to the latest version when subscriptions are updated to the latest version. If omitted or false, installs may remain on later versions. |
draftPermissionIndicator | Allow draft permissions on the product and library. |
setInitialLockIndicator | If the product is automatically subscribed to at account creation, lock it to prevent the user from modifying the subscription. |
nodeVersionReferenceProduct | Node version reference for the product |
nodeVersionReferenceTemplate | The node version reference of a node that contains an exported install template for the product. This may be the same as the product, but installers should use this field rather than the product. |
nodeReference | Node reference of the product |
versionNumber | Version number of the product |
userLogonReferenceOwner | Reference of owning user |
ownerName | Name of owning user |
ownerEmail | Email address of owning user |
For compatability reasons, the following properties are also generated by the product builder, which act as synonyms for other properties.
Property | Synonym for |
---|---|
name | nodeNameProduct |
description | productDescription |
icon | productIcon |
template | nodeReferenceTemplateSource |
createInitialInstance | instanceInitialIndicator |
draftPermissions | draftPermissionIndicator (note Permission and Permissions) |
setInitialLock | setInitialLockIndicator |
accountPackage | accountPackageIndicator |
inheritSubscription | inheritSubscriptionList |
reference | nodeVersionReferenceProduct |
ownerReference | userLogonReferenceOwner |