/// <summary>
        /// Used to get view's format definitions.
        /// </summary>
        /// <returns>Return the view's format definitions</returns>
        protected ViewFormatDefinitions GetViewFormatDefinitions()
        {
            ViewFormatDefinitions formatDefinitions = new ViewFormatDefinitions();

            formatDefinitions.FormatDef          = new FormatDefDefinition[1];
            formatDefinitions.FormatDef[0]       = new FormatDefDefinition();
            formatDefinitions.FormatDef[0].Type  = Common.GetConfigurationPropertyValue("FormatsGeneral_Type", this.Site);
            formatDefinitions.FormatDef[0].Value = Common.GetConfigurationPropertyValue("FormatsGeneral_Value", this.Site);

            formatDefinitions.Format                       = new FormatDefinition[1];
            formatDefinitions.Format[0]                    = new FormatDefinition();
            formatDefinitions.Format[0].Name               = Common.GetConfigurationPropertyValue("FormatsField_Name", this.Site);
            formatDefinitions.Format[0].FormatDef          = new FormatDefDefinition[1];
            formatDefinitions.Format[0].FormatDef[0]       = new FormatDefDefinition();
            formatDefinitions.Format[0].FormatDef[0].Type  = Common.GetConfigurationPropertyValue("FormatsField_Type", this.Site);
            formatDefinitions.Format[0].FormatDef[0].Value = Common.GetConfigurationPropertyValue("FormatsField_Value", this.Site);

            return(formatDefinitions);
        }
        /// <summary>
        /// Used to validate the Formats
        /// </summary>
        /// <param name="formats">specify the formats of the views</param>
        private void ValidateFormats(ViewFormatDefinitions formats)
        {
            if (formats != null)
            {
                // If the element formats is not null, and its schema has been validated before de-serialization; so this requirement MS-WSSCAML_R900 can be captured.
                Site.CaptureRequirementIfIsTrue(
                    this.PassSchemaValidation,
                    "MS-WSSCAML",
                    900,
                    @"[In Schema] [The schema definition of ViewFormatDefinitions Type is as follows:]
                                                                   <xs:complexType name=""ViewFormatDefinitions"">
                                                                   <xs:sequence>
                                                                   <xs:element name=""FormatDef"" type=""FormatDefDefinition"" minOccurs=""0"" maxOccurs=""unbounded"" />
                                                                   <xs:element name=""Format"" type=""FormatDefinition""  minOccurs=""0"" maxOccurs=""unbounded"" />
                                                                   </xs:sequence>
                                                                   </xs:complexType>");

                if (formats.Format != null)
                {
                    // If the element Format is not null, and its schema has been validated before de-serialization; so this requirement MS-WSSCAML_R907 can be captured.
                    Site.CaptureRequirementIfIsTrue(
                        this.PassSchemaValidation,
                        "MS-WSSCAML",
                        907,
                        @"[In Schema] [The schema definition of FormatDefinition is as follows:]
                                                                      <xs:complexType name=""FormatDefinition"">
                                                                      <xs:sequence>
                                                                      <xs:element name=""FormatDef"" type=""FormatDefDefinition"" minOccurs=""0"" maxOccurs=""unbounded"" />
                                                                      </xs:sequence>
                                                                      <xs:attribute name=""Name"" type=""xs:string"" use=""required"" />
                                                                      </xs:complexType>");
                }

                if (formats.FormatDef != null)
                {
                    // If the element FormatDef is not null, its schema has been validated before de-serialization; so this requirement MS-WSSCAML_R904 can be captured.
                    Site.CaptureRequirementIfIsTrue(
                        this.PassSchemaValidation,
                        "MS-WSSCAML",
                        904,
                        @"[In Schema] [The schema definition of FormatDefDefinition is as follows:] <xs:complexType name=""FormatDefDefinition"">
                                                                  <xs:simpleContent>
                                                                  <xs:extension base=""xs:string"">
                                                                  <xs:attribute name=""Type"" type=""xs:string"" use=""required"" />
                                                                  <xs:attribute name=""Value"" type=""xs:string"" use=""required"" />
                                                                  </xs:extension>
                                                                  </xs:simpleContent>
                                                                  </xs:complexType>");
                }
            }
        }
        /// <summary>
        /// Used to get view's format definitions.
        /// </summary>
        /// <returns>Return the view's format definitions</returns>
        protected ViewFormatDefinitions GetViewFormatDefinitions()
        {
            ViewFormatDefinitions formatDefinitions = new ViewFormatDefinitions();
            formatDefinitions.FormatDef = new FormatDefDefinition[1];
            formatDefinitions.FormatDef[0] = new FormatDefDefinition();
            formatDefinitions.FormatDef[0].Type = Common.GetConfigurationPropertyValue("FormatsGeneral_Type", this.Site);
            formatDefinitions.FormatDef[0].Value = Common.GetConfigurationPropertyValue("FormatsGeneral_Value", this.Site);

            formatDefinitions.Format = new FormatDefinition[1];
            formatDefinitions.Format[0] = new FormatDefinition();
            formatDefinitions.Format[0].Name = Common.GetConfigurationPropertyValue("FormatsField_Name", this.Site);
            formatDefinitions.Format[0].FormatDef = new FormatDefDefinition[1];
            formatDefinitions.Format[0].FormatDef[0] = new FormatDefDefinition();
            formatDefinitions.Format[0].FormatDef[0].Type = Common.GetConfigurationPropertyValue("FormatsField_Type", this.Site);
            formatDefinitions.Format[0].FormatDef[0].Value = Common.GetConfigurationPropertyValue("FormatsField_Value", this.Site);

            return formatDefinitions;
        }