Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        protected Concept SpecialConcept(string name, Concept.Kind kind)
        {
            Concept concept = NewConcept(name, kind);

            specialCount++;
            concept.Id = -specialCount;

            return(concept);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
 public Concept NewUnknown(Concept.Kind kind)
 {
     return(NewConcept("", kind));
 }
Esempio n. 5
0
 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));
     }
 }