示例#1
0
        public void ProcessExecute()
        {
            Themes.Clear();
            int nRet = Engine.PrepareText(TextToAnalyse);

            if (nRet == 0)
            {
                // Get themes
                List <SalienceTheme> myThemes = Engine.GetDocumentThemes(String.Empty);
                foreach (SalienceTheme aTheme in myThemes)
                {
                    Themes.Add(new Theme(aTheme.sNormalizedTheme, aTheme.fScore, aTheme.nThemeType, aTheme.fSentiment, aTheme.nEvidence));
                }

                // Get named entities
                List <SalienceEntity> myEntities = Engine.GetNamedEntities(String.Empty);
                foreach (SalienceEntity anEntity in myEntities)
                {
                    NamedEntities.Add(new NamedEntity(anEntity.sNormalizedForm, anEntity.sType, anEntity.fSentimentScore, anEntity.nEvidence, anEntity.nCount));
                }

                // Get summary
                SalienceSummary mySummary = Engine.GetSummary(3, String.Empty);
                Summary.SummaryText = mySummary.sSummary;
            }
            else
            {
                // there was an error, in which case this needs to be handled somehow
            }
        }
示例#2
0
        // public methods
        public void AddEntity(Entity e)
        {
            // add to entity list
            Entities.Add(e);

            // add to entity dictionary if its id is not empty
            if (e.Id != null)
            {
                if (NamedEntities.ContainsKey(e.Id))
                {
                    throw new ArgumentException();
                }

                NamedEntities.Add(e.Id, e);
            }
        }