src/POData/UriProcessor/QueryProcessor/ExpandProjectionParser/ExpandProjectionParser.php
/**
     * Parse the given expand and select clause, validate them 
     * and build 'Projection Tree'
     * 
     * @param ResourceSetWrapper $resourceSetWrapper The resource set identified by the resource path uri.
     * @param ResourceType $resourceType The resource type of entities identified by the resource path uri.
     * @param InternalOrderByInfo $internalOrderInfo The top level sort information, this will be set if the $skip, $top is
     *                                                         specified in the 
     *                                                         request uri or Server 
     *                                                         side paging is
     *                                                         enabled for top level 
     *                                                         resource
     * @param int $skipCount The value of $skip option applied to the top level resource
     *                                                         set identified by the 
     *                                                         resource path uri 
     *                                                         null means $skip 
     *                                                         option is not present.
     * @param int $takeCount The minimum among the value of $top option applied to and
     *                                                         page size configured
     *                                                         for the top level
     *                                                         resource 
     *                                                         set identified
     *                                                         by the resource 
     *                                                         path uri.
     *                                                         null means $top option
     *                                                         is not present and/or
     *                                                         page size is not 
     *                                                         configured for top
     *                                                         level resource set.
     * @param string $expand The value of $expand clause
     * @param string $select The value of $select clause
     * @param ProvidersWrapper $providerWrapper Reference to metadata and query provider wrapper
     * 
     * @return RootProjectionNode Returns root of the 'Projection Tree'
     * 
     * @throws ODataException If any error occur while parsing expand and/or select clause
     *
     */
Parse the given expand and select clause, validate them
and build 'Projection Tree'

@param ResourceSetWrapper $resourceSetWrapper The resource set identified by the resource path uri.
@param ResourceType $resourceType The resource type of entities identified by the resource path uri.

@return RootProjectionNode Returns root of the 'Projection Tree'

@throws ODataException If any error occur while parsing expand and/or select clause
Parse the given expand and select clause validate them and build ' Projection Tree ' @param ResourceSetWrapper $resourceSetWrapper The resource set identified by the resource path uri . @param ResourceType $resourceType The resource type of entities identified by the resource path uri . @return RootProjectionNode Returns root of the ' Projection Tree ' @throws ODataException If any error occur while parsing expand and / or select clause
public static function parseExpandAndSelectClause(
        ResourceSetWrapper $resourceSetWrapper,
        ResourceType $resourceType,
        $internalOrderInfo,
        $skipCount,
        $takeCount,
        $expand,
        $select,
        ProvidersWrapper $providerWrapper
    ) {
        $parser = new ExpandProjectionParser($providerWrapper);
        $parser->_rootProjectionNode = new RootProjectionNode(
            $resourceSetWrapper,
            $internalOrderInfo,
            $skipCount,
            $takeCount,
            null,
            $resourceType
        );
        $parser->_parseExpand($expand);
        $parser->_parseSelect($select);
        return $parser->_rootProjectionNode;
    }
public static function parseExpandAndSelectClause ( ResourceSetWrapper $ resourceSetWrapper , ResourceType $ resourceType , $ internalOrderInfo , $ skipCount , $ takeCount , $ expand , $ select , ProvidersWrapper $ providerWrapper ) { $ parser = new ExpandProjectionParser ( $ providerWrapper ) ; $ parser -> _rootProjectionNode = new RootProjectionNode ( $ resourceSetWrapper , $ internalOrderInfo , $ skipCount , $ takeCount , null , $ resourceType ) ; $ parser -> _parseExpand ( $ expand ) ; $ parser -> _parseSelect ( $ select ) ; return $ parser -> _rootProjectionNode ; }
Parse the given expand and select clause, validate them
 and build 'Projection Tree'
Parse the given expand and select clause validate them and build ' Projection Tree '