Service Directory > v31.2 > Compensation > Put_Compensation_Grade
 

Operation: Put_Compensation_Grade

This operation adds or updates compensation grade and compensation grade profile information. You must have access to the "Set Up: Compensation Packages" domain to access this operation.


@ - A parameter name with this symbol denotes an XML attribute within the document instead of an XML element.


Contents

 

Web Service

 

Request

 

Response

 

Element(s)

 

Request Element: Put_Compensation_Grade_Request

This web service operation is designed to load compensation grades and the associated compensation grade profiles. A complete set of compensation grade profiles should be passed in with the compensation grade. Any profiles not found in the set will be deleted, new profiles will be added, and the existing profiles will be updated.
 
Parameter name Type/Value Cardinality Description Validations
@version string [0..1] Web Service version  
@Add_Only  boolean  [1..1]  Add Only   
Compensation_Grade_Reference  Compensation_GradeObject  [0..1]  Compensation Grade Reference   
Compensation_Grade_Data  Compensation_Grade_Data  [1..1]  Compensation Grade Data   
Validation Description
Compensation Grade already exists.   
top
 

Response Element: Put_Compensation_Grade_Response

Responds with the reference ID for the compensation grade.
 
Parameter name Type/Value Cardinality Description Validations
@version string [0..1] Web Service version  
Compensation_Grade_Reference  Compensation_GradeObject  [0..1]  Compensation Grade Reference   
top
 

Compensation_GradeObject

part of: Put_Compensation_Grade_Request, Put_Compensation_Grade_Response
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Compensation_GradeObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Compensation_GradeObjectID

part of: Compensation_GradeObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Compensation_Grade_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_Grade_Data

part of: Put_Compensation_Grade_Request
Contains compensation grade data.
 
Parameter name Type/Value Cardinality Description Validations
Compensation_Grade_ID  string  [0..1]  The ID for the compensation grade. This is the index for the compensation grade and will be autopopulated if left blank.   
Effective_Date  date  [0..1]  The effective date of this salary grade. We recommend using a date of 1900-01-01. If not date is supplied, today's date will be used.   
Name  string  [1..1]  The unique salary grade name. Salary grades provide the guidelines for employee's base compensation. 
Validation Description
The Compensation Grade Name entered has already been used.   
 
Description  string  [0..1]  The description of this salary grade.   
Compensation_Element_Reference  Compensation_Pay_EarningObject  [1..*]  The compensation elements that define base bay for this compensation grade.   
Eligibility_Rule_Reference  Condition_RuleObject  [0..*]  The compensation eligibility rules associated with this compensation grade.   
Compensation_Pay_Range  Compensation_Pay_Range_Data  [0..1]  This is a wrapper for the Compensation Pay Range Data element. 
Validation Description
Pay Range segment top must be entered for each requested segment for Compensation Grade - [grade name].   
The number of segments must be 3, 4, or 5 for Compensation Grade - [grade name].   
Pay Range Midpoint must be between Pay Range Minimum and Pay Range Maximum for Compensation Grade - [grade name].   
Pay Range Maximum must equal last segment top entered for Compensation Grade - [grade name].   
 
Compensation_Grade_Profile  Compensation_Grade_Profile  [0..*]  This is a wrapper for the Compensation Grade Profiles   
Setup_Security_Segment_Reference  Compensation_Setup_Security_SegmentObject  [0..*]  The Setup Security Segment the Compensation Grade is assigned to. 
Validation Description
A Setup Security Segments cannot be referenced when this feature has been disabled in the Tenant Setup. Remove this reference from your request and resubmit.   
 
Assign_First_Step_During_Compensation_Proposal  boolean  [0..1]  When compensation steps are included in the Grade or Grade Profile, this indicator will be used to assign the first step to an employee when proposing compensation.   
Pay_Level_Reference  compplObject  [0..1]  Pay Levels are not supported for Compensation Grades. Do Not Use.   
Inactive  boolean  [0..1]  Inactive status indicator for Compensation Plans and Guideline components.   
Alternative_Pay_Range  Alternative_Pay_Range  [0..*]  This is a wrapper for the Alternative Pay Range Data   
top
 

Compensation_Pay_EarningObject

part of: Compensation_Grade_Data, Compensation_Grade_Profile_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Compensation_Pay_EarningObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Compensation_Pay_EarningObjectID

part of: Compensation_Pay_EarningObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Compensation_Element_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Condition_RuleObject

part of: Compensation_Grade_Data, Compensation_Grade_Profile_Data, Compensation_Step_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Condition_RuleObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Condition_RuleObjectID

