jsons
by Alexander Novikov
HTML
<script src="https://getfirebug.com/firebug-lite-debug.js"></script>
JavaScript
var ai = (function() {
var ai = {
phrases: {},
phraseIds: {},
nextPhraseId: 1,
authors: {},
authorIds: {},
nextAuthorId: 1,
messages: {},
nextMessageId: 1,
actions: {},
nextActionId: 1,
parameters: {},
nextParameterId: 1,
attributes: {},
nextAttributeId: 1,
concepts: {},
conceptIds: {},
nextConceptId: 1,
things: {},
nextThingId: 1
}
ai.listen = function(author, message) {
console.log(author + " сказал:");
console.log(message);
var aiAuthor = ai.addAuthor(ai.addPhrase(author).id);
var aiMessage = ai.addMessage(aiAuthor.id);
aiAuthor.messageIds.push(aiMessage.id);
for (var action in message) {
var aiAction = ai.addAction(ai.addPhrase(action).id, aiMessage.id);
aiMessage.actionIds.push(aiAction.id, aiAuthor.id);
var aiActionConcept = ai.addConcept(aiAction.phraseId, 'action');
for (var parameter in message[action]) {
var aiParameter = ai.addParameter(ai.addPhrase(parameter).id, aiAction.id);
aiAction.parameterIds.push(aiParameter.id);
var aiParameterConcept = ai.addConcept(aiParameter.phraseId, 'parameter');
aiParameter.conceptId = aiParameterConcept.id;
ai.linkConcepts(aiParameterConcept, aiActionConcept);
if (ai.isReference(message[action][parameter])) {
var attributes = message[action][parameter][1];
} else {
var attributes = message[action][parameter];
}
for...