Properties
Properties are the blocks inside a form.
A block can be:
- A section.
- A question.
- A repeated list.
- A coded choice.
Property and node
The backend stores two ideas:
| Word | Meaning |
|---|---|
| Property | The reusable question definition. |
| Node | The position of that property inside a form. |
You usually do not need to think about this while editing. But it explains why Tiep can reuse questions and still track where answers came from.
Core fields
| Field | Meaning |
|---|---|
title | The label shown to the doctor. |
description | What the AI should extract and why. |
type | The data type: object, string, number, integer, boolean, or array. |
required | Which child fields must be answered. |
examples | Sample values that guide the AI. |
x-widget | Optional UI control override. |
x-concept-set-id | Link to a reusable coded catalogue. |
Types
| Type | Use it for | Example answer |
|---|---|---|
object | A section with child fields. | { "reason": "Pain" } |
string | Text or one coded value. | "Shoulder pain" |
number | Decimal numbers. | 37.5 |
integer | Whole numbers. | 3 |
boolean | Yes/no. | true |
array | A list. | ["M75.1", "M25.5"] |
Constraints
Constraints are rules for good answers.
Examples:
| Constraint | Meaning |
|---|---|
minLength | Text must be long enough. |
minimum | Number must not be too small. |
maximum | Number must not be too large. |
minItems | List must have enough items. |
oneOf | Pick one coded option. |
dependencies | If one field is answered, show or require another. |
Example
{
"title": "Visit details",
"type": "object",
"properties": {
"reason": {
"title": "Reason for consultation",
"type": "string",
"description": "Chief complaint in the patient’s own words"
},
"weight": {
"title": "Weight (kg)",
"type": "number",
"minimum": 0,
"maximum": 400,
"examples": [68.5]
}
},
"required": ["reason"]
}
Property types
- Object properties: sections and groups.
- Array properties: repeated values.
- String properties: text and single coded choices.
- Number and integer properties: measurements and counts.
- Boolean properties: yes/no answers.
- Conditions: show or require things based on answers.