QuestionConstruct

A member of the ControlConstruct substitution group. A construct which ties question content to the programmatic logic of the control constructs. Contains a reference to a QuestionItem, QuestionGrid or QuestionBlock, can set response or dimension sequence for use in a specific application, identifies the response unit, analysis unit, and universe. May provide an estimate of the number of minutes needed to respond.

Properties

Name

Type

Description

QuestionReference

QuestionItem

0..1

Reference to a QuestionItem, QuestionGrid, or QuestionBlock.

ResponseSequence

SpecificSequenceType

0..1

Describes the sequencing of the response options to the question for this application.

DimensionSequence

SpecificSequenceType

0..1

Describes the sequencing of the dimension within a QuestionGrid for this application.

ResponseUnit

CodeValueType

0..1

Identifies the intended Response unit (respondent). Supports the use of an external controlled vocabulary.

AnalysisUnit

CodeValueType

0..n

The analysis unit, expressed as a term which may come from a controlled vocabulary.

UniverseReference

Universe

0..n

Reference to the universe statement containing a description of the persons or other elements that this variable refers to, and to which any analytic results refer. If more than one universe is referenced the universe of the variable is the intersect of the referenced universes.

EstimatedSecondsResponseTime

decimal

0..1

The estimated amount of time required to answer a question expressed in seconds. Decimal values should be used to define fractions of seconds. At the question construct level it refers to the estimated time within the context of is use in a questionnaire.

Properties Inherited from ControlConstruct

Name

Type

Description

ConstructName

NameType

0..n

A name for the ControlConstructScheme. May be expressed in multiple languages. Repeat the element to express names with different content, for example different names for different systems.

Label

LabelType

0..n

A display label for the ControlConstructScheme. May be expressed in multiple languages. Repeat for labels with different content, for example, labels with differing length limitations.

Description

StructuredStringType

0..1

A description of the content and purpose of the ControlConstructScheme. May be expressed in multiple languages and supports the use of structured content.

InParameter

InParameterType

0..n

A parameter that may accept content from outside its parent element.

OutParameter

ParameterType

0..n

An identify for the output of the control construct.

Binding

BindingType

0..n

A structure used to bind the content of a parameter declared as the source to a parameter declared as the target. For example, binding the output of a question to the input of a generation instruction. Question A has an OutParameter X. Generation Instruction has an InParameter Y used in the recode instruction. Binding defines the content of InParameter Y to be whatever is provided by OutParameter X for use in the calculation of the recode.

ExternalAid

OtherMaterialType

0..n

A pointer to an external aid presented by the instrument such as a text card, image, audio, or audiovisual aid. Typically a URN. Use type attribute to describe the type of external aid provided. Example of terms to use would include: imageOnly audioOnly audioVisual multiMedia. ExternalAid will be available each time the control construct is invoked. Care should be taken when placing an ExternalAid in RepeatWhile, RepeatUntil and Loop constructs as it will recur each time the conditional statement is checked. This does not include interviewer instructions, which are handled separately.

ExternalInterviewerInstruction

ExternalInterviewerInstructionType

0..1

Contains a reference to an interviewer instruct ruction held in a structure other than DDI XML. Uses the OtherMaterial structure to describe and link to the external object.

InterviewerInstructionReference

Instruction

0..1

Reference to an interviewer instruction expressed as DDI XML.

Properties Inherited from Versionable

Name

Type

Description

URN

string

1..1

Agency

string

1..1

ID

string

1..1

Version

string

1..1

UserID

UserIDType

0..n

Allows for the specification of identifiers other than the specified DDI identification of the object. This may be a legacy ID from DDI-C, a system specific ID such as for a database or registry, or a non-DDI unique identifier. As the identifier is specific to a system the system must be identified with the UserID structure.

InheritanceAction

string

0..1

The attribute “action” is used for inheritance situations where there is an override at the local level (within a grouped StudyUnit) which is not available for further inheritance. There are three possible values for “action”: Add - A new identifiable object (an Identifiable, Versionable, or Maintainable element) is provided locally with a new identifier (one that is not inherited). All properties (elements and attributes contained in the object) of the object are as specified. If an object with an existing id is created, this is an error.; Update - An object is provided locally with the SAME id as the inherited object. For each type of property that is specified locally, a full set of those properties is specified for local use. These properties replace any properties of this type which were inherited. Unspecified properties are used as inherited.; Delete - An object is provided locally with the SAME id as the inherited object. All properties specified locally in this object will be deleted if their types and values match those inherited. Note that to completely delete an object at the local level, all properties of the inherited object must be listed.

UserAttributePair

StandardKeyValuePairType

0..n

A system specific user defined property of the object expressed as a key/value pair. As this is specific to an individual system the use of controlled vocabularies for the key is strongly recommended.

VersionResponsibility

string

0..1

Person or organization within the MaintenanceAgency responsible for the version change. If it is important to retain the affiliation between and individual responsible for the version and his/her agency, it may be included in this notation. This is primarily intended for internal use.

VersionResponsibilityReference_Organization

Organization

0..1

Reference person or organization within the MaintenanceAgency responsible for the version change, as described in an OrganizationScheme. If it is important to retain the affiliation between and individual responsible for the version and his/her agency, a Relation should be created between the individual referenced here and his/her organization. This is primarily intended for internal use.

VersionResponsibilityReference_Individual

Individual

0..1

Reference person or organization within the MaintenanceAgency responsible for the version change, as described in an OrganizationScheme. If it is important to retain the affiliation between and individual responsible for the version and his/her agency, a Relation should be created between the individual referenced here and his/her organization. This is primarily intended for internal use.

VersionRationale

VersionRationaleType

0..1

Textual description of the rationale/purpose for the version change and a coded value to provide an internal processing flag within and organization or system. Note that versioning can only take place on objects owned by the specified DDI Agency. If you are creating a local instance of an object from another agency for current or future modification use BasedOnObject. If the changes being made result in what you determine to be new object rather than a version of a previous object, i.e. the change is too extensive to consider it a version of the existing object, create a new object and use BasedOnObject to provide a link to the object or objects that were a basis for the new object.

BasedOnObject

BasedOnObjectType

0..1

Use when creating an object that is based on an existing object or objects that are managed by a different agency or when the new object is NOT simply a version change but you wish to maintain a reference to the object that served as a basis for the new object. BasedOnObject may contain references to any number of objects which serve as a basis for this object, a BasedOnRationalDescription of how the content of the referenced object was incorporated or altered, and a BasedOnRationalCode to allow for specific typing of the BasedOnReference according to an external controlled vocabulary.

VersionDate

cogsDate

0..1

Date of version using the union set BaseDateType. Duration should not be used in this field, even though allowed by the ISO format enforced by the parser.

Item Type Hierarchy

Relationships

stub