public Concept GetConcept(string name, int id, Concept.Kind kind) { if (name == null) { Console.WriteLine("But how?"); } List <Concept> matches; if (concepts.TryGetValue(name, out matches)) { foreach (Concept match in matches) { if (match.Id == id) { return(match); } } } else { matches = new List <Concept>(); concepts.Add(name, matches); } Concept concept = new Concept(name, kind); concept.Id = id; data.Add(concept, new List <Datum>()); matches.Add(concept); return(concept); }
protected Concept SpecialConcept(string name, Concept.Kind kind) { Concept concept = NewConcept(name, kind); specialCount++; concept.Id = -specialCount; return(concept); }
public Concept NewConcept(string name, Concept.Kind kind) { List <Concept> matches; if (!concepts.TryGetValue(name, out matches)) { matches = new List <Concept>(); concepts.Add(name, matches); } Concept concept = new Concept(name, kind); data.Add(concept, new List <Datum>()); matches.Add(concept); return(concept); }
public Concept NewUnknown(Concept.Kind kind) { return(NewConcept("", kind)); }
public static Concept ConceptNetGetConcept(Memory memory, Verbs verbs, Notion notion, Concept.Kind kind) { if (kind == Concept.Kind.Event) { return(memory.NewConcept(verbs.InputToBase(notion.Canonical), kind)); } else { return(memory.NewConcept(notion.Canonical, kind)); } }