Entities |
One of the main goal of AskiaCore is to be an API allowing manipulation of Survey Entities. This page lists the most important aspects of those entities and their interactions.
This topic contains the following sections:
Interface: ISurvey
Survey is the main class of AskiaCore
All none global entities are stored within a survey
An instance of Survey represents an access to a specific real life Survey with a given Context
Interface: IQuestion
Full documentation page: Questions
Questions are stored within a Survey
Questions are more important than any other entity within a survey
Questions define the default flow of an interview
There are multiple types of questions
Questions are stored in a tree structure
Loops have a unique behavior with heavy interaction with its children questions in the tree structure
Each Question creation generates 4 elements of different types:
Page
Question
Caption
Control
Interface: IElement
Full documentation page: Elements
Elements are stored within a Survey
An Element basically represent a visual bloc rendered when the interview is running
There are multiple types of Elements
The Elements are stored in a tree structure with specific hierarchy rules based on their types
Elements are tightly coupled with Questions
Elements do not define the flow of an interview but they define the way it is displayed
Interface: IRouting
Routings are stored within a Survey
Routings are used to modify the default flow of an interview or to execute specific actions during that interview
Routings are stored linearly based on their trigger Question and their order within that Question
There are multiple types of Routings
Interface: IResource
Resources are stored within a Survey
A Resource represents a media file added to the Survey
There are multiple types of Resources
Resources do not include Controls and PageTemplates