/// <summary>
        /// Creates the value of ReferencedSopSequence in the underlying collection. Type 1.
        /// </summary>
        IReferencedSopSequence IImageReferenceMacro.CreateReferencedSopSequence()
        {
            DicomAttribute dicomAttribute = base.DicomAttributeProvider[DicomTags.ReferencedSopSequence];

            if (dicomAttribute.IsNull || dicomAttribute.Count == 0)
            {
                DicomSequenceItem dicomSequenceItem = new DicomSequenceItem();
                dicomAttribute.Values = new DicomSequenceItem[] { dicomSequenceItem };
                ImageReferenceMacro.ReferencedSopSequenceType iodBase = new ImageReferenceMacro.ReferencedSopSequenceType(dicomSequenceItem);
                iodBase.InitializeAttributes();
                return(iodBase);
            }
            return(new ImageReferenceMacro.ReferencedSopSequenceType(((DicomSequenceItem[])dicomAttribute.Values)[0]));
        }
			/// <summary>
			/// Creates the value of ReferencedSopSequence in the underlying collection. Type 1.
			/// </summary>
			IReferencedSopSequence IImageReferenceMacro.CreateReferencedSopSequence() {
				DicomAttribute dicomAttribute = base.DicomAttributeProvider[DicomTags.ReferencedSopSequence];
				if (dicomAttribute.IsNull || dicomAttribute.Count == 0) {
					DicomSequenceItem dicomSequenceItem = new DicomSequenceItem();
					dicomAttribute.Values = new DicomSequenceItem[] { dicomSequenceItem };
					ImageReferenceMacro.ReferencedSopSequenceType iodBase = new ImageReferenceMacro.ReferencedSopSequenceType(dicomSequenceItem);
					iodBase.InitializeAttributes();
					return iodBase;
				}
				return new ImageReferenceMacro.ReferencedSopSequenceType(((DicomSequenceItem[])dicomAttribute.Values)[0]);
			}