ArrowFieldInternal
Groups settings regarding specific field of an arrow schema. 
                using Azure.Core;
using Azure.Storage.Common;
using System.Xml;
namespace Azure.Storage.Blobs.Models
{
    [CodeGenModel("ArrowField")]
    internal class ArrowFieldInternal : IXmlSerializable
    {
        public string Type { get; }
        public string Name { get; set; }
        public int? Precision { get; set; }
        public int? Scale { get; set; }
        public ArrowFieldInternal(string type)
        {
            Argument.AssertNotNull(type, "type");
            Type = type;
        }
        internal ArrowFieldInternal(string type, string name, int? precision, int? scale)
        {
            Type = type;
            Name = name;
            Precision = precision;
            Scale = scale;
        }
        void IXmlSerializable.Write(XmlWriter writer, string nameHint)
        {
            writer.WriteStartElement(nameHint ?? "Field");
            writer.WriteStartElement("Type");
            writer.WriteValue(Type);
            writer.WriteEndElement();
            if (Optional.IsDefined(Name)) {
                writer.WriteStartElement("Name");
                writer.WriteValue(Name);
                writer.WriteEndElement();
            }
            if (Optional.IsDefined(Precision)) {
                writer.WriteStartElement("Precision");
                writer.WriteValue(Precision.Value);
                writer.WriteEndElement();
            }
            if (Optional.IsDefined(Scale)) {
                writer.WriteStartElement("Scale");
                writer.WriteValue(Scale.Value);
                writer.WriteEndElement();
            }
            writer.WriteEndElement();
        }
    }
}