XBRL-US-GAAP-2015.php
protected function primaryItemsAllowed( $nodes, $roleRefKey )
	{
		foreach ( $nodes as $nodeKey => $node )
		{
			if ( $this->nodeIsHypercube( $node ) ) return true;

			if ( ! isset( $node['children'] ) || ! count( $node['children'] ) ) continue;
			$result = $this->primaryItemsAllowed( $node['children'], $roleRefKey );
			if ( $result ) return true;
		}

		return false;
	}
protected function primaryItemsAllowed( $nodes, $roleRefKey )
	{
		foreach ( $nodes as $nodeKey => $node )
		{
			if ( $this->nodeIsHypercube( $node ) ) return true;

			if ( ! isset( $node['children'] ) || ! count( $node['children'] ) ) continue;
			$result = $this->primaryItemsAllowed( $node['children'], $roleRefKey );
			if ( $result ) return true;
		}

		return false;
	}
protected function primaryItemsAllowed ( $ nodes , $ roleRefKey ) { foreach ( $ nodes as $ nodeKey => $ node ) { if ( $ this -> nodeIsHypercube ( $ node ) ) return true ; if ( ! isset ( $ node [ 'children' ] ) || ! count ( $ node [ 'children' ] ) ) continue ; $ result = $ this -> primaryItemsAllowed ( $ node [ 'children' ] , $ roleRefKey ) ; if ( $ result ) return true ; } return false ; }
Provides a descendant implementation a chance to define whether or not primary items are allowed for a node in a presentation hierarchy
In US-GAAP taxonomies, primary items are only relevant when there is a statement table.  Without this check, invalid hypercubes and
dimensions can be added.
@param array $nodes An array of presentation hierarchy nodes
@param string $roleRefKey
@return bool True if primary items are allowed (default: true)
Provides a descendant implementation a chance to define whether or not primary items are allowed for a node in a presentation hierarchy In US - GAAP taxonomies primary items are only relevant when there is a statement table . Without this check invalid hypercubes and dimensions can be added .