public static void WriteIoUnspecifiedComponentProperty(XElement xParentComponent, string propertyName, int componentCount)
        {
            // can't write IO message if xElement or parent is null
            if (xParentComponent == null)
            {
                WriteFatalIOException(new ArgumentNullException(xParentComponent.ToString()), xParentComponent, IoType.Component, componentCount);
            }

            DefaultLogger.DoWrite(
                _entityIoStream,
                MessageType.FileIOInfo,
                true,
                string.Format("Component property [{0}] for component [{1}] (xml-line number: {2}) was not specified, using default value",
                              propertyName, xParentComponent.Name, componentCount)
                );
        }
        /// <summary>
        /// Writes an IO message.
        /// </summary>
        /// <param name="xElement">The x element.</param>
        /// <param name="entityNumber">The entity number.</param>
        public static void WriteIoInformation(XElement xElement, IoType elementType, int elementTypeCount)
        {
            // can't write an IO message if the xElement is null
            if (xElement == null)
            {
                WriteFatalIOException(new ArgumentNullException(xElement.ToString()), xElement, elementType, elementTypeCount);
            }

            DefaultLogger.DoWrite(
                _entityIoStream,
                MessageType.FileIOInfo,
                true,
                string.Format("Parsing element, iotype: {0}, element name {1}, xml-line number {2}",
                              elementType.ToString(), xElement.Name, xElement.LineNumber())
                );
        }