Show / Hide Table of Contents

Class Question

Represents a question or a field used to collect data.

Inheritance
object
NotificationObject
IdentifiableBase
VersionableBase
DescribableBase
CaptureBase
Question
Implements
INotifyPropertyChanged
IVersionable
IDescribable
ISummaryText
IVisitable
IBindable
IIdentifiable
IHasCustomFields
Inherited Members
CaptureBase.InParameters
CaptureBase.OutParameters
CaptureBase.Bindings
DescribableBase.ItemName
DescribableBase.Label
DescribableBase.Description
DescribableBase.DisplayLabel
VersionableBase.Accept(IVersionableVisitor)
VersionableBase.IsDirty
VersionableBase.IsPublished
VersionableBase.ChildrenDereferenced
VersionableBase.IsPopulated
VersionableBase.Version
VersionableBase.VersionDate
VersionableBase.VersionResponsibility
VersionableBase.VersionRationale
VersionableBase.CompositeId
VersionableBase.OtherMaterials
VersionableBase.BasedOn
VersionableBase.SucceededBy
VersionableBase.ThumbnailImageUri
VersionableBase.BannerImageUri
VersionableBase.DisableChangeTracking
VersionableBase.RemoveChildHelper(IVersionable, params IList[])
VersionableBase.AddChild(IVersionable)
VersionableBase.ChildTypesAccepted
VersionableBase.TryReplaceChild<T>(Func<T>, Action<T>, IdentifierTriple, IVersionable)
VersionableBase.ToString()
IdentifiableBase.DefaultAgencyId
IdentifiableBase.AgencyId
IdentifiableBase.Identifier
IdentifiableBase.UserIds
IdentifiableBase.CustomFields
IdentifiableBase.UserAttributes
IdentifiableBase.GetUserIdValue(string)
IdentifiableBase.RemoveChildHelper(IdentifierTriple, params IList[])
NotificationObject.PropertyChanged
NotificationObject.RaisePropertyChanged(string)
NotificationObject.OnPropertyChanged(string)
NotificationObject.ResumePropertyEvents()
NotificationObject.SuspendPropertyEvents()
NotificationObject.PropertyEventsSuspended
NotificationObject.PropagateChildChanges(INotifyCollectionChanged, string)
NotificationObject.WatchProperty(INotifyPropertyChanged, string)
NotificationObject.WatchCollection(INotifyCollectionChanged, string)
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
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
VersionableBase.Attachments

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

true if this instance has multiple response domains; otherwise, false.

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

true if this instance has invalid response domain; otherwise, false.

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
VersionableBase.ItemType

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
CaptureBase.GetChildren()

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
CaptureBase.RemoveChild(IdentifierTriple)
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
CaptureBase.ReplaceChild(IdentifierTriple, IVersionable)
Exceptions
Type Condition
ArgumentNullException

child

WatchProperties()

Watch for property changed events

Declaration
protected override void WatchProperties()
Overrides
CaptureBase.WatchProperties()

Implements

INotifyPropertyChanged
IVersionable
IDescribable
ISummaryText
IVisitable
IBindable
IIdentifiable
IHasCustomFields

Extension Methods

VersionableCustomFieldExtensions.GetCustomFieldMultilingualStringValue(IHasCustomFields, string)
VersionableCustomFieldExtensions.GetCustomFieldStringValue(IHasCustomFields, string)
VersionableCustomFieldExtensions.GetCustomFieldUriValue(IHasCustomFields, string)
VersionableCustomFieldExtensions.SetCustomField(IHasCustomFields, MultilingualString, IVersionable)
VersionableCustomFieldExtensions.SetCustomField(IHasCustomFields, MultilingualString, string)
VersionableCustomFieldExtensions.SetCustomField(IHasCustomFields, string, IVersionable)
VersionableCustomFieldExtensions.SetCustomField(IHasCustomFields, string, string)
Extensions.GetDdi32FragmentRepresentation(IVersionable, Ddi32Serializer)
Extensions.GetDdi33FragmentRepresentation(IVersionable, Ddi33Serializer)
Extensions.GetDdiFragmentRepresentation(IVersionable, DDIWorkflowSerializer, XmlDocument)
Extensions.GetMultilingualStrings(IVersionable)
NamingHelper.GetBaseFileNameForItem(IVersionable)
VersionableExtensions.GetHeader(IVersionable, bool)
VersionableExtensions.GetMetadata(IVersionable)
VersionableExtensions.GetUserAttribute(IVersionable, string)
VersionableExtensions.GetUserAttributeInt(IVersionable, string)
VersionableExtensions.SetUserAttribute(IVersionable, string, string)
VersionableUserIdExtensions.SetUserId(IVersionable, string, string)
In this article
Back to top Generated by DocFX