switch( axis )
{
case Axis.CHILD:
return new IterableChildAxis( axis );
case Axis.DESCENDANT:
return new IterableDescendantAxis( axis );
case Axis.PARENT:
return new IterableParentAxis( axis );
case Axis.FOLLOWING_SIBLING:
return new IterableFollowingSiblingAxis( axis );
case Axis.PRECEDING_SIBLING: