tpmkms
Version:
Reusable libraries for Entodicton, a natural language to json converter
2,096 lines (2,095 loc) • 2.38 MB
JSON
[
{
"associations": [
[
[
"modifies",
0
],
[
"unknown",
0
]
]
],
"config": {
"bridges": [
{
"id": "propertyRelation",
"level": 0,
"words": [
{
"number": "one",
"word": "propertyRelation"
},
{
"number": "many",
"word": "propertyRelations"
}
]
},
{
"id": "xfx",
"isA": [
"queryable"
],
"level": 0
},
{
"bridge": "{ ...next(operator), arguments: after[0] }",
"id": "between",
"isA": [
"preposition"
],
"level": 0
},
{
"bridge": "{ ...before[0], arguments: operator.arguments }",
"id": "between",
"level": 1
},
{
"id": "hierarchyAble",
"isA": [
"queryable"
],
"level": 0
},
{
"id": "readonly",
"isA": [
"queryable"
],
"level": 0
},
{
"bridge": "{ ...context, number: operator.number, object.number: operator.number, negation: true }*",
"id": "doesnt",
"level": 0
},
{
"bridge": "{ ...next(operator), object: { number: operator.number, ...before }, property: after[0], do: { left: 'object', right: 'property' } }",
"id": "have",
"isA": [
"canBeDoQuestion",
"canBeQuestion"
],
"level": 0,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
],
[
"object",
"unknown"
]
]
},
{
"bridge": "{ ...next(operator) }",
"id": "have",
"level": 1,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
]
]
},
{
"id": "property",
"isA": [
"queryable",
"theAble"
],
"level": 0,
"words": [
"properties"
]
},
{
"id": "object",
"isA": [
"queryable",
"theAble",
"listable"
],
"level": 0
},
{
"bridge": "{ ...next(operator), possession: true, object: before[0], objects: before }",
"id": "possession",
"inverted": true,
"level": 0,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
],
[
"object",
"unknown"
]
]
},
{
"bridge": "{ ...after[0], object: operator.object, possession: true, objects: append(default(after[0].objects, after), operator.objects), marker: after.marker, types: append(after[0].types, ['property']) }",
"id": "possession",
"inverted": true,
"level": 1,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
],
[
"object",
"unknown"
]
]
},
{
"bridge": "{ ...next(operator), object: after[0], objects: after }",
"id": "propertyOf",
"isA": [
"preposition"
],
"level": 0,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
],
[
"object",
"unknown"
]
]
},
{
"bridge": "{ ...before[0], propertyOf: true, object: operator.object, objects: append(default(before[0].objects, before), operator.objects) }",
"id": "propertyOf",
"level": 1,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
]
]
},
{
"bridge": "{ ...after[0], query: true, whose: \"whose\", modifiers: append([\"whose\"], after[0].modifiers)}",
"id": "whose",
"isA": [
"object"
],
"level": 0
},
{
"bridge": "{ ...after[0], object: operator, objects: [after[0], operator] }",
"id": "objectPrefix",
"level": 0,
"localHierarchy": [
[
"property",
"queryable"
],
[
"property",
"theAble"
],
[
"property",
"unknown"
]
]
},
{
"bridge": "{ ...next(operator), conceptModifiers: before[0], concept: after[0] }",
"check": [
"marker",
"text",
"verbatim",
"value",
"evalue",
"isResponse",
{
"properties": "modifiers"
},
{
"properties": "postModifiers"
},
"concept",
"conceptModifiers"
],
"id": "modifies",
"isA": [
"verb"
],
"level": 0,
"semantic": {
"notes": "define a modifier",
"where": "/home/dev/code/theprogrammablemind/kms/common/concept.js:33"
},
"words": [
{
"flatten": false,
"number": "one",
"word": "modifies"
},
{
"flatten": true,
"number": "many",
"word": "modify"
}
]
},
{
"bridge": "{ ...after[0], flatten: false, literally: true }",
"id": "literally",
"level": 0
},
{
"id": "concept",
"level": 0
},
{
"before": [
"verb"
],
"bridge": "\n { \n ...after[0], \n verb: after[0], \n that: operator, \n generate: ['that', 'verb'], \n localPriorities: { actLike: [\"subordinatedVerb\", 0] }, \n bridge_override: { \n operator: after[0].marker, \n bridge: '{ \n ...bridge.subject, \n postModifiers: [\"conditions\"], \n modifiers: [], \n generate: concatm(\"thatClause.\", bridge.generate), \n thatClause: bridge, \n conditions: append(bridge.subject.conditions, [bridge]) \n }' \n } \n }",
"id": "thatVerb",
"level": 0
},
{
"children": [
"negatable"
],
"id": "queryable",
"level": 0
},
{
"id": "queryable",
"isA": [
"listable"
],
"level": 1
},
{
"bridge": "{ ...next(operator), object: after[0] }",
"id": "makeObject",
"level": 0
},
{
"bridge": "{ ...next(operator), suffix: after[0] }",
"id": "setIdSuffix",
"level": 0
},
{
"id": "resetIdSuffix",
"level": 0
},
{
"bridge": "{ ...next(operator), object: after[0] }",
"id": "by",
"level": 0,
"localHierarchy": [
[
"unknown",
"isEder"
]
],
"optional": {
"1": "{ marker: 'unknown', implicit: true, concept: true }"
}
},
{
"id": "debug23",
"level": 0
},
{
"bridge": "{ ...after, query: ['what'], modifiers: ['what'], what: operator }",
"id": "what",
"level": 0,
"optional": "{ ...next(operator), query: ['what'], determined: true }"
},
{
"id": "whatAble",
"level": 0
},
{
"bridge": "{ ...next(operator), toObject: after[0] }",
"id": "to",
"isA": [
"preposition"
],
"level": 0,
"where": "/home/dev/code/theprogrammablemind/kms/common/dialogues.js:161"
},
{
"id": "toAble",
"level": 0
},
{
"bridge": "{ \n ...next(operator), \n form: 'infinitive',\n type: after[0] \n }",
"id": "be",
"level": 0
},
{
"id": "briefOrWordy",
"level": 0
},
{
"id": "yesno",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "canBeQuestion",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "canBeQuestion",
"level": 1
},
{
"bridge": "{ ...before[0], query: [before.marker] }",
"id": "questionMark",
"level": 0
},
{
"bridge": "{ number: operator.number, ...context, [context.subject].number: operator.number }",
"id": "isEd",
"level": 0,
"localHierarchy": [
[
"unknown",
"isEder"
],
[
"unknown",
"isEdee"
]
]
},
{
"bridge": "{ ...next(operator) }",
"id": "isEdAble",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "isEdAble",
"level": 1
},
{
"id": "isEdee",
"level": 0
},
{
"id": "isEder",
"level": 0
},
{
"bridge": "{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }",
"id": "is",
"isA": [
"verb"
],
"level": 0,
"localHierarchy": [
[
"unknown",
"queryable"
]
]
},
{
"bridge": "{ ...next(operator) }",
"id": "is",
"level": 1,
"localHierarchy": [
[
"unknown",
"queryable"
]
]
},
{
"bridge": "{ ...operator, marker: operator('is', 1), one: after[0], two: after[1], query: true, generate: [operator, 'one', 'two'] }",
"id": "isQuery",
"isA": [
"verb"
],
"level": 0,
"localHierarchy": [
[
"unknown",
"queryable"
]
]
},
{
"bridge": "{ ...next(operator) }",
"id": "canBeDoQuestion",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "canBeDoQuestion",
"level": 1
},
{
"bridge": "{ ...next(operator) }",
"id": "canBeDoQuestion",
"level": 2
},
{
"bridge": "{ ...next(operator) }",
"id": "doesAble",
"level": 0
},
{
"bridge": "{ ...next(operator), before: before[0] }",
"id": "doesAble",
"level": 1
},
{
"bridge": "{ query: true, what: operator.marker, ...context, number: operator.number, object.number: operator.number }*",
"id": "does",
"level": 0
},
{
"bridge": "{ ...next(operator), pullFromContext: true, types: ['reason'], isResponse: true }",
"id": "why",
"level": 0
},
{
"id": "reason",
"isA": [
"theAble",
"queryable"
],
"level": 0
},
{
"bridge": "{ ...next(operator), complete: true }",
"id": "nevermind",
"level": 0
},
{
"before": [
"verb"
],
"bridge": "{ ...after[0], negated: operator, modifiers: append([\"negated\"], after[0].modifiers) }",
"id": "not",
"level": 0,
"localHierarchy": [
[
"unknown",
"negatable"
]
]
},
{
"id": "negatable",
"level": 0,
"words": [
{
"number": "one",
"word": "negatable"
},
{
"number": "many",
"word": "negatables"
}
]
},
{
"bridge": "{ ...next(operator), value: append(before, after) }",
"id": "orList",
"level": 0,
"selector": {
"left": [
{
"marker": "orAble"
}
],
"passthrough": true,
"right": [
{
"marker": "orAble"
}
]
}
},
{
"bridge": "{ ...operator, value: append(before, operator.value) }",
"id": "orList",
"level": 1,
"selector": {
"left": [
{
"marker": "orAble"
}
],
"passthrough": true
}
},
{
"bridge": "{ ...next(operator), from: before[0], to: after[0] }",
"id": "means",
"level": 0
},
{
"bridge": "{ ...next(operator), antecedant: after[0], consequence: after[1].consequence }",
"id": "if",
"level": 0
},
{
"bridge": "{ ...next(operator), consequence: after[0] }",
"id": "then",
"level": 0
},
{
"id": "ifAble",
"level": 0
},
{
"id": "orAble",
"level": 0
},
{
"bridge": "{ ...next(operator), listable: true, isList: true, value: append(before, after) }",
"id": "list",
"level": 0,
"selector": {
"left": [
{
"pattern": "($type && context.instance == variables.instance && context.dead == variables.dead && !@<=$contexts[1].notConjunctableWith))"
}
],
"match": "same",
"passthrough": true,
"right": [
{
"pattern": "($type && context.instance == variables.instance && context.dead == variables.dead && !@<=$contexts[-1].notConjunctableWith))"
}
]
}
},
{
"bridge": "{ ...operator, value: append(before, operator.value) }",
"id": "list",
"level": 1,
"selector": {
"left": [
{
"pattern": "($type && context.instance == variables.instance && context.dead == variables.dead)"
}
],
"match": "same",
"passthrough": true
}
},
{
"id": "memorable",
"isA": [
"theAble"
],
"level": 0,
"words": [
{
"number": "one",
"word": "memorable"
},
{
"number": "many",
"word": "memorables"
}
]
},
{
"bridge": "{ ...next(operator), postModifiers: ['rememberee'], rememberee: after[0] }",
"id": "remember",
"isA": [
"verb"
],
"level": 0
},
{
"bridge": "{ ...after[0], modifiers: [\"stm_previous\"], stm_previous: operator, pullFromContext: true }",
"id": "stm_previous",
"isA": [
"adjective"
],
"level": 0
},
{
"bridge": "{ ...after[0], modifiers: [\"stm_current\"], stm_current: operator, pullFromContext: true }",
"id": "stm_current",
"isA": [
"adjective"
],
"level": 0
},
{
"bridge": "{ ...before[0], postModifiers: [\"stm_previous\"], stm_previous: operator, pullFromContext: true }",
"id": "stm_before",
"isA": [
"adjective"
],
"level": 0
},
{
"after": [
"verb"
],
"bridge": "{ ...next(operator), postModifiers: ['value'], value: after[0] }",
"id": "evaluate",
"level": 0,
"where": "/home/dev/code/theprogrammablemind/kms/common/evaluate.js:23"
},
{
"id": "everything",
"level": 0
},
{
"bridge": "{ ...after[0], focusableForPhrase: true, pullFromContext: true, concept: true, wantsValue: true, distributer: operator, modifiers: append([\"distributer\"], after[0].modifiers)}",
"id": "each",
"isA": [
"article"
],
"level": 0
},
{
"bridge": "{ ...after[0], focusableForPhrase: true, pullFromContext: true, concept: true, wantsValue: true, distributer: operator, modifiers: append([\"distributer\"], after[0].modifiers)}",
"id": "every",
"isA": [
"article"
],
"level": 0
},
{
"id": "distributable",
"isA": [
"queryable"
],
"level": 0
},
{
"bridge": "{ ...after[0], focusableForPhrase: true, pullFromContext: true, concept: true, wantsValue: true, determiner: \"the\", modifiers: append([\"determiner\"], after[0].modifiers)}",
"id": "the",
"isA": [
"article"
],
"level": 0,
"localHierarchy": [
[
"unknown",
"theAble"
]
]
},
{
"bridge": "{ ...after[0], pullFromContext: false, instance: true, concept: true, number: 'one', wantsValue: true, determiner: operator, modifiers: append(['determiner'], after[0].modifiers) }",
"id": "a",
"isA": [
"article"
],
"level": 0,
"localHierarchy": [
[
"unknown",
"theAble"
]
]
},
{
"id": "queryable",
"level": 0
},
{
"children": [
"noun"
],
"id": "theAble",
"level": 0
},
{
"before": [
"verb"
],
"id": "thisitthat",
"isA": [
"queryable"
],
"level": 0
},
{
"bridge": "{ ...next(operator), pullFromContext: true, unknown: true, determined: true }",
"id": "it",
"isA": [
"thisitthat"
],
"level": 0
},
{
"bridge": "{ interpolate: [{property: 'this'}, {property: 'object'}], ...next(after[0]), unknown: true, this: operator, object: after[0], pullFromContext: true }",
"id": "this",
"isA": [
"thisitthat"
],
"level": 0,
"optional": {
"1": "{ ...operator, interpolate: [{property: 'this'}] }"
}
},
{
"bridge": "{ interpolate: [{property: 'that'}, {property: 'object'}], ...next(after[0]), unknown: true, that: operator, object: after[0], pullFromContext: true }",
"id": "that",
"isA": [
"thisitthat"
],
"level": 0,
"optional": {
"1": "{ ...operator, interpolate: [{property: 'that'}] }"
}
},
{
"children": [
"noun"
],
"id": "thisAble",
"level": 0
},
{
"before": [
"ingVerb",
"subordinatedVerb",
"article",
"preposition"
],
"id": "adjective",
"level": 0
},
{
"before": [
"ingVerb",
"subordinatedVerb"
],
"id": "adverb",
"level": 0
},
{
"before": [
"ingVerb",
"subordinatedVerb",
"preposition"
],
"id": "article",
"level": 0
},
{
"before": [
"ingVerb",
"subordinatedVerb"
],
"id": "preposition",
"level": 0
},
{
"id": "pronoun",
"level": 0
},
{
"before": [
"endOfSentence"
],
"id": "verb",
"level": 0
},
{
"before": [
"punctuation",
"verb"
],
"id": "subordinatedVerb",
"level": 0
},
{
"before": [
"punctuation",
"verb"
],
"id": "ingVerb",
"level": 0
},
{
"id": "punctuation",
"level": 0
},
{
"before": [
"ingVerb",
"subordinatedVerb"
],
"id": "noun",
"level": 0
},
{
"bridge": "{ ...before[0], decorators.after: operator, no_convolutions: true }",
"id": "comma",
"level": 0,
"skipable": true,
"words": [
{
"depth": "+",
"value": ",",
"word": ","
}
]
},
{
"bridge": "{ ...after[0], parenthesis: '(' }",
"id": "leftParenthesis",
"level": 0,
"skipable": true,
"words": [
{
"depth": "+",
"value": "(",
"word": "("
}
]
},
{
"bridge": "{ ...next(operator) }",
"id": "rightParenthesis",
"level": 0,
"skipable": true,
"words": [
{
"depth": "-",
"value": ")",
"word": ")"
}
]
},
{
"id": "colon",
"level": 0,
"words": [
":"
]
},
{
"bridge": "{ ...before, postModifiers: append(before.postModifiers, ['endOfSentence']), endOfSentence: operator }",
"id": "endOfSentence",
"level": 0,
"words": [
"."
]
},
{
"bridge": "{ ...next(operator), quote: 'double' }",
"id": "doubleQuote",
"level": 0,
"words": [
{
"depth": "+",
"word": "\""
}
]
},
{
"bridge": "{ ...operator, unknown: true, dead: true }",
"id": "unknown",
"level": 0
},
{
"id": "listable",
"level": 0
},
{
"allowDups": true,
"bridge": "{ ...next(operator) }",
"id": "strip_modifier",
"level": 0,
"transitoryMode": true
},
{
"allowDups": true,
"bridge": "{ ...next(operator), value: or(operator.value, 'chicken') }",
"id": "chicken",
"level": 0,
"transitoryMode": true
},
{
"allowDups": true,
"bridge": "{ ...next(operator), value: 'strip' }",
"id": "strip",
"level": 0,
"transitoryMode": true
},
{
"allowDups": true,
"associator_return_type": [
"chicken_strip",
0
],
"before": [
"verb"
],
"bridge": "{ ...after[0], 'modifier_chicken': before[0], atomic: true, dead: true, marker: operator('chicken_strip'), value: 'chicken_strip', modifiers: append(['modifier_chicken'], after[0].modifiers)}",
"convolution": true,
"id": "chicken_strip",
"isA": [
{
"instance": true,
"parent": "adjective"
}
],
"level": 0,
"transitoryMode": true
}
],
"operators": [
{
"allowDups": true,
"pattern": "([strip|])"
},
{
"allowDups": true,
"pattern": "([chicken|])"
},
{
"allowDups": true,
"pattern": "([strip_modifier|])"
},
{
"allowDups": true,
"pattern": "((@==chicken) [chicken_strip] (@==strip))"
},
{
"pattern": "([hierarchyAble|])"
},
{
"pattern": "([propertyRelation|])"
},
{
"pattern": "(([property]) <([propertyOf|of] ([object]))>)"
},
{
"pattern": "(<whose> ([property]))"
},
{
"pattern": "([readonly])"
},
{
"pattern": "(<objectPrefix|> ([property]))"
},
{
"pattern": "(<(([object]) [possession|])> ([property|]))"
},
{
"pattern": "(([object|]) [have|] ([property|]))"
},
{
"pattern": "(<doesnt|> ([have/0]))"
},
{
"pattern": "(([xfx]) <([between] (words))>)"
},
{
"pattern": "((punctuation != true)* [modifies|] (_any))"
},
{
"pattern": "([concept])"
},
{
"pattern": "([literally] (modifies/0))"
},
{
"pattern": "(<thatVerb|that> (verb/0))"
},
{
"pattern": "([makeObject] (word))"
},
{
"pattern": "([setIdSuffix] (word))"
},
{
"pattern": "([resetIdSuffix])"
},
{
"pattern": "(([queryable]) [is|] ([queryable|]))"
},
{
"pattern": "([isQuery|] ([queryable]) ([queryable]))"
},
{
"pattern": "(([queryable]) [(<isEd|> ([isEdAble|]))])"
},
{
"pattern": "(([isEdee])^ <isEdAble|> ([by] ([isEder])?))"
},
{
"pattern": "([isEdee|])"
},
{
"pattern": "([isEder|])"
},
{
"pattern": "([why])"
},
{
"pattern": "([reason])"
},
{
"pattern": "(<what> ([whatAble|]))"
},
{
"pattern": "([what:optional])"
},
{
"pattern": "([be] ([briefOrWordy|]))"
},
{
"pattern": "([([canBeQuestion])])"
},
{
"pattern": "(([canBeQuestion/1,2]) <questionMark|>)"
},
{
"pattern": "(([what]) [(<does|> ([doesAble|]))])"
},
{
"pattern": "([canBeDoQuestion])"
},
{
"pattern": "(<does|> ([canBeDoQuestion/0,1]))"
},
{
"pattern": "([yesno|])"
},
{
"pattern": "([debug23])"
},
{
"pattern": "([to] ([toAble|]))"
},
{
"pattern": "([nevermind])"
},
{
"pattern": "([negatable])"
},
{
"pattern": "([not] (negatable/*))"
},
{
"pattern": "((phrase) [means] (phrase))"
},
{
"pattern": "([if] ([ifAble]) ([then] ([ifAble])))"
},
{
"pattern": "(([orAble|]) [orList|or] ([orAble|]))"
},
{
"pattern": "(x [list|and] y)"
},
{
"pattern": "(<stm_current|current> ([memorable]))"
},
{
"pattern": "(<stm_previous|previous> ([memorable]))"
},
{
"pattern": "(([memorable]) <stm_before|before>)"
},
{
"pattern": "([remember] (memorable/*))"
},
{
"pattern": "([evaluate] (value))"
},
{
"pattern": "([thisitthat|])"
},
{
"pattern": "([it])"
},
{
"pattern": "([everything])"
},
{
"pattern": "([queryable])"
},
{
"pattern": "(<each> ([distributable]))"
},
{
"pattern": "(<every> ([distributable]))"
},
{
"pattern": "(<the|> ([theAble]))"
},
{
"pattern": "(<a|a,an> ([theAble|]))"
},
{
"pattern": "(<this> ([thisAble])?)"
},
{
"pattern": "(<that> ([thisAble])?)"
},
{
"pattern": "([adjective])"
},
{
"pattern": "([adverb])"
},
{
"pattern": "([article])"
},
{
"pattern": "([preposition])"
},
{
"pattern": "([pronoun])"
},
{
"pattern": "([verb])"
},
{
"pattern": "([subordinatedVerb])"
},
{
"pattern": "([ingVerb])"
},
{
"pattern": "([punctuation])"
},
{
"pattern": "([noun])"
},
{
"pattern": "([leftParenthesis|] (phrase) ([rightParenthesis|]))"
},
{
"pattern": "((before) [comma|])"
},
{
"pattern": "([colon|])"
},
{
"pattern": "((sentence) <endOfSentence|>)"
},
{
"pattern": "([doubleQuote|] (!doubleQuote/*)* (doubleQuote/*))"
},
{
"pattern": "([unknown])"
},
{
"pattern": "([listable])"
}
],
"words": {
"hierarchy": [
{
"child": " ",
"parent": "space"
},
{
"child": "0",
"parent": "digit"
},
{
"child": "1",
"parent": "digit"
},
{
"child": "2",
"parent": "digit"
},
{
"child": "3",
"parent": "digit"
},
{
"child": "4",
"parent": "digit"
},
{
"child": "5",
"parent": "digit"
},
{
"child": "6",
"parent": "digit"
},
{
"child": "7",
"parent": "digit"
},
{
"child": "8",
"parent": "digit"
},
{
"child": "9",
"parent": "digit"
},
{
"child": "lower",
"parent": "letter"
},
{
"child": "upper",
"parent": "letter"
},
{
"child": "a",
"parent": "lower"
},
{
"child": "b",
"parent": "lower"
},
{
"child": "c",
"parent": "lower"
},
{
"child": "d",
"parent": "lower"
},
{
"child": "e",
"parent": "lower"
},
{
"child": "f",
"parent": "lower"
},
{
"child": "g",
"parent": "lower"
},
{
"child": "h",
"parent": "lower"
},
{
"child": "i",
"parent": "lower"
},
{
"child": "j",
"parent": "lower"
},
{
"child": "k",
"parent": "lower"
},
{
"child": "l",
"parent": "lower"
},
{
"child": "m",
"parent": "lower"
},
{
"child": "n",
"parent": "lower"
},
{
"child": "o",
"parent": "lower"
},
{
"child": "p",
"parent": "lower"
},
{
"child": "q",
"parent": "lower"
},
{
"child": "r",
"parent": "lower"
},
{
"child": "s",
"parent": "lower"
},
{
"child": "t",
"parent": "lower"
},
{
"child": "u",
"parent": "lower"
},
{
"child": "v",
"parent": "lower"
},
{
"child": "w",
"parent": "lower"
},
{
"child": "x",
"parent": "lower"
},
{
"child": "y",
"parent": "lower"
},
{
"child": "z",
"parent": "lower"
},
{
"child": "A",
"parent": "upper"
},
{
"child": "B",
"parent": "upper"
},
{
"child": "C",
"parent": "upper"
},
{
"child": "D",
"parent": "upper"
},
{
"child": "E",
"parent": "upper"
},
{
"child": "F",
"parent": "upper"
},
{
"child": "G",
"parent": "upper"
},
{
"child": "H",
"parent": "upper"
},
{
"child": "I",
"parent": "upper"
},
{
"child": "J",
"parent": "upper"
},
{
"child": "K",
"parent": "upper"
},
{
"child": "L",
"parent": "upper"
},
{
"child": "M",
"parent": "upper"
},
{
"child": "N",
"parent": "upper"
},
{
"child": "O",
"parent": "upper"
},
{
"child": "P",
"parent": "upper"
},
{
"child": "Q",
"parent": "upper"
},
{
"child": "R",
"parent": "upper"
},
{
"child": "S",
"parent": "upper"
},
{
"child": "T",
"parent": "upper"
},
{
"child": "U",
"parent": "upper"
},
{
"child": "V",
"parent": "upper"
},
{
"child": "W",
"parent": "upper"
},
{
"child": "X",
"parent": "upper"
},
{
"child": "Y",
"parent": "upper"
},
{
"child": "Z",
"parent": "upper"
},
{
"child": "letter",
"parent": "alphanumeric"
},
{
"child": "digit",
"parent": "alphanumeric"
},
{
"child": "_",
"parent": "alphanumeric"
},
{
"child": "~",
"parent": "punctuation"
},
{
"child": "!",
"parent": "punctuation"
},
{
"child": "@",
"parent": "punctuation"
},
{
"child": "#",
"parent": "punctuation"
},
{
"child": "$",
"parent": "punctuation"
},
{
"child": "%",
"parent": "punctuation"
},
{
"child": "^",
"parent": "punctuation"
},
{
"child": "&",
"parent": "punctuation"
},
{
"child": "*",
"parent": "punctuation"
},
{
"child": "(",
"parent": "punctuation"
},
{
"child": ")",
"parent": "punctuation"
},
{
"child": "+",
"parent": "punctuation"
},
{
"child": "-",
"parent": "punctuation"
},
{
"child": "=",
"parent": "punctuation"
},
{
"child": "[",
"parent": "punctuation"
},
{
"child": "]",
"parent": "punctuation"
},
{
"child": "{",
"parent": "punctuation"
},
{
"child": "}",
"parent": "punctuation"
},
{
"child": "\\",
"parent": "punctuation"
},
{
"child": "|",
"parent": "punctuation"
},
{
"child": ";",
"parent": "punctuation"
},
{
"child": ":",
"parent": "punctuation"
},
{
"child": ",",
"parent": "punctuation"
},
{
"child": "<",
"parent": "punctuation"
},
{
"child": ">",
"parent": "punctuation"
},
{
"child": "/",
"parent": "punctuation"
},
{
"child": "?",
"parent": "punctuation"
},
{
"child": "'",
"parent": "punctuation"
},
{
"child": "\"",
"parent": "punctuation"
}
],
"literals": {
"\"": [
{
"id": "doubleQuote",
"initial": "{\"word\":\"\\\"\",\"depth\":\"+\"}",
"word": "\""
}
],
"'s": [
{
"id": "possession",
"initial": "{ value: 'possession' }"
}
],
"(": [
{
"id": "leftParenthesis",
"initial": "{\"word\":\"(\",\"value\":\"(\",\"depth\":\"+\"}",
"word": "("
}
],
")": [
{
"id": "rightParenthesis",
"initial": "{\"word\":\")\",\"value\":\")\",\"depth\":\"-\"}",
"word": ")"
}
],
",": [
{
"id": "comma",
"initial": "{\"word\":\",\",\"value\":\",\",\"depth\":\"+\"}",
"word": ","
}
],
".": [
{
"id": "endOfSentence",
"initial": "{ value: \"endOfSentence\"}"
}
],
":": [
{
"id": "colon",
"initial": "{ value: \"colon\"}"
}
],
"<<possession>>": [
{
"id": "possession",
"initial": "{ value: 'possession' }"
}
],
"?": [
{
"id": "questionMark",
"initial": "{}"
}
],
"are": [
{
"id": "is",
"initial": "{ number: 'many' }"
},
{
"id": "isQuery",
"initial": "{ number: 'many' }"
},
{
"id": "isEd",
"initial": "{ number: 'many' }"
}
],
"brief": [
{
"id": "briefOrWordy",
"initial": "{ value: 'brief' }"
}
],
"chicken": [
{
"id": "chicken",
"initial": "{ value: 'chicken', number: 'one' }"
}
],
"do": [
{
"id": "does",
"initial": "{ number: 'many' }"
}
],
"does": [
{
"id": "does",
"initial": "{ number: 'one' }"
}
],
"doesnt": [
{
"id": "doesnt",
"initial": "{ number: 'one' }"
}
],
"dont": [
{
"id": "doesnt",
"initial": "{ number: 'many' }"
}
],
"has": [
{
"id": "have",
"initial": "{ doesable: true, number: 'one' }"
}
],
"have": [
{
"id": "have",
"initial": "{ doesable: true, number: 'many' }"
}
],
"is": [
{
"id": "be",
"initial": "{ form: 'infinitive' }"
},
{
"id": "is",
"initial": "{ number: 'one' }"
},
{
"id": "isQuery",
"initial": "{ number: 'one' }"
},
{
"id": "isEd",
"initial": "{ number: 'one' }"
}
],
"memorable": [
{
"id": "memorable",
"initial": "{\"word\":\"memorable\",\"number\":\"one\"}",
"word": "memorable"
}
],
"memorables": [
{
"id": "memorable",
"initial": "{\"word\":\"memorables\",\"number\":\"many\"}",
"word": "memorables"
}
],
"modifies": [
{
"id": "modifies",
"initial": "{\"word\":\"modifies\",\"number\":\"one\",\"flatten\":false}",
"word": "modifies"
}
],
"modify": [
{
"id": "modifies",
"initial": "{\"word\":\"modify\",\"number\":\"many\",\"flatten\":true}",
"word": "modify"
}
],
"negatable": [
{
"id": "negatable",
"initial": "{\"word\":\"negatable\",\"number\":\"one\"}",
"word": "negatable"
}
],
"negatables": [
{
"id": "negatable",
"initial": "{\"word\":\"negatables\",\"number\":\"many\"}",
"word": "negatables"
}
],
"no": [
{
"id": "yesno",
"initial": "{ value: false }"
}
],
"properties": [
{
"id": "property",
"initial": "{ value: \"property\"}"
}
],
"propertyRelation": [
{
"id": "propertyRelation",
"initial": "{\"word\":\"propertyRelation\",\"number\":\"one\"}",
"word": "propertyRelation"
}
],
"propertyRelations": [
{
"id": "propertyRelation",
"initial": "{\"word\":\"propertyRelations\",\"number\":\"many\"}",
"word": "propertyRelations"
}
],
"strip": [
{
"id": "strip",
"initial": "{ value: 'strip', number: 'one' }"
}
],
"strips": [
{
"id": "strip",
"initial": "{ value: 'strip', number: 'many' }"
}
],
"the": [
{
"id": "the",
"initial": "{ modifiers: [] }"
}
],
"who": [
{
"id": "what",
"initial": "{ modifiers: [], query: true }"
}
],
"wordy": [
{
"id": "briefOrWordy",
"initial": "{ value: 'wordy' }"
}
],
"yes": [
{
"id": "yesno",
"initial": "{ value: true }"
}
]
},
"patterns": [
{
"defs": [
{
"id": "possession",
"initial": "{ value: 'possession' }",
"uuid": "properties1"
}
],
"pattern": [
"'s"
]
},
{
"defs": [
{
"remove": true,
"uuid": "tokenize2"
}
],
"pattern": [
{
"type": "space"
},
{
"is_space": true,
"repeat": true
}
]
},
{
"allow_partial_matches": false,
"check_spelling": true,
"defs": [
{
"id": "unknown",
"initial": "{ value: text, unknown: true }",
"uuid": "tokenize2"
}
],
"is_unknown": true,
"pattern": [
{
"type": "alphanumeric"
},
{
"repeat": true
}
],
"scale": 0.8
}
]
}
},
"contexts": [
{
"concept": {
"dead": true,
"level": 0,
"marker": "unknown",
"range": {
"end": 22,
"start": 17
},
"text": "strips",
"unknown": true,
"value": "strips",
"word": "strips"
},
"conceptModifiers": [
{
"dead": true,
"level": 0,
"marker": "unknown",
"range": {
"end": 6,
"start": 0
},
"text": "chicken",
"unknown": true,
"value": "chicken",
"word": "chicken"
}
],
"context_id": 2,
"context_index": 1,
"dead": true,
"flatten": false,
"level": 1,
"marker": "modifies",
"number": "one",
"range": {
"end": 22,
"start": 0
},
"text": "chicken modifies strips",
"topLevel": true,
"touchedBy": [
"properties#call2"
],
"word": "modifies"
}
],
"generatedParenthesized": [
""
],
"metadata": {
"opChoices": [
{
"counter": 1,
"op": [
"unknown",
0
],
"ops": [
[
"modifies",
0
],
[
"unknown",
0
],
[
"unknown",
0
]
]
},
{
"counter": 2,
"op": [
"unknown",
0
],
"ops": [
[
"modifies",
0
],
[
"unknown",
0
]
]
},
{
"counter": 3,
"op": [
"modifies",
0
],
"ops": [
[
"modifies",
0
]
]
}
]
},
"objects": {
"associations": [
],
"nameToUUID": {
"articles": "articles2",
"asking": "asking2",
"concept": "concept2",
"conjunction": "conjunction2",
"dialogues": "dialogues2",
"evaluate": "evaluate2",
"gdefaults": "gdefaults2",
"meta": "meta2",
"negation": "negation2",
"pos": "pos2",
"properties": "properties1",
"punctuation": "punctuation2",
"sdefaults": "sdefaults2",
"stm": "stm2",
"tokenize": "tokenize2",
"words": "words2"
},
"namespaced": {
"articles2": {
"km": "articles2"
},
"asking2": {
"km": "asking2"
},
"concept2": {
"defaultTypesForHierarchy": {
},
"km": "concept2",
"valueToWords": [
]
},
"conjunction2": {
"km": "conjunction2"
},
"dialogues2": {
"idSuffix": "",
"km": "dialogues2",
"mentioned": [
],
"variables": {
}
},
"evaluate2": {
"km": "evaluate2"
},
"gdefaults2": {