A wildcard selection can either be '*' or '**' depending on the context of the call (with or without a schema).

@return bool
433654
protected function isWildCardSelection()
    {
        return (count($this->operation->getAttributes()) === 1 && ($this->operation->getAttributes()[0] == '*' || $this->operation->getAttributes()[0] == '**'));
    }
823694
public function getSchema()
    {
        $schemaLocation = $this->documentElement->getAttribute('xsi:schemaLocation');
        if (!$schemaLocation or strpos($schemaLocation, ' ')===false)
            return false;
        list($uri, $xsd) = explode(' ', $schemaLocation);
        return $xsd;
    }
919990
protected function lexSelection(): NodeInterface
    {
        return $this->peek(TokenKindEnum::SPREAD)
            ? $this->lexFragment()
            : $this->lexField();
    }
677858
public function SimpleSelectClause()
    {
        $isDistinct = false;
        $this->match(Lexer::T_SELECT);

        if ($this->lexer->isNextToken(Lexer::T_DISTINCT)) {
            $this->match(Lexer::T_DISTINCT);

            $isDistinct = true;
        }

        return new AST\SimpleSelectClause($this->SimpleSelectExpression(), $isDistinct);
    }
31509
public function IsContextSensitive()
	{
		if ( ! is_null( $this->_childs ) )
		{
			foreach ( $this->_childs as $node )
			{
				if ( $node->IsContextSensitive() )
				{
					return true;
				}
			}
		}

		return false;
	}
205651
public static function wildcardExists( $uriString )
    {
        $wildcardIndex = self::wildcardsIndex();
        foreach ( $wildcardIndex as $preg )
        {
            if ( preg_match( $preg, $uriString ) )
            {
                return true;
            }
        }
        return false;
    }
626324
protected function determineSchemaFile()
	{
		if ( $this->schemaFile && $this->schemaNamespace ) return;

		$schemaFileList = array();
		$this->traverseContents( function( $path, $name, $type) use( &$schemaFileList )
		{
			if ( $type == PATHINFO_DIRNAME ) return true;
			$extension = pathinfo( $name, PATHINFO_EXTENSION );
			if ( $extension != 'xsd' ) return true;
			$schemaFileList[] = "$path$name";
			return true;
		} );

		if ( count( $schemaFileList ) != 1 )
		{
			throw XBRL_TaxonomyPackageException::withError( "tpe:schemaFileNotFound", "The package does not contain just one schema (.xsd) file" );
		}

		$this->schemaFile = reset( $schemaFileList );
		$content = $this->getFile( $this->schemaFile );
		$this->schemaNamespace = $this->getTargetNamespace( $this->schemaFile, $content );
		if ( ! XBRL::endsWith( $this->schemaNamespace, '/' ) )
		{
			$this->schemaNamespace.= "/";
		}

		// Fix up the schema file
		$scheme = parse_url( $this->schemaFile, PHP_URL_SCHEME );
		if ( $scheme ) return;
		$this->schemaFile = $this->schemaNamespace . $this->schemaFile;
	}
1208149
protected function completeForOptionShortcutValues()
    {
        $wordIndex = $this->context->getWordIndex();

        if ($this->command && $wordIndex > 1) {
            $left = $this->context->getWordAtIndex($wordIndex - 1);

            // Complete short options
            if ($left[0] == '-' && strlen($left) == 2) {
                $shortcut = substr($left, 1);
                $def = $this->command->getNativeDefinition();

                if (!$def->hasShortcut($shortcut)) {
                    return false;
                }

                $opt = $def->getOptionForShortcut($shortcut);
                if ($opt->isValueRequired() || $opt->isValueOptional()) {
                    return $this->completeOption($opt);
                }
            }
        }

        return false;
    }
1274700
protected function _buildSelectStart()
        {
            $fragment = 'SELECT ';
            $result_columns = join(', ', $this->_resultColumns);

            if (!is_null($this->_limit) &&
                self::$_config[$this->_connection_name]['limit_clause_style'] === One::LIMIT_STYLE_TOP_N) {
                $fragment .= "TOP {$this->_limit} ";
            }

            if ($this->_distinct) {
                $result_columns = 'DISTINCT ' . $result_columns;
            }

            $fragment .= "{$result_columns} FROM " . $this->_quoteIdentifier($this->_table_name);

            if (!is_null($this->_table_alias)) {
                $fragment .= " " . $this->_quoteIdentifier($this->_table_alias);
            }

            return $fragment;
        }
1304599
boolean hasNoAlternativeWildcardRegistration() {
        return parent == null || PathElement.WILDCARD_VALUE.equals(valueString) || !parent.getChildNames().contains(PathElement.WILDCARD_VALUE);
    }
764282
protected function completeForOptions()
    {
        $word = $this->context->getCurrentWord();

        if (substr($word, 0, 2) === '--') {
            $options = array();

            foreach ($this->getAllOptions() as $opt) {
                $options[] = '--'.$opt->getName();
            }

            return $options;
        }

        return false;
    }
51912
protected function buildSelect()
    {
        $selects = [];
        foreach ($this->select as $select) {
            $shouldBeQuoted = true;

            // Check our list of nonQuoteStrings to see if we should quote or not.
            foreach ($this->nonQuoteStrings as $nonQuoteString) {
                if (strpos(strtolower($select), $nonQuoteString) !== false) {
                    $shouldBeQuoted = false;
                    break;
                }
            }

            if ($shouldBeQuoted) {
                $selects[] = $this->getQuotedTableName() . '.' . $this->quoteIdentifier($select);
            } else {
                $selects[] = $select;
            }
        }
        return 'SELECT ' . implode(', ', $selects);
    }
790023
public function IsContextSensitive()
	{
		if ( $this->_path[0]->type == XPath2ExprType::Expr )
			return $this->_path[0]->node->IsContextSensitive();
		return true;
	}
1103382
private function hasSchema()
    {
        return $this->database
            && ($this->schema ?: $this->database->getSchema())
            && ($platform = $this->getPlatform())
            && $platform->supportsSchemas()
        ;
    }
734858
protected function selector(&$out)
    {
        $selector = [];

        for (;;) {
            if ($this->match('[>+~]+', $m)) {
                $selector[] = [$m[0]];
                continue;
            }

            if ($this->selectorSingle($part)) {
                $selector[] = $part;
                $this->match('\s+', $m);
                continue;
            }

            if ($this->match('\/[^\/]+\/', $m)) {
                $selector[] = [$m[0]];
                continue;
            }

            break;
        }

        if (count($selector) === 0) {
            return false;
        }

        $out = $selector;
        return true;
    }
1041289
protected function matchOnlyChild()
	{
		$branches = $this->getBranches();
		if (!isset($branches[0]->firstChild))
		{
			return false;
		}

		$firstChild = $branches[0]->firstChild;
		if ($this->isXsl($firstChild, 'choose'))
		{
			// Abort on xsl:choose because we can't move it without moving its children
			return false;
		}

		foreach ($branches as $branch)
		{
			if ($branch->childNodes->length !== 1 || !($branch->firstChild instanceof DOMElement))
			{
				return false;
			}
			if (!$this->isEqualTag($firstChild, $branch->firstChild))
			{
				return false;
			}
		}

		return true;
	}
966028
private function hasPasteNewButton()
    {
        $environment     = $this->environment;
        $basicDefinition = $environment->getDataDefinition()->getBasicDefinition();

        return ((true === (bool) ViewHelpers::getManualSortingProperty($environment))
                && (true === empty($this->clipboardItems))
                && (false === $this->isHierarchical())
                && ($basicDefinition->isEditable() && $basicDefinition->isCreatable()));
    }