part of: Condition_RuleObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Condition_Rule_ID, WCP_Component_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_Pay_Range_Data

part of: Compensation_Grade_Data, Compensation_Grade_Profile_Data
The compensation pay range.
 
Parameter name Type/Value Cardinality Description Validations
Number_of_Segments  decimal (12, 0) >0   [0..1]  Number of Pay Range Segments can be specified as 3,4, or 5.   
Minimum  decimal (21, 6) >0   [0..1]  The minimum of the salary range. 
Validation Description
The Minimum must be less than or equal to the Maximum for Compensation Grade - [grade name].   
 
Midpoint  decimal (21, 6) >0   [0..1]  The midpoint of the salary range.   
Maximum  decimal (32, 6)   [0..1]  The maximum of the salary range.   
Spread  decimal (32, 6)   [0..1]  The spread from the range minimum to range maximum.   
Segment_1_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 1. 
Validation Description
The Minimum value must be less than or equal to the Segment 1 Top value for Compensation Grade - [grade name].   
The Segment 1 Top value must be less than or equal to the Segment 2 Top value for Compensation Grade - [grade name].   
 
Segment_2_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 2. 
Validation Description
The Segment 2 Top value must be less than or equal to the Segment 3 Top value for Compensation Grade - [grade name].   
 
Segment_3_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 3. 
Validation Description
The Segment 3 Top value must be less than or equal to the Segment 4 Top value for Compensation Grade - [grade name].   
 
Segment_4_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 4. 
Validation Description
The Segment 4 Top value must be less than or equal to the Segment 5 Top value for Compensation Grade - [grade name].   
 
Segment_5_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 5.   
Currency_Reference  CurrencyObject  [0..1]  The pay range currency. In nothing is supplied the tenant default currency is used.   
Frequency_Reference  FrequencyObject  [0..1]  The pay range frequency. If nothing is supplied the tenant default frequency is used.   
Salary_Plan_Reference  Salary_Pay_PlanObject  [0..1]  The salary plan used in conjuction with the compensation steps defined. 
Validation Description
Salary Plan Reference must be specified for compensation grades or grade profiles containing a step definition.   
 
Allow_Override  boolean  [0..1]  Specifies if the amount in the compensation steps can be overriden when assigned to an employee.   
Compensation_Step  Compensation_Step  [0..*]  Compensation Step   
Validation Description
Pay Range segment top must be entered for each requested segment for Compensation Grade - [grade name].   
The number of segments must be 3, 4, or 5 for Compensation Grade - [grade name].   
Pay Range Midpoint must be between Pay Range Minimum and Pay Range Maximum for Compensation Grade - [grade name].   
Pay Range Maximum must equal last segment top entered for Compensation Grade - [grade name].   
top
 

CurrencyObject

part of: Compensation_Pay_Range_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  CurrencyObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

CurrencyObjectID

part of: CurrencyObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Currency_ID, Currency_Numeric_Code  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

FrequencyObject

part of: Compensation_Pay_Range_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  FrequencyObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

FrequencyObjectID

part of: FrequencyObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Frequency_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Salary_Pay_PlanObject

part of: Compensation_Pay_Range_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Salary_Pay_PlanObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Salary_Pay_PlanObjectID

part of: Salary_Pay_PlanObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Compensation_Plan_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_Step

part of: Compensation_Pay_Range_Data
Contains the pay range data.
 
Parameter name Type/Value Cardinality Description Validations
@Delete  boolean  [1..1]  If True is entered, the Step will be removed from this Grade or Grade Profile as of the effective date. 
Validation Description
The compensation step, [step], is in use and cannot be deleted.  If a Compensation Step has ever been assigned to an employee it cannot be deleted. 
 
Compensation_Step_Reference  Compensation_StepObject  [0..1]  Compensation Step Reference   
Compensation_Step_Data  Compensation_Step_Data  [0..1]  Compensation Step Data   
top
 

Compensation_StepObject

part of: Compensation_Step
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Compensation_StepObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Compensation_StepObjectID

part of: Compensation_StepObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Compensation_Step_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_Step_Data

part of: Compensation_Step
A compensation step
 
