Exemplo n.º 1
0
        public bool IsFeature(IWordItem word)
        {
            if (word.CanNotBeFeature())
            {
                return(false);
            }

            var value = Context.Aspect != null && Context.Aspect.IsAspect(word);

            return(value);
        }
Exemplo n.º 2
0
        private void ProcessWord(IWordItem wordItem)
        {
            if (wordItem.IsQuestion ||
                wordItem.IsStopWord ||
                wordItem.QuantValue.HasValue)
            {
                return;
            }

            if (wordItem.POS.WordType == WordType.Adjective ||
                wordItem.IsSentiment)
            {
                if (wordItem.CanNotBeAttribute() ||
                    wordItem.IsSentiment && !includeSentiment)
                {
                    // if sentiment excluded
                    log.LogDebug("Can't be attribute: {0}", wordItem);
                    return;
                }

                log.LogDebug("Adding attribute: {0}", wordItem);
                attributes.Add(wordItem);
                return;
            }

            if (wordItem.POS.WordType == WordType.Noun ||
                wordItem.Entity == NamedEntities.Organization)
            {
                // words with ending -ing and -ed can't be features
                if (wordItem.CanNotBeFeature())
                {
                    log.LogDebug("Can't feature: {0}", wordItem);
                    return;
                }

                log.LogDebug("Adding feature: {0}", wordItem);
                features.Add(wordItem);
            }
        }