Class Question
Represents a question or a field used to collect data.
Inheritance
Implements
Inherited Members
Namespace: Algenta.Colectica.Model.Ddi
Assembly: Algenta.Colectica.Model.Ddi.dll
Syntax
public class Question : CaptureBase, INotifyPropertyChanged, IVersionable, IDescribable, ISummaryText, IVisitable, IBindable, IIdentifiable, IHasCustomFields
Remarks
Although the name Question leads one to think of surveys, the Question class
can be used to represent other items that gather data, such as fields in administrative forms.
Constructors
Question()
Initializes a new instance of the Question class.
Declaration
public Question()
Properties
AttachmentTypeExternalAid
AttachmentType for an ExternalAid
Declaration
public static string AttachmentTypeExternalAid { get; }
Property Value
| Type | Description |
|---|---|
| string |
Attachments
Gets a collection of file URIs stored in the File Storage Service attached to this item.
Declaration
[Display(GroupName = "Misc", Order = 1000)]
public override ObservableCollection<Attachment> Attachments { get; }
Property Value
| Type | Description |
|---|---|
| ObservableCollection<Attachment> |
Overrides
Concepts
Gets the concepts measured by the question.
Declaration
[Display(GroupName = "Basic:Metadata", Order = 600)]
public ObservableCollection<Concept> Concepts { get; }
Property Value
| Type | Description |
|---|---|
| ObservableCollection<Concept> |
EstimatedTime
Gets or sets the estimated time it will take respondents to respond to the question.
Declaration
[Display(GroupName = "Basic:Metadata", Order = 800)]
public TimeSpan EstimatedTime { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan | The estimated time. |
ExternalAids
Gets a collection of external aids used to help collect data, such as documents, images or movies.
Declaration
public ObservableCollection<OtherMaterial> ExternalAids { get; }
Property Value
| Type | Description |
|---|---|
| ObservableCollection<OtherMaterial> |
HasMultipleResponseDomains
Gets a value indicating whether this instance has multiple response domains.
Declaration
public bool HasMultipleResponseDomains { get; }
Property Value
| Type | Description |
|---|---|
| bool |
|
InterviewerInstructions
Gets the interviewer instructions associated with a question.
Declaration
public MultilingualString InterviewerInstructions { get; }
Property Value
| Type | Description |
|---|---|
| MultilingualString |
IsValid
Gets a value indicating whether this instance has an invalid response domain. A question is considered to have an invalid response domain if it has no response domains, or if it has a CodeDomain with no Codes specified.
Declaration
public bool IsValid { get; }
Property Value
| Type | Description |
|---|---|
| bool |
|
ItemType
Gets the universally unique identifier representing the item's type.
Declaration
public override Guid ItemType { get; }
Property Value
| Type | Description |
|---|---|
| Guid | The identifier representing the item's type. |
Overrides
MultipleResponseDomainType
Gets or sets the number of ResponseDomains for which an answer is expected when there are multiple ResponseDomains for the question.
Declaration
[Display(GroupName = "Basic:Response", Order = 500)]
public MultipleResponseDomainType MultipleResponseDomainType { get; set; }
Property Value
| Type | Description |
|---|---|
| MultipleResponseDomainType | The number of expected ResponseDomains for which an answer is expected |
OtherInterviewerInstruction
Gets or sets an externally-defined interviewer instruction.
Declaration
[Display(GroupName = "Basic", Order = 18)]
public InterviewerInstruction OtherInterviewerInstruction { get; set; }
Property Value
| Type | Description |
|---|---|
| InterviewerInstruction |
QuestionIntent
Gets or sets a description of the purpose of the question.
Declaration
[Display(GroupName = "Basic:Metadata", Order = 500)]
public MultilingualString QuestionIntent { get; set; }
Property Value
| Type | Description |
|---|---|
| MultilingualString | The question intent. |
QuestionResponse
Gets the question response type.
Declaration
[Display(GroupName = "Basic:Response", Order = 400)]
public RepresentationType QuestionResponse { get; set; }
Property Value
| Type | Description |
|---|---|
| RepresentationType |
QuestionText
Gets or sets the question text.
Declaration
[Display(GroupName = "Basic", Order = 15)]
public MultilingualString QuestionText { get; }
Property Value
| Type | Description |
|---|---|
| MultilingualString | The question text. |
RepresentedVariables
Gets a collection of represented variables which describe the common data element the question produces.
Declaration
[Display(GroupName = "Data")]
public ObservableCollection<RepresentedVariable> RepresentedVariables { get; }
Property Value
| Type | Description |
|---|---|
| ObservableCollection<RepresentedVariable> |
ResponseDomains
Gets the response domains for the question, determining the type of data to be collected by the question.
Declaration
[Display(GroupName = "Basic:Response", Order = 600)]
public ObservableCollection<ResponseDomain> ResponseDomains { get; }
Property Value
| Type | Description |
|---|---|
| ObservableCollection<ResponseDomain> |
Summary
Returns the question text.
Declaration
public MultilingualString Summary { get; }
Property Value
| Type | Description |
|---|---|
| MultilingualString |
Methods
GetChildren()
Gets the identifiers of the item's children.
Declaration
public override ChildItemCollection GetChildren()
Returns
| Type | Description |
|---|---|
| ChildItemCollection | The identifiers of the item's children. |
Overrides
RemoveChild(IdentifierTriple)
Removes the specified child.
Declaration
public override int RemoveChild(IdentifierTriple child)
Parameters
| Type | Name | Description |
|---|---|---|
| IdentifierTriple | child | The child to be removed. |
Returns
| Type | Description |
|---|---|
| int | The number of children removed from the item. |
Overrides
Exceptions
| Type | Condition |
|---|---|
| ArgumentNullException | child |
ReplaceChild(IdentifierTriple, IVersionable)
Replaces the child with the specified identifier with the provided item.
Declaration
public override int ReplaceChild(IdentifierTriple toReplace, IVersionable child)
Parameters
| Type | Name | Description |
|---|---|---|
| IdentifierTriple | toReplace | The identifier of the child to replace. |
| IVersionable | child | The new child. |
Returns
| Type | Description |
|---|---|
| int | The number of children replaced. |
Overrides
Exceptions
| Type | Condition |
|---|---|
| ArgumentNullException | child |
WatchProperties()
Watch for property changed events
Declaration
protected override void WatchProperties()