/// <summary>
        /// The get categorisation.
        /// </summary>
        /// <param name="xref">
        /// The xref.
        /// </param>
        /// <param name="structureWriter">
        /// The structure writer.
        /// </param>
        /// <exception cref="ArgumentException">
        /// </exception>
        public virtual void GetCategorisation(IMaintainableRefObject xref, IStructureWritingEngine structureWriter)
        {
            if (structureWriter == null)
            {
                throw new ArgumentException("IStructureWritingEngine can not be null");
            }

            IMaintainableObject bean = this.SdmxObjectRetrievalManager.GetCategorisation(xref);
            structureWriter.WriteStructure(bean);
        }
        /// <summary>
        /// The get maintainable.
        /// </summary>
        /// <param name="query">
        /// The query.
        /// </param>
        /// <param name="structureWriter">
        /// The structure writer.
        /// </param>
        /// <exception cref="ArgumentException">
        /// </exception>
        public virtual void GetMaintainable(IStructureReference query, IStructureWritingEngine structureWriter)
        {
            if (structureWriter == null)
            {
                throw new ArgumentException("IStructureWritingEngine can not be null");
            }

            IMaintainableObject bean = this.SdmxObjectRetrievalManager.GetMaintainable(query);
            structureWriter.WriteStructure(bean);
        }