Variable definitions when reading from Triple-S files
The following table describes how the Triple-S DSC maps Triple-S variable types to UNICOM Intelligence Metadata Model (MDM) variable types when using a Triple-S metadata file to read a Triple-S case data file.
Triple-S variable type
“Triple-S variable type” is as defined by the value of the type attribute in the Triple-S <variable> element.
single
MDM variable type: Single-response categorical
The Triple-S DSC sets the value of the corresponding MDM variable's EffectiveMinValue and EffectiveMaxValue properties to 1.
multiple
MDM variable type: Multiple-response categorical
If the Triple-S variable includes a <spread> element, the Triple-S DSC sets the value of the corresponding MDM variable's EffectiveMaxValue property to the value of the subfields attribute in the <spread> element.
If the Triple-S variable does not include a <spread> element, the Triple-S DSC sets the value of the corresponding MDM variable's EffectiveMaxValue property to the number of categories in the category list implied by the <range> element or <value> elements, depending on which is present. If the Triple-S variable includes both <range> and <value> elements, the Triple-S DSC sets the value of the EffectiveMaxValue property to the number of categories in the union of the two category lists implied by the two element types.
The Triple-S DSC always sets the value of the corresponding MDM variable's EffectiveMinValue property to 1.
quantity
(Whose <range> and <value> elements specify integer values that are within the range –2147483648 to 2147483647)
MDM variable type: Long
quantity
(Whose <range> or <value> elements specify integer values that are outside of the range –2147483648 to 2147483647 or decimal values)
MDM variable type: Double
The Triple-S DSC maps a Triple-S quantity variable that has a use="weight" attribute setting to an MDM variable that has a Weight usage type.
character
MDM variable type: Text
The Triple-S DSC sets the value of the corresponding MDM variable's EffectiveMaxValue property to the value of the Triple-S variable's <size> element. The Triple-S DSC always sets the value of the corresponding MDM variable's EffectiveMinValue property to 1.
logical
MDM variable type: Boolean
date
MDM variable type: Date
The Triple-S DSC sets the time portion of the MDM variable's case data value to 00:00:00.
time
MDM variable type: Date
The Triple-S DSC sets the date portion of the MDM variable's case data value to 1899-12-30.
Missing values
For all Triple-S data types except character, system-missing values (that is, values that indicate that a question was not asked) are represented in a Triple-S case data file by spaces. The Triple-S DSC presents Triple-S system-missing values as MDM Null values.
The Triple-S standard does not support user-missing values (that is, values that indicate that a question was asked, but not answered) except in single and multiple variables, where user-missing values are represented in a Triple-S case data file by zeroes. Therefore, the Triple-S DSC presents zero values for single and multiple variables as MDM empty categorical values.
Additional notes for categorical variables
For Triple-S single or multiple variables, the Triple-S DSC generates one MDM category for each item in the category list implied by the <range> element or <value> elements, depending on which is present. If the Triple-S variable includes both <range> and <value> elements, the Triple-S DSC generates one MDM category for each item in the union of the two category lists implied by the two element types.
Integer values are in the range –2147483648 to 2147483647 due to a Triple-S specification requirement.
If a <value> element includes a value text, the Triple-S DSC bases the corresponding MDM category's name on the value text, otherwise the Triple-S DSC bases the category name on the value of the <value> element's code attribute.
If a Triple-S <value> element includes a score attribute, the Triple-S DSC sets the value of the corresponding MDM category's Factor property to the score value.
The Triple-S DSC is not able to recognize "Other" categories or special categories such as "Don't Know".
Additional notes for non-categorical variables
For Triple-S quantity, date, and time variables that have a <values> element, the Triple-S DSC sets the value of the corresponding MDM variable's RangeExpression property to the values implied by the <range> element or <value> elements, depending on which is present. If the Triple-S variable includes both <range> and <value> elements, the Triple-S DSC sets the value of the corresponding MDM variable's RangeExpression property to the union of values implied by the two element types.
If the Triple-S variable includes <value> elements, the Triple-S DSC maps each one to an MDM category. If the <value> element includes a value text, the Triple-S DSC bases the corresponding MDM category's name on the value text, otherwise the Triple-S DSC bases the category name on the value of the <value> element's code attribute. The Triple-S DSC also sets the value of the MDM category's Factor property to the value of the <value> element's code attribute.
The Triple-S DSC ignores the score attribute if a <value> element has one.
See also