public override int GetLayerSize(ViewLayerType viewLayer)
        {
            int size;

            switch (viewLayer)
            {
            case ViewLayerType.PART_OF_SPEECH:
                size = 0;
                foreach (var parse in items)
                {
                    size += parse.TagSize();
                }

                return(size);

            case ViewLayerType.INFLECTIONAL_GROUP:
                size = 0;
                foreach (var parse in items)
                {
                    size += parse.Size();
                }

                return(size);

            default:
                return(0);
            }
        }
        public int GlossAgreementCount(ParseNodeDrawable parseNode, ViewLayerType viewLayerType)
        {
            if (children.Count == 0)
            {
                if (parseNode.NumberOfChildren() == 0)
                {
                    if (GetLayerData(viewLayerType).Equals(parseNode.GetLayerData(viewLayerType)))
                    {
                        return(1);
                    }

                    return(0);
                }

                return(0);
            }

            var sum = 0;

            for (var i = 0; i < children.Count; i++)
            {
                if (i < parseNode.NumberOfChildren())
                {
                    sum += ((ParseNodeDrawable)GetChild(i)).GlossAgreementCount(
                        (ParseNodeDrawable)parseNode.GetChild(i), viewLayerType);
                }
            }

            return(sum);
        }
 public void ClearLayer(ViewLayerType layerType)
 {
     if (root != null)
     {
         ((ParseNodeDrawable)root).ClearLayer(layerType);
     }
 }
 public string GetLayerData(ViewLayerType viewLayer)
 {
     if (viewLayer == ViewLayerType.WORD || layers == null)
     {
         return(data.GetName());
     }
     return(layers.GetLayerData(viewLayer));
 }
        public string HeadWord(ViewLayerType viewLayerType)
        {
            if (children.Count > 0)
            {
                return(((ParseNodeDrawable)HeadChild()).HeadWord(viewLayerType));
            }

            return(GetLayerData(viewLayerType));
        }
 public void ClearLayer(ViewLayerType layerType)
 {
     foreach (var tree in parseTrees)
     {
         ParseTreeDrawable parseTree = (ParseTreeDrawable)tree;
         parseTree.ClearLayer(layerType);
         parseTree.Save();
     }
 }
예제 #7
0
        public string GetLayerData(ViewLayerType viewLayer)
        {
            if (_layers.ContainsKey(viewLayer))
            {
                return(_layers[viewLayer].GetLayerValue());
            }

            return(null);
        }
예제 #8
0
        public override int GetLayerSize(ViewLayerType viewLayer)
        {
            var size = 0;

            foreach (var parse in items)
            {
                size += parse.Size();
            }
            return(size);
        }
        public void ClearLayer(ViewLayerType layerType)
        {
            if (children.Count == 0 && LayerExists(layerType))
            {
                layers.RemoveLayer(layerType);
            }

            for (var i = 0; i < NumberOfChildren(); i++)
            {
                ((ParseNodeDrawable)children[i]).ClearLayer(layerType);
            }
        }
예제 #10
0
        public double InterAnnotatorGlossAgreement(ViewLayerType viewLayerType)
        {
            int agreement = 0, total = 0;

            for (var i = 0; i < _fromTreeBank.Size(); i++)
            {
                var parseTree1 = _fromTreeBank.Get(i);
                var parseTree2 = _toTreeBank.Get(i);
                total     += parseTree1.LeafCount();
                agreement += ((ParseTreeDrawable)parseTree1).GlossAgreementCount(parseTree2, viewLayerType);
            }

            return(agreement / (total + 0.0));
        }
예제 #11
0
        public int GetLayerSize(ViewLayerType viewLayer)
        {
            if (_layers[viewLayer] is MultiWordMultiItemLayer <object> )
            {
                return(((MultiWordMultiItemLayer <object>)_layers[viewLayer]).GetLayerSize(viewLayer));
            }

            if (_layers[viewLayer] is SingleWordMultiItemLayer <object> )
            {
                return(((SingleWordMultiItemLayer <object>)_layers[viewLayer]).GetLayerSize(viewLayer));
            }

            return(0);
        }
예제 #12
0
        public override string GetLayerInfoAt(ViewLayerType viewLayer, int index)
        {
            var size = 0;

            foreach (var parse in items)
            {
                if (index < size + parse.Size())
                {
                    return(parse.GetMetaMorpheme(index - size));
                }

                size += parse.Size();
            }
            return(null);
        }
예제 #13
0
        private string GetMultiWordAt(ViewLayerType viewLayerType, int index, string layerName)
        {
            if (_layers.ContainsKey(viewLayerType))
            {
                if (_layers[viewLayerType] is MultiWordLayer <string> )
                {
                    var multiWordLayer = (MultiWordLayer <string>)_layers[viewLayerType];
                    if (index < multiWordLayer.Size() && index >= 0)
                    {
                        return(multiWordLayer.GetItemAt(index));
                    }

                    if (viewLayerType.Equals(ViewLayerType.SEMANTICS))
                    {
                        return(multiWordLayer.GetItemAt(multiWordLayer.Size() - 1));
                    }
                }
            }

            return(null);
        }
        public bool LayerExists(ViewLayerType viewLayerType)
        {
            if (children.Count == 0)
            {
                if (GetLayerData(viewLayerType) != null)
                {
                    return(true);
                }
            }
            else
            {
                foreach (var aChild in children)
                {
                    if (((ParseNodeDrawable)aChild).LayerExists(viewLayerType))
                    {
                        return(true);
                    }
                }
            }

            return(false);
        }
        public bool LayerAll(ViewLayerType viewLayerType)
        {
            if (children.Count == 0)
            {
                if (GetLayerData(viewLayerType) == null && !IsDummyNode())
                {
                    return(false);
                }
            }
            else
            {
                foreach (ParseNode aChild in children)
                {
                    if (!((ParseNodeDrawable)aChild).LayerAll(viewLayerType))
                    {
                        return(false);
                    }
                }
            }

            return(true);
        }