Parameter name Type/Value Cardinality Description Validations
Compensation_Step_ID  string  [0..1]  The ID for the compensation step. This is the index for the compensation step and will be autopopulated if left blank.   
Sequence  string  [1..1]  The step sequence.   
Name  string  [1..1]  The step name.   
Amount  decimal (21, 6) >0   [1..1]  The step amount.   
Interval  decimal (12, 0) >0   [0..1]  The progression interval to the next step (i.e. 1, 2, 10)   
Period_Reference  Frequency_BehaviorObject  [0..1]  The progression period to the next step (i.e. days, months, years)   
Progression_Rule_Reference  Condition_RuleObject  [0..1]  The progression rule to advance to the next step.   
top
 

Frequency_BehaviorObject

part of: Compensation_Step_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Frequency_BehaviorObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Frequency_BehaviorObjectID

part of: Frequency_BehaviorObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Frequency_Behavior_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_Grade_Profile

part of: Compensation_Grade_Data
Contains a compensation grade profile and its associated data.
 
Parameter name Type/Value Cardinality Description Validations
@Delete  boolean  [1..1]  If True is entered, the Compensation Grade Profile will be removed from the Compensation Grade. 
Validation Description
The compensation grade profile, [profile], is in use and cannot be deleted.  If a Compensation Grade Profile has ever been assigned to an employee it cannot be deleted. 
 
Compensation_Grade_Profile_Reference  Compensation_Grade_ProfileObject  [0..1]  Compensation Grade Profile Reference   
Compensation_Grade_Profile_Data  Compensation_Grade_Profile_Data  [0..1]  Contains compensation grade profile data. 
Validation Description
The requested number of pay range segments must be the same for the Compensation Grade - [grade name] and Compensation Grade Profile - [grade profile name].   
 
top
 

Compensation_Grade_ProfileObject

part of: Compensation_Grade_Profile
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Compensation_Grade_ProfileObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Compensation_Grade_ProfileObjectID

part of: Compensation_Grade_ProfileObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Compensation_Grade_Profile_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_Grade_Profile_Data

part of: Compensation_Grade_Profile
Contains compensation grade profile data.
 
Parameter name Type/Value Cardinality Description Validations
Compensation_Grade_Profile_ID  string  [0..1]  The ID for the compensation grade profile. This is the index for the compensation grade profile and will be autopopulated if left blank.   
Effective_Date  date  [0..1]  The effective date of an update to a salary grade profile. If an effective date is not provided, the effective date for the compensation grade will be used.   
Name  string  [1..1]  Typically the geographic salary ranges associated with the grade.   
Description  string  [0..1]  The description for the grade profile (typically geographic).   
Compensation_Element_Reference  Compensation_Pay_EarningObject  [1..*]  The compensation elements that define base bay for this compensation grade profile.   
Eligibility_Rule_Reference  Condition_RuleObject  [0..*]  The compensation eligibility rules associated with this compensation grade profile.   
Inactive  boolean  [0..1]  Inactive status indicator for Compensation Plans and Guideline components.   
Compensation_Pay_Range_Data  Compensation_Pay_Range_Data  [0..1]  This is a wrapper for the Compensation Pay Range Data element. 
Validation Description
Pay Range segment top must be entered for each requested segment for Compensation Grade - [grade name].   
The number of segments must be 3, 4, or 5 for Compensation Grade - [grade name].   
Pay Range Midpoint must be between Pay Range Minimum and Pay Range Maximum for Compensation Grade - [grade name].   
Pay Range Maximum must equal last segment top entered for Compensation Grade - [grade name].   
 
Setup_Security_Segment_Reference  Compensation_Setup_Security_SegmentObject  [0..*]  The Setup Security Segment the Compensation Grade Profile is assigned to. 
Validation Description
A Setup Security Segments cannot be referenced when this feature has been disabled in the Tenant Setup. Remove this reference from your request and resubmit.   
 
Alternative_Pay_Range  Alternative_Pay_Range  [0..*]  This is a wrapper for the Alternative Pay Range Data   
Validation Description
The requested number of pay range segments must be the same for the Compensation Grade - [grade name] and Compensation Grade Profile - [grade profile name].   
top
 

Compensation_Setup_Security_SegmentObject

part of: Compensation_Grade_Data, Compensation_Grade_Profile_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Compensation_Setup_Security_SegmentObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Compensation_Setup_Security_SegmentObjectID

part of: Compensation_Setup_Security_SegmentObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Setup_Security_Segment_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Alternative_Pay_Range

part of: Compensation_Grade_Data, Compensation_Grade_Profile_Data
Contains an alternative pay range and its associated data.
 
