Inheritance: AbstractTO
        public TaggedVitalSignArray(string tag, IList <VitalSignSet> mdos)
        {
            this.tag = tag;
            if (mdos == null || mdos.Count == null)
            {
                this.count = 0;
                return;
            }

            IList <VitalSignTO> allSigns = new List <VitalSignTO>();

            foreach (VitalSignSet set in mdos)
            {
                if (set == null || set.VitalSigns == null || set.VitalSigns.Length == 0)
                {
                    continue;
                }
                foreach (VitalSign sign in set.VitalSigns)
                {
                    VitalSignTO newVital = new VitalSignTO(sign);
                    if (sign.Facility != null)
                    {
                        newVital.facility = new TaggedText(sign.Facility.Id, sign.Facility.Name);
                    }
                    if (sign.Location != null)
                    {
                        newVital.location = new HospitalLocationTO(set.Location);
                    }
                    newVital.timestamp = set.Timestamp;
                    allSigns.Add(newVital);
                }
            }

            this.vitals = new VitalSignTO[allSigns.Count];
            allSigns.CopyTo(this.vitals, 0);
            this.count = allSigns.Count;
        }