tpmkms
Version:
Reusable libraries for Entodicton, a natural language to json converter
2,115 lines • 2.27 MB
JSON
[
{
"associations": [
[
[
"modifies",
0
],
[
"unknown",
0
]
],
[
[
"modifies",
0
],
[
"unknown",
0
],
[
"unknown",
1
]
],
[
[
"modifies",
0
],
[
"unknown",
1
]
]
],
"config": {
"bridges": [
{
"bridge": "{ ...next(operator) }",
"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
},
{
"bridge": "{ ...next(operator) }",
"id": "hierarchyAble",
"isA": [
"queryable"
],
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"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"
]
]
},
{
"bridge": "{ ...next(operator) }",
"id": "property",
"isA": [
"queryable",
"theAble"
],
"level": 0,
"words": [
"properties"
]
},
{
"bridge": "{ ...next(operator) }",
"id": "object",
"isA": [
"queryable",
"theAble"
],
"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], 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), modifiers: before[0], concept: after[0] }",
"id": "modifies",
"isA": [
"verb"
],
"level": 0,
"words": [
{
"flatten": false,
"number": "one",
"word": "modifies"
},
{
"flatten": true,
"number": "many",
"word": "modify"
}
]
},
{
"bridge": "{ ...after[0], flatten: false, literally: true }",
"id": "literally",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "concept",
"level": 0
},
{
"before": [
"verb"
],
"bridge": "{ ...after[0], verb: after[0], that: operator, generate: ['that', 'verb'], localPriorities: { actLike: [\"subordinatedVerb\", 0] }, bridge_override: { operator: after[0].marker, bridge: '{ ...bridge.subject, postModifiers: [\"conditions\"], modifiers: [], generate: concatm(\"thatClause.\", bridge.generate), thatClause: bridge, conditions: append(bridge.subject.conditions, [bridge]) }' } }",
"id": "thatVerb",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"children": [
"negatable"
],
"id": "queryable",
"level": 0
},
{
"bridge": "{ ...next(operator), object: after[0] }",
"id": "makeObject",
"level": 0
},
{
"bridge": "{ ...next(operator), suffix: after[0] }",
"id": "setIdSuffix",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"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 }"
}
},
{
"bridge": "{ ...next(operator) }",
"id": "debug23",
"level": 0
},
{
"bridge": "{ ...after, query: ['what'], modifiers: ['what'], what: operator }",
"id": "what",
"level": 0,
"optional": "{ ...next(operator), query: ['what'], determined: true }"
},
{
"bridge": "{ ...next(operator) }",
"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:182"
},
{
"bridge": "{ ...next(operator) }",
"id": "toAble",
"level": 0
},
{
"bridge": "{ ...next(operator), type: after[0] }",
"id": "be",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "briefOrWordy",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"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
},
{
"bridge": "{ ...next(operator) }",
"id": "isEdee",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "isEder",
"level": 0
},
{
"bridge": "{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }",
"id": "is",
"isA": [
"verb"
],
"level": 0,
"queryBridge": "{ ...next(operator), one: after[0], two: after[1], query: true }"
},
{
"bridge": "{ ...next(operator) }",
"id": "is",
"level": 1
},
{
"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
},
{
"bridge": "{ ...next(operator) }",
"id": "reason",
"isA": [
"theAble",
"queryable"
],
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "nevermind",
"level": 0
},
{
"before": [
"verb"
],
"bridge": "{ ...after[0], negated: operator, modifiers: append([\"negated\"], after[0].modifiers) }",
"id": "not",
"level": 0,
"localHierarchy": [
[
"unknown",
"negatable"
]
]
},
{
"bridge": "{ ...next(operator) }",
"id": "negatable",
"level": 0,
"words": [
{
"number": "one",
"word": "negatable"
},
{
"number": "many",
"word": "negatables"
}
]
},
{
"bridge": "{ ...next(operator) }",
"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",
"level": 0
},
{
"bridge": "{ ...before[0], postModifiers: [\"stm_previous\"], stm_previous: operator, pullFromContext: true }",
"id": "stm_before",
"isA": [
"adjective"
],
"level": 0
},
{
"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
},
{
"bridge": "{ ...next(operator) }",
"id": "ifAble",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"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)"
}
],
"match": "same",
"passthrough": true,
"right": [
{
"pattern": "($type && context.instance == variables.instance)"
}
]
}
},
{
"bridge": "{ ...operator, value: append(before, operator.value) }",
"id": "list",
"level": 1,
"selector": {
"left": [
{
"pattern": "($type && context.instance == variables.instance)"
}
],
"match": "same",
"passthrough": true
}
},
{
"bridge": "{ ...next(operator), postModifiers: ['value'], value: after[0] }",
"id": "evaluate",
"isA": [
"verb"
],
"level": 0,
"where": "/home/dev/code/theprogrammablemind/kms/common/evaluate.js:23"
},
{
"bridge": "{ ...next(operator) }",
"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
},
{
"bridge": "{ ...next(operator) }",
"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",
"level": 0
},
{
"bridge": "{ ...after[0], pullFromContext: false, instance: true, concept: true, number: 'one', wantsValue: true, determiner: operator, modifiers: append(['determiner'], after[0].modifiers) }",
"id": "a",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "queryable",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"children": [
"noun"
],
"id": "theAble",
"level": 0
},
{
"before": [
"verb"
],
"bridge": "{ ...next(operator) }",
"id": "thisitthat",
"isA": [
"queryable"
],
"level": 0
},
{
"bridge": "{ ...next(operator), pullFromContext: true, unknown: true, determined: true }",
"id": "it",
"isA": [
"thisitthat"
],
"level": 0
},
{
"bridge": "{ ...next(operator), unknown: true, pullFromContext: true }",
"id": "this",
"isA": [
"thisitthat"
],
"level": 0
},
{
"bridge": "{ ...next(operator), unknown: true, pullFromContext: true }",
"id": "that",
"isA": [
"thisitthat"
],
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "adjective",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "adverb",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "article",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "preposition",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "pronoun",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "verb",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "subordinatedVerb",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "ingVerb",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "punctuation",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "noun",
"level": 0
},
{
"bridge": "{ ...before[0], decorators.after: operator, no_convolutions: true }",
"id": "comma",
"level": 0,
"words": [
{
"depth": "+",
"value": ",",
"word": ","
}
]
},
{
"bridge": "{ ...after[0], parenthesis: '(' }",
"id": "leftParenthesis",
"level": 0,
"words": [
{
"depth": "+",
"value": "(",
"word": "("
}
]
},
{
"bridge": "{ ...next(operator) }",
"id": "rightParenthesis",
"level": 0,
"words": [
{
"depth": "-",
"value": ")",
"word": ")"
}
]
},
{
"bridge": "{ ...next(operator) }",
"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": "{ ...next(operator), unknown: true, dead: true }",
"id": "unknown",
"level": 0
},
{
"bridge": "{ ...next(operator) }",
"id": "unknown",
"level": 1
},
{
"allowDups": true,
"bridge": "{ ...next(operator) }",
"id": "strip_modifier",
"level": 0,
"transitoryMode": true
},
{
"allowDups": true,
"bridge": "{ ...next(operator), value: 'chicken' }",
"id": "chicken",
"level": 0,
"transitoryMode": true
},
{
"allowDups": true,
"bridge": "{ ...next(operator), value: 'strip' }",
"id": "strip",
"level": 0,
"transitoryMode": true
},
{
"allowDups": true,
"before": [
"verb"
],
"bridge": "{ ...after[0], 'modifier_chicken': before[0], atomic: true, dead: true, marker: next(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": "(([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": "((context.punctuation != true)* [modifies|] (concept))"
},
{
"pattern": "([concept])"
},
{
"pattern": "([literally] (modifies/0))"
},
{
"pattern": "(<thatVerb|that> (verb/0))"
},
{
"pattern": "([makeObject] (word))"
},
{
"pattern": "([setIdSuffix] (word))"
},
{
"pattern": "([resetIdSuffix])"
},
{
"pattern": "(([queryable]) [is|] ([queryable|]))"
},
{
"pattern": "([is:queryBridge|] ([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": "([stm_previous|previous] ([memorable]))"
},
{
"pattern": "(([memorable]) [stm_before|before])"
},
{
"pattern": "([remember] (memorable/*))"
},
{
"pattern": "((phrase) [means] (phrase))"
},
{
"pattern": "([if] ([ifAble]) ([then] ([ifAble])))"
},
{
"pattern": "(([orAble|]) [orList|or] ([orAble|]))"
},
{
"pattern": "(x [list|and] y)"
},
{
"pattern": "([evaluate] (value))"
},
{
"pattern": "([thisitthat|])"
},
{
"pattern": "([it])"
},
{
"pattern": "([this])"
},
{
"pattern": "([that])"
},
{
"pattern": "([everything])"
},
{
"pattern": "([queryable])"
},
{
"pattern": "(<each> ([distributable]))"
},
{
"pattern": "(<every> ([distributable]))"
},
{
"pattern": "(<the|> ([theAble]))"
},
{
"pattern": "(<a|a,an> ([theAble|]))"
},
{
"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])"
}
],
"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": {
" 's": [
{
"id": "possession",
"initial": "{ value: 'possession' }"
}
],
"\"": [
{
"id": "doubleQuote",
"initial": "{\"word\":\"\\\"\",\"depth\":\"+\"}",
"word": "\""
}
],
"(": [
{
"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": "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": "is",
"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\"}"
}
],
"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"
},
{
"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": 1,
"marker": "unknown",
"range": {
"end": 22,
"start": 17
},
"text": "strips",
"unknown": true,
"value": "strips",
"word": "strips"
},
"context_index": 1,
"dead": true,
"flatten": false,
"level": 1,
"marker": "modifies",
"modifiers": [
{
"dead": true,
"level": 1,
"marker": "unknown",
"range": {
"end": 6,
"start": 0
},
"text": "chicken",
"unknown": true,
"value": "chicken",
"word": "chicken"
}
],
"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": {
"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"
},
"namespaced": {
"articles2": {
},
"asking2": {
},
"concept2": {
"defaultTypesForHierarchy": {
},
"valueToWords": [
]
},
"conjunction2": {
},
"dialogues2": {
"idSuffix": "",
"mentioned": [
],
"variables": {
}
},
"evaluate2": {
},
"gdefaults2": {
},
"meta2": {
},
"negation2": {
},
"pos2": {
},
"properties1": {
"children": {
"adjective": [
"stm_before"
],
"article": [
"a",
"the",
"each",
"every"
],
"canBeDoQuestion": [
"have"
],
"canBeQuestion": [
"have",
"is"
],
"hierarchyAble": [
"unknown"
],
"ifAble": [
"orAble"
],
"object": [
"what",
"whose"
],
"preposition": [
"between",
"propertyOf",
"to"
],
"pronoun": [
"it",
"this"
],
"punctuation": [
"questionMark"
],
"queryable": [
"xfx",
"hierarchyAble",
"readonly",
"property",
"object",
"concept",
"doubleQuote",
"theAble",
"unknown",
"it",
"what",
"whatAble",
"negatable",
"this",
"reason",
"distributable",
"thisitthat"
],
"theAble": [
"property",
"object",
"concept",
"unknown",
"reason",
"memorable",
"noun"
],
"thisitthat": [
"it",
"this",
"that"
],
"toAble": [
"it"
],
"verb": [
"modifies",
"is",
"remember",
"evaluate"
]
},
"concepts": [
"properties",
"unknown",
"hierarchyAble",
"what",
"object",
"xfx",
"queryable",
"between",
"preposition",
"readonly",
"have",
"canBeDoQuestion",
"canBeQuestion",
"property",
"theAble",
"propertyOf",
"whose",
"concept",
"modifies",
"verb",
"doubleQuote",
"it",
"pronoun",
"this",
"questionMark",
"punctuation",
"a",
"article",
"the",
"whatAble",
"negatable",
"is",
"toAble",
"to",
"reason",
"memorable",
"remember",
"stm_before",
"adjective",
"orAble",
"ifAble",
"evaluate",
"each",
"every",
"distributable",
"noun",
"thisitthat",
"that"
],
"parents": {
"a": [
"article"
],
"between": [
"preposition"
],
"concept": [
"theAble",
"queryable"
],
"distributable": [
"queryable"
],
"d