Parameter name Type/Value Cardinality Description Validations
Delete  boolean  [0..1]  If True is entered, the Alternative Pay Range will be removed from the Compensation Grade or Grade Profile.   
Alternate_Pay_Range_Data  Alternate_Pay_Range_Data  [1..1]  Contains alternative pay range data. 
Validation Description
Compensation pay Range Maximum Amount has to be greater than zero. If you do not wish to use Compensation Pay range Maximum Amount, leave the field blank.   
 
top
 

Alternate_Pay_Range_Data

part of: Alternative_Pay_Range
The alternative compensation pay range.
 
Parameter name Type/Value Cardinality Description Validations
Compensation_Basis_Reference  Compensation_Basis_ConfigurableObject  [1..1]  The configured compensation basis. Each pay range for a compensation grade or grade profile must use a different configured compensation basis.   
Minimum  decimal (21, 6) >0   [0..1]  The minimum of the salary range. 
Validation Description
The Minimum must be less than or equal to the Maximum for Compensation Grade - [grade name].   
 
Midpoint  decimal (21, 6) >0   [0..1]  The midpoint of the salary range.   
Maximum  decimal (32, 6)   [0..1]  The maximum of the salary range.   
Spread  decimal (32, 6)   [0..1]  The spread from the range minimum to range maximum.   
Segment_1_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 1. 
Validation Description
The Minimum value must be less than or equal to the Segment 1 Top value for Compensation Grade - [grade name].   
The Segment 1 Top value must be less than or equal to the Segment 2 Top value for Compensation Grade - [grade name].   
 
Segment_2_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 2. 
Validation Description
The Segment 2 Top value must be less than or equal to the Segment 3 Top value for Compensation Grade - [grade name].   
 
Segment_3_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 3. 
Validation Description
The Segment 3 Top value must be less than or equal to the Segment 4 Top value for Compensation Grade - [grade name].   
 
Segment_4_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 4. 
Validation Description
The Segment 4 Top value must be less than or equal to the Segment 5 Top value for Compensation Grade - [grade name].   
 
Segment_5_Top  decimal (21, 6) >0   [0..1]  The top value for Segment 5.   
Validation Description
Compensation pay Range Maximum Amount has to be greater than zero. If you do not wish to use Compensation Pay range Maximum Amount, leave the field blank.   
top
 

Compensation_Basis_ConfigurableObject

part of: Alternate_Pay_Range_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  Compensation_Basis_ConfigurableObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

Compensation_Basis_ConfigurableObjectID

part of: Compensation_Basis_ConfigurableObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Compensation_Basis_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

compplObject

part of: Compensation_Grade_Data
 
Parameter name Type/Value Cardinality Description Validations
@Descriptor  string  [1..1]  Display information used to describe an instance of an object. This 'optional' information is for outbound descriptive purposes only and is not processed on inbound Workday Web Services requests.   
ID  compplObjectID  [0..*]  Contains a unique identifier for an instance of an object.   
top
 

compplObjectID

part of: compplObject
Contains a unique identifier for an instance of an object.
 
Parameter name Type/Value Cardinality Description Validations
#text  string       
@type  WID, Pay_Level_ID  [1..1]  The unique identifier type. Each "ID" for an instance of an object contains a type and a value. A single instance of an object can have multiple "ID" but only a single "ID" per "type".   
top
 

Compensation_GradeReferenceEnumeration

part of: Compensation_GradeObjectID
Base Type
string
top
 

Compensation_Pay_EarningReferenceEnumeration

part of: Compensation_Pay_EarningObjectID
Base Type
string
top
 

Condition_RuleReferenceEnumeration

part of: Condition_RuleObjectID
Base Type
string
top
 

CurrencyReferenceEnumeration

part of: CurrencyObjectID
Base Type
string
top
 

FrequencyReferenceEnumeration

part of: FrequencyObjectID
Base Type
string
top
 

Salary_Pay_PlanReferenceEnumeration

part of: Salary_Pay_PlanObjectID
Base Type
string
top
 

Compensation_StepReferenceEnumeration

part of: Compensation_StepObjectID
Base Type
string
top
 

Frequency_BehaviorReferenceEnumeration

part of: Frequency_BehaviorObjectID
Base Type
string
top
 

Compensation_Grade_ProfileReferenceEnumeration

part of: Compensation_Grade_ProfileObjectID
Base Type
string
top
 

Compensation_Setup_Security_SegmentReferenceEnumeration

part of: Compensation_Setup_Security_SegmentObjectID
Base Type
string
top
 

Compensation_Basis_ConfigurableReferenceEnumeration

part of: Compensation_Basis_ConfigurableObjectID
Base Type
string
top
 

compplReferenceEnumeration

part of: compplObjectID
Base Type
string
top