예제 #16
0
        public ViewLayerType CheckLayer(ViewLayerType viewLayer)
        {
            switch (viewLayer)
            {
            case ViewLayerType.TURKISH_WORD:
            case ViewLayerType.PERSIAN_WORD:
            case ViewLayerType.ENGLISH_SEMANTICS:
                if (!_layers.ContainsKey(viewLayer))
                {
                    return(ViewLayerType.ENGLISH_WORD);
                }

                break;

            case ViewLayerType.PART_OF_SPEECH:
            case ViewLayerType.INFLECTIONAL_GROUP:
            case ViewLayerType.META_MORPHEME:
            case ViewLayerType.SEMANTICS:
            case ViewLayerType.NER:
            case ViewLayerType.PROPBANK:
            case ViewLayerType.SHALLOW_PARSE:
            case ViewLayerType.ENGLISH_PROPBANK:
                if (!_layers.ContainsKey(viewLayer))
                {
                    return(CheckLayer(ViewLayerType.TURKISH_WORD));
                }
                break;

            case ViewLayerType.META_MORPHEME_MOVED:
                if (!_layers.ContainsKey(viewLayer))
                {
                    return(CheckLayer(ViewLayerType.META_MORPHEME));
                }
                break;
            }

            return(viewLayer);
        }
        public override string GetLayerInfoAt(ViewLayerType viewLayer, int index)
        {
            int size;

            switch (viewLayer)
            {
            case ViewLayerType.PART_OF_SPEECH:
                size = 0;
                foreach (var parse in items)
                {
                    if (index < size + parse.TagSize())
                    {
                        return(parse.GetTag(index - size));
                    }

                    size += parse.TagSize();
                }

                return(null);

            case ViewLayerType.INFLECTIONAL_GROUP:
                size = 0;
                foreach (var parse in items)
                {
                    if (index < size + parse.Size())
                    {
                        return(parse.GetInflectionalGroupString(index - size));
                    }

                    size += parse.Size();
                }

                return(null);
            }

            return(null);
        }
예제 #18
0
        public string GetLayerInfoAt(ViewLayerType viewLayer, int index)
        {
            switch (viewLayer)
            {
            case ViewLayerType.META_MORPHEME_MOVED:
                if (_layers[viewLayer] is MultiWordMultiItemLayer <MetamorphicParse> )
                {
                    return(((MultiWordMultiItemLayer <MetamorphicParse>)_layers[viewLayer]).GetLayerInfoAt(
                               viewLayer,
                               index));
                }

                break;

            case ViewLayerType.PART_OF_SPEECH:
            case ViewLayerType.INFLECTIONAL_GROUP:
                if (_layers[viewLayer] is MultiWordMultiItemLayer <MorphologicalParse> )
                {
                    return(((MultiWordMultiItemLayer <MorphologicalParse>)_layers[viewLayer]).GetLayerInfoAt(
                               viewLayer, index));
                }

                break;

            case ViewLayerType.META_MORPHEME:
                return(GetMetaMorphemeAtIndex(index));

            case ViewLayerType.ENGLISH_PROPBANK:
                return(GetArgumentAt(index).GetArgumentType());

            default:
                return(null);
            }

            return(null);
        }
예제 #19
0
 public IsTransferable(ViewLayerType secondLanguage)
 {
     this._secondLanguage = secondLanguage;
 }
예제 #20
0
 protected TreeAutoNER(ViewLayerType secondLanguage)
 {
     this.secondLanguage = secondLanguage;
 }
예제 #21
0
 public string GetLayerInfoAt(ViewLayerType viewLayer, int index)
 {
     return(null);
 }
예제 #22
0
 public int GetLayerSize(ViewLayerType viewLayer)
 {
     return(0);
 }
예제 #23
0
 public PersianAutoNER(ViewLayerType secondLanguage) : base(ViewLayerType.PERSIAN_WORD)
 {
 }
 public IsNoneNode(ViewLayerType secondLanguage)
 {
     this._secondLanguage = secondLanguage;
 }
예제 #25
0
 public TurkishTreeAutoNER(ViewLayerType secondLanguage) : base(ViewLayerType.TURKISH_WORD)
 {
 }
예제 #26
0
 public abstract int GetLayerSize(ViewLayerType viewLayer);
예제 #27
0
 public abstract string GetLayerInfoAt(ViewLayerType viewLayer, int index);
예제 #28
0
 public NotContainsLayerInformation(ViewLayerType viewLayerType)
 {
     this._viewLayerType = viewLayerType;
 }
 protected AutoArgument(ViewLayerType secondLanguage)
 {
     this.secondLanguage = secondLanguage;
 }
예제 #30
0
 public int GetLayerSize(ViewLayerType viewLayer)
 {
     return(items.Count);
 }