microformat-shiv.js
function( node, options ) {
			var classes,
				i;

			if(!node){
				return false;
			}

			// if documemt gets topmost node
			node = modules.domUtils.getTopMostNode( node );

			// look for h-* microformats
			classes = this.getUfClassNames(node);
			if(options && options.filters && modules.utils.isArray(options.filters)){
				i = options.filters.length;
				while(i--) {
					if(classes.root.indexOf(options.filters[i]) > -1){
						return true;
					}
				}
				return false;
			}else{
				return (classes.root.length > 0);
			}
		}
function( node, options ) {
			var classes,
				i;

			if(!node){
				return false;
			}

			// if documemt gets topmost node
			node = modules.domUtils.getTopMostNode( node );

			// look for h-* microformats
			classes = this.getUfClassNames(node);
			if(options && options.filters && modules.utils.isArray(options.filters)){
				i = options.filters.length;
				while(i--) {
					if(classes.root.indexOf(options.filters[i]) > -1){
						return true;
					}
				}
				return false;
			}else{
				return (classes.root.length > 0);
			}
		}
function ( node , options ) { var classes , i ; if ( ! node ) { return false ; } // if documemt gets topmost node node = modules . domUtils . getTopMostNode ( node ) ; // look for h-* microformats classes = this . getUfClassNames ( node ) ; if ( options && options . filters && modules . utils . isArray ( options . filters ) ) { i = options . filters . length ; while ( i -- ) { if ( classes . root . indexOf ( options . filters [ i ] ) > - 1 ) { return true ; } } return false ; } else { return ( classes . root . length > 0 ) ; } }
does a node have a class that marks it as a microformats root

@param  {DOM Node} node
@param  {Objecte} options
@return {Boolean}
does a node have a class that marks it as a microformats root