Entity Schemas¶
This document describes the structure of various structures that developer can use.
The following documentation is generated from KMP JSON Schema
. Knowledge Model Package file which can be used for importing and exporting Knowledge Models in DSW. Although we usually use .km
extension, it is a JSON file with defined structure.
Package Bundle JSON¶
The JSON file used for import and export of KMs uses packages (event containers) bundled in a single object: |
UUID¶
UUID version 4 according to RFC4122 |
|
type |
string |
pattern |
^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$ |
Optional String¶
anyOf |
type |
string |
type |
null |
String Map¶
Representation of simple map where both keys and values are strings |
||
type |
object |
|
patternProperties |
||
|
type |
string |
Value Type¶
type |
string |
enum |
StringQuestionValueType, NumberQuestionValueType, DateQuestionValueType, TextQuestionValueType |
Desirability Level¶
anyOf |
type |
integer |
type |
null |
SemVer¶
Simple semantic version tag, e.g., |
|
type |
string |
pattern |
^[0-9]+\.[0-9]+\.[0-9]+$ |
Knowledge Model ID¶
ID of knowledge model |
|
type |
string |
pattern |
^[a-zA-Z0-9\-]+$ |
Organization ID¶
ID of organization |
|
type |
string |
pattern |
^[a-zA-Z0-9\.]+$ |
Package ID¶
Unique composed ID for a package |
|
type |
string |
pattern |
^[a-zA-Z0-9\.]+:^[a-zA-Z0-9\-]+:^[0-9]+\.[0-9]+\.[0-9]+$ |
Timestamp¶
Standard ISO timestamp format, e.g., |
|
type |
string |
pattern |
^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?Z$ |
Metric Measure¶
Entity capturing how certain metric is affected |
||
type |
object |
|
properties |
||
|
||
|
type |
number |
maximum |
1.0 |
|
minimum |
0.0 |
|
|
type |
number |
maximum |
1.0 |
|
minimum |
0.0 |
|
additionalProperties |
False |
Package Bundle¶
Collection of potentially multiple linked Knowledge Model packages that is commonly used for import and export in DSW. |
||
type |
object |
|
properties |
||
|
type |
number |
maximum |
5 |
|
minimum |
5 |
|
|
type |
string |
|
||
|
||
|
||
|
||
|
type |
array |
items |
Package¶
A single KM package that holds changes (or more precisely events) for the specific version. |
||
type |
object |
|
properties |
||
|
type |
number |
maximum |
5 |
|
minimum |
5 |
|
|
type |
string |
|
||
|
||
|
||
|
||
|
type |
string |
|
type |
string |
|
type |
string |
|
||
|
||
|
||
|
||
|
type |
array |
items |
Event¶
An event represents a single change in a KM. There are events for each entity type and usually three types of changes: Add, Edit, and Delete. In some cases, also Move event is possible. |
|
anyOf |
|
Add Knowledge Model Event¶
Add a new Knowledge Model (typically only once and the very first event) as the top-level entity |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddKnowledgeModelEvent |
|
|
||
|
||
|
||
|
type |
string |
additionalProperties |
False |
Edit Knowledge Model Event¶
Edit properties of the top-level entity |
||||
type |
object |
|||
properties |
||||
|
type |
string |
||
enum |
EditKnowledgeModelEvent |
|||
|
||||
|
||||
|
||||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
array |
||
items |
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
array |
||
items |
||||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
array |
||
items |
||||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
array |
||
items |
||||
additionalProperties |
False |
Add Chapter Event¶
Add a new chapter to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddChapterEvent |
|
|
||
|
||
|
||
|
type |
string |
|
||
additionalProperties |
False |
Edit Chapter Event¶
Edit an existing chapter in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditChapterEvent |
||
|
|||
|
|||
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
additionalProperties |
False |
Delete Chapter Event¶
Delete an existing chapter from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteChapterEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Add Options Question Event¶
Add a new options question to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddQuestionEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
OptionsQuestion |
|
|
type |
string |
|
||
|
||
|
type |
array |
items |
||
additionalProperties |
False |
Add List Question Event¶
Add a new list question to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddQuestionEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
ListQuestion |
|
|
type |
string |
|
||
|
||
|
type |
array |
items |
||
additionalProperties |
False |
Add Value Question Event¶
Add a new value question to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddQuestionEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
ValueQuestion |
|
|
type |
string |
|
||
|
||
|
type |
array |
items |
||
|
||
additionalProperties |
False |
Add Integration Question Event¶
Add a new integration question to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddQuestionEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
IntegrationQuestion |
|
|
type |
string |
|
||
|
||
|
type |
array |
items |
||
|
||
|
||
additionalProperties |
False |
Edit Options Question Event¶
Edit an existing options question in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditQuestionEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
OptionsQuestion |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
additionalProperties |
False |
Edit List Question Event¶
Edit an existing list question in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditQuestionEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
ListQuestion |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
additionalProperties |
False |
Edit Value Question Event¶
Edit an existing value question in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditQuestionEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
ValueQuestion |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
additionalProperties |
False |
Edit Integration Question Event¶
Edit an existing integration question in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditQuestionEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
IntegrationQuestion |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
array |
|
items |
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
additionalProperties |
False |
Delete Question Event¶
Delete an existing question from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteQuestionEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Add Answer Event¶
Add a new answer to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddAnswerEvent |
|
|
||
|
||
|
||
|
type |
string |
|
||
|
type |
array |
items |
||
additionalProperties |
False |
Edit Answer Event¶
Edit an existing answer in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditAnswerEvent |
||
|
|||
|
|||
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
additionalProperties |
False |
DeleteAnswerEvent¶
Delete an existing answer from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteAnswerEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Add Expert Event¶
Add a new expert to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddExpertEvent |
|
|
||
|
||
|
||
|
type |
string |
|
type |
string |
additionalProperties |
False |
Edit Expert Event¶
Edit an existing expert in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditExpertEvent |
||
|
|||
|
|||
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
additionalProperties |
False |
Delete Expert Event¶
Delete an existing expert from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteExpertEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Add Resource Page Reference Event¶
Add a new resource page reference to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddReferenceEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
ResourcePageReference |
|
|
type |
string |
additionalProperties |
False |
Add URL Reference Event¶
Add a new URL reference to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddReferenceEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
URLReference |
|
|
type |
string |
format |
url |
|
|
type |
string |
additionalProperties |
False |
Add Cross-Reference Event¶
Add a new cross-reference to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddReferenceEvent |
|
|
||
|
||
|
||
|
type |
string |
enum |
CrossReference |
|
|
type |
string |
|
type |
string |
additionalProperties |
False |
Edit Resource Page Reference Event¶
Edit an existing resource page reference in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditReferenceEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
ResourcePageReference |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
additionalProperties |
False |
Edit URL Reference Event¶
Edit an existing URL reference in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditReferenceEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
URLReference |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
format |
url |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
additionalProperties |
False |
Edit Cross-Reference Event¶
Edit an existing cross-reference in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditReferenceEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
enum |
CrossReference |
||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
additionalProperties |
False |
Delete Reference Event¶
Delete an existing reference from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteReferenceEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Add Tag Event¶
Add a new tag to the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
AddTagEvent |
|
|
||
|
||
|
||
|
type |
string |
|
||
|
type |
string |
additionalProperties |
False |
Edit Tag Event¶
Edit an existing tag in the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
EditTagEvent |
||
|
|||
|
|||
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
|||
|
type |
object |
|
properties |
|||
|
type |
boolean |
|
|
type |
string |
|
additionalProperties |
False |
Delete Tag Event¶
Delete an existing tag from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteTagEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Add Integration Event¶
Add a new integration to the KM |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
enum |
AddIntegrationEvent |
||
|
|||
|
|||
|
|||
|
type |
string |
|
|
type |
string |
|
|
type |
string |
|
|
type |
array |
|
items |
type |
string |
|
|
type |
string |
|
|
type |
string |
|
|
type |
object |
|
|
type |
string |
|
|
type |
string |
|
|
type |
string |
|
|
type |
string |
|
|
type |
string |
|
additionalProperties |
False |
Edit Integration Event¶
Edit an existing integration entity |
||||
type |
object |
|||
properties |
||||
|
type |
string |
||
enum |
EditIntegrationEvent |
|||
|
||||
|
||||
|
||||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
array |
||
items |
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
|
type |
object |
||
properties |
||||
|
type |
boolean |
||
|
type |
string |
||
additionalProperties |
False |
Delete Integration Event¶
Delete an existing integration from the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
DeleteIntegrationEvent |
|
|
||
|
||
|
||
additionalProperties |
False |
Move Question Event¶
Move an existing question to a different location in the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
MoveQuestionEvent |
|
|
||
|
||
|
||
|
||
additionalProperties |
False |
Move Answer Event¶
Move an existing answer to a different location in the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
MoveAnswerEvent |
|
|
||
|
||
|
||
|
||
additionalProperties |
False |
Move Expert Event¶
Move an existing expert to a different location in the KM |
||
type |
object |
|
properties |
||
|
type |
string |
enum |
MoveExpertEvent |
|
|
||
|
||
|
||
|
||
additionalProperties |
False |