/// <summary>
        /// Applies the content of this Typed Element to an instance
        /// </summary>
        /// <param name="target">The target instance to parse the content</param>
        public void Populate(TypedElement target)
        {
            target.Type = Type;

            if (RawElement == null)
            {
                throw new InvalidOperationException("Element content has already been populated");
            }

            using var Reader = RawElement.CreateReader();

            Reader.Read();

            target.Deserialise(Reader, false);
        }