tpmkms
Version:
Reusable libraries for Entodicton, a natural language to json converter
1,623 lines • 1.75 MB
JSON
[
{
"associations": [
[
[
"ampm",
0
],
[
"integer",
0
]
]
],
"config": {
},
"contexts": [
{
"ampm": {
"ampm": "pm",
"determined": true,
"level": 0,
"marker": "ampm",
"range": {
"end": 3,
"start": 2
},
"text": "pm",
"word": "pm"
},
"context_id": 2,
"context_index": 1,
"dead": true,
"instance": true,
"interpolate": "${time} ${ampm}",
"level": 0,
"marker": "timePoint",
"range": {
"end": 3,
"start": 0
},
"text": "2 pm",
"time": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 0,
"start": 0
},
"text": "2",
"types": [
"integer",
"timePoint"
],
"value": 2,
"word": "2"
},
"topLevel": true,
"types": [
"timePoint"
],
"value": 2,
"word": "2"
}
],
"generatedParenthesized": [
""
],
"metadata": {
"opChoices": [
{
"counter": 1,
"op": [
"integer",
0
],
"ops": [
[
"ampm",
0
],
[
"integer",
0
]
]
},
{
"counter": 2,
"op": [
"ampm",
0
],
"ops": [
[
"ampm",
0
]
]
}
]
},
"objects": {
"associations": [
],
"nameToUUID": {
"articles": "articles2",
"asking": "asking2",
"comparable": "comparable2",
"concept": "concept2",
"conjunction": "conjunction2",
"countable": "countable2",
"dialogues": "dialogues2",
"dimension": "dimension2",
"evaluate": "evaluate2",
"formulas": "formulas2",
"gdefaults": "gdefaults2",
"hierarchy": "hierarchy2",
"math": "math2",
"meta": "meta2",
"negation": "negation2",
"numbers": "numbers2",
"pos": "pos2",
"properties": "properties2",
"punctuation": "punctuation2",
"sdefaults": "sdefaults2",
"stm": "stm2",
"tell": "tell2",
"testing": "testing2",
"time": "time1",
"tokenize": "tokenize2",
"words": "words2"
},
"namespaced": {
"articles2": {
"km": "articles2"
},
"asking2": {
"km": "asking2"
},
"comparable2": {
"km": "comparable2"
},
"concept2": {
"defaultTypesForHierarchy": {
},
"km": "concept2",
"valueToWords": [
]
},
"conjunction2": {
"km": "conjunction2"
},
"countable2": {
"km": "countable2"
},
"dialogues2": {
"idSuffix": "",
"km": "dialogues2",
"mentioned": [
],
"variables": {
}
},
"dimension2": {
"km": "dimension2"
},
"evaluate2": {
"km": "evaluate2"
},
"formulas2": {
"formulas": {
"day": [
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"level": 0,
"marker": "unknown",
"range": {
"end": 2,
"start": 0
},
"text": "day",
"types": [
"expression",
"unknown"
],
"unknown": true,
"value": "day",
"word": "day"
},
"level": 1,
"marker": "equals",
"range": {
"end": 15,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 12,
"start": 12
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 15,
"start": 6
},
"text": "hours / 24",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 10,
"start": 6
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 15,
"start": 14
},
"text": "24",
"types": [
"integer"
],
"value": 24,
"word": "24"
}
},
"text": "day = hours / 24",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance7#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 12,
"start": 12
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 15,
"start": 6
},
"text": "hours / 24",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 10,
"start": 6
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 15,
"start": 14
},
"text": "24",
"types": [
"integer"
],
"value": 24,
"word": "24"
}
},
"name": {
"dead": true,
"level": 0,
"marker": "unknown",
"range": {
"end": 2,
"start": 0
},
"text": "day",
"types": [
"expression",
"unknown"
],
"unknown": true,
"value": "day",
"word": "day"
}
}
],
"hour": [
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 4,
"start": 0
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"level": 1,
"marker": "equals",
"range": {
"end": 19,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 16,
"start": 16
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 19,
"start": 8
},
"text": "minutes / 60",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 14,
"start": 8
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 19,
"start": 18
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"text": "hours = minutes / 60",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance1#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 16,
"start": 16
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 19,
"start": 8
},
"text": "minutes / 60",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 14,
"start": 8
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 19,
"start": 18
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"name": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 4,
"start": 0
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
}
},
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 4,
"start": 0
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"level": 1,
"marker": "equals",
"range": {
"end": 21,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 16,
"start": 16
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 21,
"start": 8
},
"text": "seconds / 3600",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 14,
"start": 8
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word": "seconds"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 21,
"start": 18
},
"text": "3600",
"types": [
"integer"
],
"value": 3600,
"word": "3600"
}
},
"text": "hours = seconds / 3600",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance4#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 16,
"start": 16
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 21,
"start": 8
},
"text": "seconds / 3600",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 14,
"start": 8
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word": "seconds"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 21,
"start": 18
},
"text": "3600",
"types": [
"integer"
],
"value": 3600,
"word": "3600"
}
},
"name": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 4,
"start": 0
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
}
},
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 4,
"start": 0
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"level": 1,
"marker": "equals",
"range": {
"end": 16,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "timesExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "timesOperator",
"range": {
"end": 13,
"start": 13
},
"text": "*",
"value": "timesOperator",
"word": "*"
},
"range": {
"end": 16,
"start": 8
},
"text": "days * 24",
"types": [
"number",
"timesExpression"
],
"value": null,
"word": "*",
"x": {
"dead": true,
"level": 0,
"marker": "unknown",
"range": {
"end": 11,
"start": 8
},
"text": "days",
"types": [
"number",
"unknown"
],
"unknown": true,
"value": "days",
"word": "days"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 16,
"start": 15
},
"text": "24",
"types": [
"integer"
],
"value": 24,
"word": "24"
}
},
"text": "hours = days * 24",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance8#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "timesExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "timesOperator",
"range": {
"end": 13,
"start": 13
},
"text": "*",
"value": "timesOperator",
"word": "*"
},
"range": {
"end": 16,
"start": 8
},
"text": "days * 24",
"types": [
"number",
"timesExpression"
],
"value": null,
"word": "*",
"x": {
"dead": true,
"level": 0,
"marker": "unknown",
"range": {
"end": 11,
"start": 8
},
"text": "days",
"types": [
"number",
"unknown"
],
"unknown": true,
"value": "days",
"word": "days"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 16,
"start": 15
},
"text": "24",
"types": [
"integer"
],
"value": 24,
"word": "24"
}
},
"name": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 4,
"start": 0
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
}
}
],
"minute": [
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
},
"level": 1,
"marker": "equals",
"range": {
"end": 19,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "timesExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "timesOperator",
"range": {
"end": 16,
"start": 16
},
"text": "*",
"value": "timesOperator",
"word": "*"
},
"range": {
"end": 19,
"start": 10
},
"text": "hours * 60",
"types": [
"number",
"timesExpression"
],
"value": null,
"word": "*",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 14,
"start": 10
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 19,
"start": 18
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"text": "minutes = hours * 60",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance2#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "timesExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "timesOperator",
"range": {
"end": 16,
"start": 16
},
"text": "*",
"value": "timesOperator",
"word": "*"
},
"range": {
"end": 19,
"start": 10
},
"text": "hours * 60",
"types": [
"number",
"timesExpression"
],
"value": null,
"word": "*",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "hour",
"number": "many",
"range": {
"end": 14,
"start": 10
},
"text": "hours",
"types": [
"hour"
],
"value": "hour",
"word": "hours"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 19,
"start": 18
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"name": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
}
},
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
},
"level": 1,
"marker": "equals",
"range": {
"end": 21,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 18,
"start": 18
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 21,
"start": 10
},
"text": "seconds / 60",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 16,
"start": 10
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word": "seconds"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 21,
"start": 20
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"text": "minutes = seconds / 60",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance6#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "divideByExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "divideByOperator",
"range": {
"end": 18,
"start": 18
},
"text": "/",
"value": "divideByOperator",
"word": "/"
},
"range": {
"end": 21,
"start": 10
},
"text": "seconds / 60",
"types": [
"divideByExpression",
"number"
],
"value": null,
"word": "/",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 16,
"start": 10
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word": "seconds"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 21,
"start": 20
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"name": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
}
}
],
"second": [
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word": "seconds"
},
"level": 1,
"marker": "equals",
"range": {
"end": 21,
"start": 0
},
"right": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "timesExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "timesOperator",
"range": {
"end": 18,
"start": 18
},
"text": "*",
"value": "timesOperator",
"word": "*"
},
"range": {
"end": 21,
"start": 10
},
"text": "minutes * 60",
"types": [
"number",
"timesExpression"
],
"value": null,
"word": "*",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 16,
"start": 10
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 21,
"start": 20
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"text": "seconds = minutes * 60",
"topLevel": true,
"touchedBy": [
"time#call2",
"instance3#time#call2"
],
"value": "equals",
"word": "="
},
"formula": {
"dead": true,
"evaluate": true,
"interpolate": [
{
"property": "x"
},
{
"property": "operator"
},
{
"property": "y"
}
],
"isResponse": true,
"level": 1,
"marker": "timesExpression",
"number": "one",
"operator": {
"level": 0,
"marker": "timesOperator",
"range": {
"end": 18,
"start": 18
},
"text": "*",
"value": "timesOperator",
"word": "*"
},
"range": {
"end": 21,
"start": 10
},
"text": "minutes * 60",
"types": [
"number",
"timesExpression"
],
"value": null,
"word": "*",
"x": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "minute",
"number": "many",
"range": {
"end": 16,
"start": 10
},
"text": "minutes",
"types": [
"minute"
],
"value": "minute",
"word": "minutes"
},
"y": {
"dead": true,
"instance": true,
"level": 1,
"marker": "integer",
"range": {
"end": 21,
"start": 20
},
"text": "60",
"types": [
"integer"
],
"value": 60,
"word": "60"
}
},
"name": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word": "seconds"
}
},
{
"equality": {
"context_id": null,
"context_index": 1,
"dead": true,
"left": {
"dead": true,
"dimension": "time",
"level": 0,
"marker": "second",
"number": "many",
"range": {
"end": 6,
"start": 0
},
"text": "seconds",
"types": [
"second"
],
"value": "second",
"word":