/// <summary> /// Expands the graph expression with the specified property and query. /// The new graph expression will bind a given context if and only if the old expression binds, /// while the expansion is allowed not to bind /// </summary> /// <param name="property">property along which to expand</param> /// <param name="query">queryable graph required at the end of the property</param> /// <returns>a queryable graph</returns> public IQueryableGraph Expand(Resource property, IQueryableGraph query) { return(new QueryableGraph(GraphProvider, GraphExpression.LeftJoin(property, query.GraphExpression))); }
/// <summary> /// Expands the graph expression with the specified property and object. /// The new graph expression will bind a given context if and only if the old expression binds, /// while the new addition is allowed not to bind /// </summary> /// <param name="property">property along which to expand</param> /// <param name="object">object required at the end of the property, can be left null to insert a variable</param> /// <returns>a queryable graph</returns> public IQueryableGraph Expand(Resource property, Term @object = null) { return(new QueryableGraph(GraphProvider, GraphExpression.LeftJoin(property, @object))); }