Instrument

Defines the type of instrument used for data collection or capture. In addition to the standard name, label, and description contains a classification of the type of instrument, a reference to an external instance of the instrument (such as an image of a questionnaire or programming script) and a reference to the Sequence control construct that contains the flow for data collection or capture.

Properties

Name

Type

Description

InstrumentName

NameType

0..n

A name for the Instrument. 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 Instrument. Supports multiple language versions of the same content as well as optional formatting of the content. Repeat for labels with different content, for example, labels with differing length limitations.

Description

StructuredStringType

0..1

A description of the Instrument. Supports multiple language versions of the same content as well as optional formatting of the content.

TypeOfInstrument

CodeValueType

0..1

Describes the type of the instrument, according to the documenters type classification. Supports the use of an external controlled vocabulary. The DDI Alliance has provided a controlled vocabulary (TypeOfInstrument) to support this element at http://www.ddialliance.org/controlled-vocabularies.

ExternalInstrumentLocation

anyURI

0..n

A reference to an external representation of the data collection instrument, such as an image of a questionnaire or programming script.

ControlConstructReference

ControlConstruct

0..1

A reference to the Sequence control construct that initiates the flow of the instrument content.

FieldedLanguages

CodeValueType

0..n

Language in which the Instrument is fielded. Include all options as separate items. Language can be specified by region, for example en-AU. Supports the use of a controlled vocabulary.

DevelopmentResultsReference

DevelopmentResults

0..n

Reference to the development implementation results which gave rise to this version of the object. TypeOfObject should be DevelopmentResults.

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.

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

Agent

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.

RelatedOtherMaterialReference

OtherMaterial

0..n

The inclusion of an existing OtherMaterial by reference. Use for any type of OtherMaterial not specifically addressed by an inline description for such as ExternalAid in QuestionItem.

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.

IsPublished

boolean

0..1

Indicates that the maintainable will not be changed without versioning, and is a stable target for referencing.

Item Type Hierarchy

Relationships

The following identified item types reference this type.

Item Type

Property

ApprovalReview

ReviewObjectReference

Archive

LifecycleInformation/LifecycleEvent/Relationship/RelatedToReference_Versionable

DataCollection

CollectionEvent/InstrumentReference

DevelopmentImplementation

DevelopmentObject/InstrumentReference

DevelopmentStep

DevelopmentObject/InstrumentReference

GenericMap

ItemMap/SourceItemReference

InstrumentGroup

InstrumentReference

InstrumentScheme

InstrumentReference

LocalHoldingPackage

LocalAddedContent/ContentLinkingMap/LinkingMap/LocalObjectReference_Versionable

Maintainable

Note/Relationship/RelatedToReference_Versionable

OtherMaterial

Relationship/RelatedToReference_Versionable

Versionable

BasedOnObject/BasedOnReference

stub