// INTERNAL METHODS /////////////////////////////////////////////////
        #region Builder Methods
        internal DomReadOnlyError AddDomReadOnlyError(Error error)
        {
            Contract.Requires(error != null);

            var domReadOnlyError = this.CreateAndAddNode(() => DomReadOnlyError.Create(error));

            return(domReadOnlyError);
        }
        // PUBLIC METHODS ///////////////////////////////////////////////////
        #region Factory Methods
        public static DomReadOnlyError Create(Error error)
        {
            Contract.Requires(error != null);

            var domReadOnlyError = new DomReadOnlyError(error);

            return(domReadOnlyError);
        }
        internal IEnumerable <DomReadOnlyError> AddDomReadOnlyErrorCollection(IEnumerable <Error> errorCollection)
        {
            Contract.Requires(errorCollection != null);

            var domReadOnlyErrorCollection = errorCollection
                                             .Select(x =>
            {
                var error            = x;
                var domReadOnlyError = this.CreateAndAddNode(() => DomReadOnlyError.Create(error));
                return(domReadOnlyError);
            })
                                             .ToList();

            return(domReadOnlyErrorCollection);
        }