public MetadataReportBaseCore(IReportStructure rs, IMetadataReport builtFrom, IIdentifiableRetrievalManager retrievalManager) : base(builtFrom) {
                    this.reportedAttributes = new List<IReportedAttributeBase>();
			this.builtFrom = builtFrom;
			this.target = new TargetObjectBaseCore(builtFrom.Target, retrievalManager);
			/* foreach */
			foreach (IReportedAttribute reportedAttribute  in  builtFrom
					.ReportedAttributes) {
				IMetadataAttribute Ima = GetMetadataAttributeForRepotedAttribtue(
						reportedAttribute, rs.MetadataAttributes);
				reportedAttributes.Add(new ReportedAttributeObjectBaseCore(Ima, reportedAttribute, retrievalManager));
			}
		}
        /// <summary>
        /// Initializes a new instance of the <see cref="ReportStructureMutableCore"/> class.
        /// </summary>
        /// <param name="objTarget">
        /// The agencySchemeMutable target. 
        /// </param>
        public ReportStructureMutableCore(IReportStructure objTarget)
            : base(objTarget)
        {
            this._metadataAttributes = new List<IMetadataAttributeMutableObject>();
            if (objTarget.MetadataAttributes != null)
            {
                foreach (IMetadataAttributeObject metadataAttribute in objTarget.MetadataAttributes)
                {
                    this._metadataAttributes.Add(new MetadataAttributeMutableCore(metadataAttribute));
                }
            }

            this._targetMetadatas = objTarget.TargetMetadatas;
        }