Define the requestable technologies and resources
Define the requestable technologies and resources in an XML file.
The XML file has the following structure:
- Set technology
- Define technology
- Define permissionsets
- Summarizing permissions for types - Describe resources
- Define resource root
- Define resources
Example
<?xml version="1.0" encoding="utf-8"?>
<!-- do not change -->
<resourceImport Version="3">
<!-- technology definition -->
<
technology
Id="D54C16F2-42C1-477A-BD20-3285158F68D3" Name="Hardware" IconId="2" Color="#0000be">
<definitions>
<permissionSets
>
<permissionSet PermissionSetId="1" Description="['en-US:Buy','de-DE:Kaufen']" />
<permissionSet PermissionSetId="2" Description="['en-US:Lease','de-DE:Leasen']" />
<permissionSet PermissionSetId="3" Description="['en-US:Rent','de-DE:Mieten']" />
</permissionSets>
<
types>
<type Id="1" Description="['en-US:Hardware','de-DE:Hardware']" IconId="Container" PermissionSetIds="[]" />
<type Id="3" Description="['en-US:Desktop','de-DE:Desktop']" IconId="Computer" PermissionSetIds="[1,2,3]" />
</types>
</definitions>
<!--
resource definition
-->
<data>
<
root
Id="6CE9B526-9FFD-46A5-9ED0-36FB4E1303B5" Name="Computer" TypeId="1" Merge="no">
<
resource
Name="Desktop PCs" TypeId="3" Description="['en-US:Stationary PC','de-DE:Stationäre Arbeitsplatz-PCs']">
<resource Name="Desktop-PC simple" TypeId="3" />
<resource Name="Desktop-PC default" TypeId="3" />
<resource Name="Desktop-PC customizable" TypeId="3" TemplateID="E3865726-6FDF-489E-A7D5-4ABBA5B2BF83" />
</resource>
</root>
</data>
</technology>
</resourceImport>
Set technology
An OpenOrder XML configuration can contain several technologies. In the first line of a technology section, specify the ID, name, and icon.
Example
<!-- technology definition -->
<technology
Id
="D54C16F2-42C1-477A-BD20-3285158F68D3"
Name
="Hardware"
IconId
="2">
Id
Identifies the technology and must be unique within Open Order. Our recommendation: Use a GUID, e.g. from guidgen.com
Name
Display name of the technology.
IconId
Displayed icon for the DataOwner configuration (not for GrantMA). See predefined icons.
Define permission sets
In the permissionSets section, you define the technology's permission sets.
Example
<permissionSets>
<permissionSet
PermissionSetId
="1"
Description
="['en-US:Buy','de-DE:Kaufen']" />
<permissionSet PermissionSetId="2" Description="['en-US:Lease','de-DE:Leasen']" />
<permissionSet PermissionSetId="3" Description="['en-US:Rent','de-DE:Mieten']" />
</permissionSets>
PermissionSetId
Assign an integer that identifies the entry in the permission set.
Description
Optionally provide a description of the permission set.
Define types
A type definition of a technology contains 0 to n permissions and an icon.
Example
<types>
<type
Id
="1"
Description
="['en-US:Hardware','de-DE:Hardware']
"
IconId
="
Container"
PermissionSetIds
="[]" />
<type Id="3" Description="['en-US:Desktop','de-DE:Desktop']" IconId="Computer" PermissionSetIds="[1,2,3]" />
</types>
Id
Assign an integer that identifies the type.
Description
The displayed description of type.
IconId
Displayed icon for the DataOwner configuration (not for the GrantMA). See predefined icons.
PermissionSetIds
A list of possible permissions for the type. An empty list of PermissionSetIds implies that a resource with the authorization type can not be ordered.
Define resources
You define the resources in the data section. A resource node begins with a root entry. You then specify the resources that can be requested.
Define root
With a node entry (root), you define the topmost entry of a resource.
Example
<data>
<root
Id
="6CE9B526-9FFD-46A5-9ED0-36FB4E1303B5"
Name
="Computer"
TypeId
="1"
Merge
="no">
<resource Name="Desktop PCs" TypeId="3" Description="['en-US:Stationary PC','de-DE:Stationäre Arbeitsplatz-PCs']">
<resource Name="Desktop-PC simple" TypeId="3" />
<resource Name="Desktop-PC standard" TypeId="3" />
<resource Name="Desktop-PC customizable" TypeId="3" TemplateID="E3865726-6FDF-489E-A7D5-4ABBA5B2BF83" />
</resource>
</root>
</data>
Id
Assign an ID to the top node. The ID must be unique within Open Order. Our recommendation: Use a GUID, e.g. from guidgen.com
Name
Assign an display name for the node.
TypeId
Specify the type of the top node.
Merge
Set the update behavior if you re-upload the XML configuration.
Merge="no"
An existing configuration of the same root ID is removed and replaced by the new upload.
Merge="yes"
For an existing root ID:
- new entries (new name) will be added
- same entries (same name) will be added creating duplicates
- old entries will be kept
Define resource
Within the root, you define the resources in the resource section. You can nest the resources as much as you want.
Example
<data>
<root Id="6CE9B526-9FFD-46A5-9ED0-36FB4E1303B5" Name="Computer" TypeId="1" Merge="no">
<resource Name="Desktop PCs" TypeId="3" Description="['en-US:Stationary PC','de-DE:Stationäre Arbeitsplatz-PCs']">
<resource Name="Desktop-PC simple" TypeId="3" />
<resource Name="Desktop-PC standard" TypeId="3" />
<resource Name="Desktop-PC customizable" TypeId="3" TemplateID="E3865726-6FDF-489E-A7D5-4ABBA5B2BF83" />
</resource>
</root>
</data>
Name
Displayed name of the resource.
TypeId
Mandatory: Assign a type to the resource.
Description
Optionally provide a description of the resource.