Beispiel #1
0
        public RQKosBranch(IEnumerable <RQKosTransfer> newRQKosBranch)
            : base()
        {
            List <SubjClass> classArray = new List <SubjClass>();

            for (int i = 0; i < newRQKosBranch.Count(); i++)
            {
                if ((!string.IsNullOrEmpty(newRQKosBranch.ElementAt(i).ClassCode)) &&
                    (!string.IsNullOrEmpty(newRQKosBranch.ElementAt(i).ClassName)) &&
                    (!string.IsNullOrEmpty(newRQKosBranch.ElementAt(i).RVKClassCodes)))
                {
                    SubjClass sc = new SubjClass();

                    sc.ClassCode       = newRQKosBranch.ElementAt(i).ClassCode;
                    sc.ClassID         = newRQKosBranch.ElementAt(i).ClassID;
                    sc.ClassShortTitle = newRQKosBranch.ElementAt(i).ClassName;
                    sc.ClassLongTitle  = newRQKosBranch.ElementAt(i).ClassTitle;
                    sc.NrOfRefLinks    = Convert.ToInt16(newRQKosBranch.ElementAt(i).NrOfDocuments);
                    sc.NrOfSubClasses  = Convert.ToInt16(newRQKosBranch.ElementAt(i).NrOfSubclasses);
                    sc.ParentClassID   = newRQKosBranch.ElementAt(i).ParentID;
                    sc.RefRVKSet       = newRQKosBranch.ElementAt(i).RVKClassCodes;
                    sc.RefRVKClass     = newRQKosBranch.ElementAt(i).RVKClassCodes != null ? new RQLib.Utilities.LexicalClass(newRQKosBranch.ElementAt(i).RVKClassCodes) : null;
                    sc.ClassDataClient = new RQClassificationDataClient();
                    classArray.Add(sc);
                }
            }
            this.classBranch = new SubjClassBranch(classArray.ToArray());
        }
Beispiel #2
0
        public void Add(RQKosItemTemplate item)
        {
            SubjClass cl = item._class;

            cl.NrOfRefLinks   = 0;
            cl.NrOfSubClasses = 0;
            cl.ParentClassID  = this.classBranch.MajorClassID;
            this.classBranch.Add(cl);
        }
Beispiel #3
0
        public RQKosBranch AppendClass()
        {
            SubjClassBranch editCB = this.Find(this._mEditClassID);
            SubjClass       newSC  = new SubjClass();

            newSC.ClassificationSystem = SubjClass.ClassificationSystems.rq;
            newSC.NrOfClassDocs        = 0;
            newSC.NrOfRefLinks         = 0;
            newSC.NrOfSubClasses       = 0;
            newSC.ParentClassID        = this._mEditClassID;
            editCB.Add(newSC);
            return(this.RQKosEditSet);
        }
Beispiel #4
0
        //public RQKosBranchStatus CheckConsistency()
        //{
        //    string majClassId = this.classBranch.get_Item(0).ClassID;
        //    SubjClassManager sclm = new SubjClassManager();

        //    if (SubjClassManager.IsValid(this.classBranch))
        //        return new RQKosBranchStatus() { isSuccess = true, message = "Mapping is consistent!", hints = RQLib.EditGlobals.ReadHints() };
        //    else
        //        return new RQKosBranchStatus() { isSuccess = false, message = "Consistency Errors", hints = RQLib.EditGlobals.ReadHints() };
        //}

        public void Load()
        {
            this.classBranch.Load();
            if (this.classBranch.MajorClassID == "0")
            {
                SubjClass sc = this.classBranch.get_Item(0);

                sc.ClassCode       = "NULL";
                sc.ClassShortTitle = "RQ Classification";
                sc.RefRVKSet       = "A-Z";
                sc.NrOfSubClasses  = 15;
                sc.NrOfRefLinks    = 0;
            }
        }
Beispiel #5
0
        public bool IsCompatible()
        {
            SubjClassBranch editCB = this.Find(this._mEditClassID);
            RQKosBranch     oldCB  = new RQKosBranch(this._mEditClassID, "");
            bool            retVal = true;

            oldCB.Load();
            for (var i = 1; i < editCB.count; i++)
            {
                if (oldCB.ClassBranch.get_Item(i) != null)
                {
                    SubjClass sc = editCB.get_Item(i);

                    if ((sc.NrOfSubClasses > 0) && (sc.RefRVKSet != oldCB.ClassBranch.get_Item(i).RefRVKSet))
                    {
                        if (!this.Find(sc.ClassID).IsFeasableWith(ref sc))
                        {
                            retVal = retVal && false;
                        }
                    }
                }
            }
            return(retVal);
        }
Beispiel #6
0
 public RQKosItem(SubjClass thisClass)
     : base(thisClass)
 {
 }
Beispiel #7
0
 public RQKosItemTemplate(SubjClass thisClass)
 {
     this._class = thisClass;
 }
Beispiel #8
0
 public RQKosItemTemplate()
 {
     this._class = new SubjClass();
 }