anchor.diff:  
   == Block Join Query Parsers
   
  -There are two query parsers that support block joins. These parsers allow indexing and searching for relational content that has been<<uploading-data-with-index-handlers.adoc#uploading-data-with-index-handlers,indexed as nested documents>>.
  +There are two query parsers that support block joins. These parsers allow indexing and searching for relational content that has been <<uploading-data-with-index-handlers.adoc#uploading-data-with-index-handlers,indexed as nested documents>>.
   
   The example usage of the query parsers below assumes these two documents and each of their child documents have been indexed:
   
  
positive.code: ----
  
  This example creates a phrase query with "foo" followed by "bar" (assuming the analyzer for `myfield` is a text field with an analyzer that splits on whitespace and lowercase terms). This is generally equivalent to the Lucene query parser expression `myfield:"Foo Bar"`.
  
  == Function Query Parser
  
  
negative.code: </result>
  ----
  
  [CAUTION]
  ====
  The query for `someParents` should match only parent documents passed by `allParents` or you may get an exception:
  
  [literal]
  Parent query must not match any docs besides parent filter. Combine them as must (+) and must-not (-) clauses to find a problem doc.
  
  You can search for `q=+(someParents) -(allParents)` to find a cause if you encounter this error.
  ====
  
  ==== Filtering and Tagging
  
  `{!child}` also supports `filters` and `excludeTags` local parameters like the following:
  
  [source,text]
  {!child of=<allParents> filters=$parentfq excludeTags=certain}<someParents>&parentfq=BRAND:Foo&parentfq=NAME:Bar&parentfq={!tag=certain}CATEGORY:Baz
  
  This is equivalent to:
  
  [source,text]
  {!child of=<allParents>}+<someParents> +BRAND:Foo +NAME:Bar
  
  Notice "$" syntax in `filters` for referencing queries; comma-separated tags `excludeTags` allows to exclude certain queries by tagging. Overall the idea is similar to <<faceting.adoc#tagging-and-excluding-filters, excluding fq in facets>>. Note, that filtering is applied to the subordinate clause (`<someParents>`), and the intersection result is joined to the children.
  
  ==== All Children Syntax
  
  When subordinate clause (`<someParents>`) is omitted, it's parsed as a _segmented_ and _cached_ filter for children documents. More precisely, `q={!child of=<allParents>}` is equivalent to `q=\*:* -<allParents>`.
  
  === Block Join Parent Query Parser
  
  