@Override
	public boolean equals(Object o)
	{
		if (!(o instanceof ElementStAX))
		{
			return false;
		}
		else
		{
			ElementStAX i = (ElementStAX) o;
			
			if(isText() != i.isText())
			{
				return false;
			}
			
			if(isText())
			{
				return i.text.equals(this.text);
			}
			else
			{
				return i.attributes.equals(this.attributes) && i.name.equals(this.name) && i.hasChildren == hasChildren;
			}
		}
	}