Esempio n. 1
0
        public static void _xml_list_add(string _case_Name, string index, ArrayList _list)
        {
            int id = Convert.ToInt32(index);

            HTMLMarkerClass.element _element    = (HTMLMarkerClass.element)_list[id];
            HTMLMarkerClass.element _elementust = new HTMLMarkerClass.element();
            if (_element.elementlinked_id >= 0)
            {
                _elementust = (HTMLMarkerClass.element)_list[_element.elementlinked_id];
            }

            string _str = "<" + _case_Name + " ";

            _str = _str + "tagname=\"" + _element.elementName + "\" ";
            _str = _str + "parent_tagname=\"" + _elementust.elementName + "\" ";
            _str = _str + "html_text=\"<" + _element.innerHTML_AE + ">\" ";
            _str = _str + "_count=\"<100>\" ";

            //_str = _str + "tagname=\"" + _element.tagName + "\" ";
            //_str = _str + "tagclassName=\"" + _element.tag_class_Name + "\" ";
            //_str = _str + "tagidName=\"" + _element.tag_id_Name + "\" ";
            //_str = _str + "parent_tagname=\"" + _elementust.tagName + "\" ";
            //_str = _str + "parent_tagclassName=\"" + _elementust.tag_class_Name + "\" ";
            //_str = _str + "parent_tagidName=\"" + _elementust.tag_id_Name + "\" ";
            _str = _str + "/>";

            if (!_xml_list.Contains(_str))
            {
                _xml_list.Add(_str);
            }

            Save_XML_File();
            Read_XMLFile();
        }
Esempio n. 2
0
        private void prepareRules(ArrayList _list)
        {
            if (_list != null)
            {
                HTMLMarkerClass.desicionClass._list = _list; //_list gönder

                for (int i = 0; i < _list.Count; i++)
                {
                    HTMLMarkerClass.element _element = (HTMLMarkerClass.element)_list[i];
                    if (_element.wordCount_AE > 2)
                    {
                        foreach (string item_cn in _CN)
                        {
                            string i_cn = item_cn;
                            if (i_cn == "additional")
                            {
                                i_cn = "others";
                            }

                            if (HTMLMarkerClass.desicionClass.write_or_not(i_cn, _element))
                            {
                                string _parent_tag;
                                if (_element.elementlinked_id != -1)
                                {
                                    HTMLMarkerClass.element _parent_element = (HTMLMarkerClass.element)_list[_element.elementlinked_id];
                                    _parent_tag = _parent_element.elementName;
                                }
                                else
                                {
                                    _parent_tag = "";
                                }

                                string key = _element.elementName + ", " + _parent_tag;

                                /*rule_part _rp = new rule_part();
                                 * _rp._tag = ;
                                 * _rp._parent_tag = _parent_tag;*/
                                rule_information _ri = new rule_information(item_cn, _element.elementName, _parent_tag, _element.innerHTML_AE, 1, false);
                                add_rule(key, _ri);
                            } //yaz = true
                        }     //for each
                    }
                }             //for i
            }
        }
Esempio n. 3
0
        public static void Compare_Two_Ht(Hashtable _ht01, Hashtable _ht02, ArrayList _list)
        {
            for (int i = 0; i < _CN_count_correct.Length; i++)
            {
                _CN_count_correct[i] = 0;
                _CN_count_false[i]   = 0;
            }

            foreach (DictionaryEntry d2 in _ht02)
            {
                rule_information _ri2 = (rule_information)d2.Value;
                string           _cn  = _ri2._Classname;
                int _id = id_CN(_cn);

                bool rule_var        = false;
                bool element_predict = false;

                for (int i = 0; i < _list.Count; i++)
                {
                    HTMLMarkerClass.element _element = (HTMLMarkerClass.element)_list[i];
                    if (_element.elementName == _ri2._tag && _element.parent_elementName == _ri2._parent_tag && _element.wordCount_AE > 2)
                    {
                        rule_var = true;
                        foreach (DictionaryEntry d1 in _ht01)
                        {
                            rule_information _ri1 = (rule_information)d1.Value;
                            if (_ri1._tag == _ri2._tag && _ri1._parent_tag == _ri2._parent_tag)
                            {
                                if (_ri1._Classname == _cn)
                                {
                                    if (_id != -1)
                                    {
                                        _CN_count_correct[_id]++;
                                    }
                                }
                                else
                                if (_id != -1)
                                {
                                    _CN_count_false[_id]++;    //error 1
                                }
                                element_predict = true;
                                break;
                            }
                        }//foreach 2
                        if (rule_var)
                        {
                            break;
                        }
                    }
                }//for

                //rule in list but no prediction
                if (rule_var && !element_predict)
                {
                    if (_id != -1)
                    {
                        _CN_count_false[_id]++;//error 2
                    }
                }
            }//foreach 1*/
        }