Beispiel #1
0
 private void ExtractFactsFromIndividual(OwlIndividual owlIndividual, TreeNode nodeIndividual, string text)
 {
     if (owlIndividual is OwlIndividual)
     {
         List <string> keyWords = new List <string>();
         string        script   = "";
         string        table    = "";
         foreach (OwlEdge owlAttribute in owlIndividual.ChildEdges)
         {
             if (OntologyForm.ConvertNameNode(owlAttribute) == "HasKeyWord")
             {
                 OwlNode Attribute = (OwlNode)(owlAttribute.ChildNode);
                 keyWords.Add(Attribute.ID);
             }
             if (OntologyForm.ConvertNameNode(owlAttribute) == "HasScript")
             {
                 OwlNode attribute = (OwlNode)(owlAttribute.ChildNode);
                 script = attribute.ID;
             }
             if (OntologyForm.ConvertNameNode(owlAttribute) == "HasTable")
             {
                 OwlNode attribute = (OwlNode)(owlAttribute.ChildNode);
                 table = attribute.ID;
             }
         }
         foreach (string fact in GetFacts(script, keyWords, text))
         {
             facts.Add(new Fact(fact, table));
             nodeIndividual.Nodes.Add(fact);
         }
     }
 }
Beispiel #2
0
        private void MainExtractFacts(OwlClass owlClass, string text)
        {
            if (factsExtracted)
            {
                return;
            }
            string owlClassName = OntologyForm.ConvertNameNode(owlClass);

            foreach (OwlEdge owlEdge in owlClass.ParentEdges)
            {
                OwlIndividual owlIndividual     = (OwlIndividual)(owlEdge.ParentNode);
                string        owlIndividualName = OntologyForm.ConvertNameNode(owlIndividual);
                TreeNode      nodeIndividual    = new TreeNode(owlIndividualName);
                try
                {
                    ExtractFactsFromIndividual(owlIndividual, nodeIndividual, text);
                    nodes.Add(nodeIndividual);
                }
                catch (Exception exception)
                {
                    nodes.Add(new TreeNode(owlIndividualName + ": " + exception.Message));
                }
            }
            factsExtracted = true;
        }
Beispiel #3
0
 public Aggregator()
 {
     InitializeComponent();
     LoadNetWorks();
     Reviews        = new List <Review>();
     ConnectingForm = new ConnectSqlServerForm();
     Ontology       = new OntologyForm(cbHeadOwlClass, Path.GetFullPath("Онтология Protege.owl"));
     StopWords      = new StopWordsForm();
 }
Beispiel #4
0
        private void btnCalcCountKeyWords_Click(object sender, EventArgs e)
        {
            List <string> keyWords     = new List <string>();
            OwlClass      owlMainClass = (OwlClass)((OwlItem)cbHeadOwlClass.SelectedItem).owlNode;

            foreach (OwlEdge owlEdge in owlMainClass.ParentEdges)
            {
                OwlIndividual owlIndividual = (OwlIndividual)owlEdge.ParentNode;
                foreach (OwlEdge owlAttribute in owlIndividual.ChildEdges)
                {
                    if (OntologyForm.ConvertNameNode(owlAttribute) == "HasKeyWord")
                    {
                        OwlNode attribute = (OwlNode)(owlAttribute.ChildNode);
                        keyWords.Add(attribute.ID);
                    }
                }
            }
            foreach (ListViewItem lvi in lvReviews.SelectedItems)
            {
                Review review = (Review)lvi.Tag;
                review.CalcCountKeyWords(keyWords);
                lvi.SubItems[3].Text = review.CountKeyWords.ToString();
            }
        }