public virtual object VisitXmlAttributeExpression(XmlAttributeExpression xmlAttributeExpression, object data) {
			throw new global::System.NotImplementedException("XmlAttributeExpression");
		}
		public sealed override object VisitXmlAttributeExpression(XmlAttributeExpression xmlAttributeExpression, object data) {
			this.BeginVisit(xmlAttributeExpression);
			object result = this.TrackedVisitXmlAttributeExpression(xmlAttributeExpression, data);
			this.EndVisit(xmlAttributeExpression);
			return result;
		}
		public virtual object TrackedVisitXmlAttributeExpression(XmlAttributeExpression xmlAttributeExpression, object data) {
			return base.VisitXmlAttributeExpression(xmlAttributeExpression, data);
		}
		public object VisitXmlAttributeExpression(XmlAttributeExpression xmlAttributeExpression, object data)
		{
			throw new NotImplementedException();
		}
		public virtual object VisitXmlAttributeExpression(XmlAttributeExpression xmlAttributeExpression, object data) {
			Debug.Assert((xmlAttributeExpression != null));
			Debug.Assert((xmlAttributeExpression.ExpressionValue != null));
			nodeStack.Push(xmlAttributeExpression.ExpressionValue);
			xmlAttributeExpression.ExpressionValue.AcceptVisitor(this, data);
			xmlAttributeExpression.ExpressionValue = ((Expression)(nodeStack.Pop()));
			return null;
		}
		public virtual object VisitXmlAttributeExpression(XmlAttributeExpression xmlAttributeExpression, object data) {
			Debug.Assert((xmlAttributeExpression != null));
			Debug.Assert((xmlAttributeExpression.ExpressionValue != null));
			return xmlAttributeExpression.ExpressionValue.AcceptVisitor(this, data);
		}