<?xml version="1.0" encoding="UTF-8"?><api:function-page xml:base="/apidoc/8.0/cts.fieldValueQuery.xml" generated="2015-10-07T16:36:00.016766-07:00" mode="javascript" xmlns:api="http://marklogic.com/rundmc/api"><api:function-name>cts.fieldValueQuery</api:function-name><api:suggest>cts.fieldvaluequery</api:suggest><api:suggest>cts</api:suggest><api:suggest>fieldvaluequery</api:suggest><api:function-link mode="xquery" fullname="cts:field-value-query">/apidoc/8.0/cts:field-value-query.xml</api:function-link><api:function mode="javascript" name="fieldValueQuery" type="builtin" lib="cts" category="SearchBuiltins" subcategory="cts:query Constructors" hidden="false" bucket="MarkLogic Built-In Functions" prefix="cts" namespace="http://marklogic.com/cts" fullname="cts.fieldValueQuery"><api:summary>
  Returns a query matching text content containing a given value in the
  specified field.  If the specified field does not exist,
  <code xmlns="http://www.w3.org/1999/xhtml">cts:field-value-query</code> throws an exception.
  If the specified field does not have the index setting
  <code xmlns="http://www.w3.org/1999/xhtml">field value searches</code> enabled, either for the database or
  for the specified field, then a <code xmlns="http://www.w3.org/1999/xhtml">cts:search</code> with a
  <code xmlns="http://www.w3.org/1999/xhtml">cts:field-value-query</code> throws an exception. A field
  is a named object that specified elements to include and exclude
  from a search, and can include score weights for any included elements.
  You create fields at the database level using the Admin Interface.  For
  details on fields, see the chapter on "Fields Database Settings" in the
  <em xmlns="http://www.w3.org/1999/xhtml">Administrator's Guide</em>.
</api:summary><api:params><api:param name="field-name" type="xs:string*"><api:param-description>
    One or more field names to search over. If multiple field names are
    supplied, the match can be in any of the specified fields (or-query
    semantics).
  </api:param-description><api:param-name>field-name</api:param-name><api:param-type>String[]</api:param-type></api:param><api:param name="text" type="xs:anyAtomicType*"><api:param-description>
    The values to match. If multiple values are specified,
    the query matches if any of the values match (or-query
    semantics). For XML documents, the values should be strings.
    For JSON, the values can be strings, numbers or booleans.
    To match null, pass in the empty sequence.
  </api:param-description><api:param-name>text</api:param-name><api:param-type>(String | Number | Boolean | null)[]</api:param-type></api:param><api:param name="options" type="xs:string*" optional="true"><api:param-description>
    Options to this query.  The default is ().
    <p xmlns="http://www.w3.org/1999/xhtml">
      Options include:</p>
      <blockquote xmlns="http://www.w3.org/1999/xhtml"><dl>
        <dt>"case-sensitive"</dt>
        <dd>A case-sensitive query.</dd>
        <dt>"case-insensitive"</dt>
        <dd>A case-insensitive query.</dd>
        <dt>"diacritic-sensitive"</dt>
        <dd>A diacritic-sensitive query.</dd>
        <dt>"diacritic-insensitive"</dt>
        <dd>A diacritic-insensitive query.</dd>
        <dt>"punctuation-sensitive"</dt>
        <dd>A punctuation-sensitive query.</dd>
        <dt>"punctuation-insensitive"</dt>
        <dd>A punctuation-insensitive query.</dd>
        <dt>"whitespace-sensitive"</dt>
        <dd>A whitespace-sensitive query.</dd>
        <dt>"whitespace-insensitive"</dt>
        <dd>A whitespace-insensitive query.</dd>
        <dt>"stemmed"</dt>
        <dd>A stemmed query.</dd>
        <dt>"unstemmed"</dt>
        <dd>An unstemmed query.</dd>
        <dt>"wildcarded"</dt>
        <dd>A wildcarded query.</dd>
        <dt>"unwildcarded"</dt>
        <dd>An unwildcarded query.</dd>
        <dt>"exact"</dt>
        <dd>An exact match query. Shorthand for "case-sensitive",
        "diacritic-sensitive", "punctuation-sensitive",
        "whitespace-sensitive", "unstemmed", and "unwildcarded".
        </dd>
        <dt>"lang=<em>iso639code</em>"</dt>
        <dd>Specifies the language of the query. The <em>iso639code</em>
            code portion is case-insensitive, and uses the languages
            specified by
           <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php" target="_blank">ISO 639</a>.
            The default is specified in the database configuration.</dd>
        <dt>"distance-weight=<em>number</em>"</dt>
        <dd>A weight applied based on the minimum distance between matches
        of this query.  Higher weights add to the importance of
        proximity (as opposed to term matches) when the relevance order is
        calculated.
        The default value is 0.0 (no impact of proximity). The
        weight should be between 64 and -16.
        Weights greater than 64 will have the same effect as a
        weight of 64.
        This parameter has no effect if the <code>word positions</code>
        index is not enabled.  This parameter has no effect on searches that
        use score-simple or score-random (because those scoring algorithms
        do not consider term frequency, proximity is irrelevant).
        </dd>
        <dt>"min-occurs=<em>number</em>"</dt>
        <dd>Specifies the minimum number of occurrences required. If
        fewer that this number of words occur, the fragment does not match.
        The default is 1.</dd>
        <dt>"max-occurs=<em>number</em>"</dt>
        <dd>Specifies the maximum number of occurrences required.  If
        more than this number of words occur, the fragment does not match.
        The default is unbounded.</dd>
        <dt>"synonym"</dt>
        <dd>Specifies that all of the terms in the $text parameter are
        considered synonyms for scoring purposes.  The result is that
        occurrences of more than one of the synonyms are scored as if
        there are more occurrences of the same term (as opposed to
        having a separate term that contributes to score). </dd>
      </dl></blockquote>

  </api:param-description><api:param-name>options</api:param-name><api:param-type>String[]</api:param-type></api:param><api:param name="weight" type="xs:double?" optional="true"><api:param-description>
    A weight for this query.
    Higher weights move search results up in the relevance
    order.  The default is 1.0. The
    weight should be between 64 and -16.
    Weights greater than 64 will have the same effect as a
    weight of 64.
    Weights less than the absolute value of 0.0625 (between -0.0625 and
    0.0625) are rounded to 0, which means that they do not contribute to the
    score.
  </api:param-description><api:param-name>weight</api:param-name><api:param-type>Number?</api:param-type></api:param></api:params><api:return>cts.fieldValueQuery</api:return><api:usage>
  <p xmlns="http://www.w3.org/1999/xhtml">If you use <code>cts:near-query</code> with
  <code>cts:field-value-query</code>, the distance supplied in the near query
  applies to the whole document, not just to the field.  For example, if
  you specify a near query with a distance of 3, it will return matches
  when the values are within 3 words in the whole document,
  For a code example illustrating this, see the 
  
  <a href="#fqex2j" class="javascript">second example</a>
  below. </p>
  <p xmlns="http://www.w3.org/1999/xhtml">Values are determined based on words (tokens)of values of elements that are
  included in the field. Field values span all the included elements. They
  cannot span excluded elements (this is because MarkLogic Server breaks
  out of the field when it encounters the excluded element and start it again
  field when it encounters the next included element). Field
  values will also span included sibling elements.</p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    If neither "case-sensitive" nor "case-insensitive"
    is present, $text is used to determine case sensitivity.
    If $text contains no uppercase, it specifies "case-insensitive".
    If $text contains uppercase, it specifies "case-sensitive".
  </p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    If neither "diacritic-sensitive" nor "diacritic-insensitive"
    is present, $text is used to determine diacritic sensitivity.
    If $text contains no diacritics, it specifies "diacritic-insensitive".
    If $text contains diacritics, it specifies "diacritic-sensitive".
  </p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    If neither "punctuation-sensitive" nor "punctuation-insensitive"
    is present, $text is used to determine punctuation sensitivity.
    If $text contains no punctuation, it specifies "punctuation-insensitive".
    If $text contains punctuation, it specifies "punctuation-sensitive".
  </p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    If neither "whitespace-sensitive" nor "whitespace-insensitive"
    is present, the query is "whitespace-insensitive".
  </p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    If neither "wildcarded" nor "unwildcarded"
    is present, the database configuration and $text determine wildcarding.
    If the database has any wildcard indexes enabled ("three character
    searches", "two character searches", "one character searches",  or
    "trailing wildcard searches") and if $text contains either of the
    wildcard characters '?' or '*', it specifies "wildcarded".
    Otherwise it specifies "unwildcarded".
  </p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    If neither "stemmed" nor "unstemmed"
    is present, the database configuration determines stemming.
    If the database has "stemmed searches" enabled, it specifies "stemmed".
    Otherwise it specifies "unstemmed".
    If the query is a wildcarded query and also a phrase query
    (contains two or more terms), the wildcard terms in the query
    are unstemmed.
  </p>
  <p xmlns="http://www.w3.org/1999/xhtml">
    Negative "min-occurs" or "max-occurs" values will be treated as 0 and
    non-integral values will be rounded down.  An error will be raised if
    the "min-occurs" value is greater than the "max-occurs" value.
  </p>
</api:usage><api:example class="javascript"><pre xml:space="preserve" xmlns="http://www.w3.org/1999/xhtml">
var contents = xdmp.unquote(
'  &lt;Employee&gt;\n\
    &lt;name&gt;\n\
      &lt;fname&gt;Jaz&lt;/fname&gt;\n\
      &lt;mname&gt;Roy&lt;/mname&gt;\n\
      &lt;lname&gt;Smith&lt;/lname&gt;\n\
    &lt;/name&gt;\n\
  &lt;/Employee&gt;').next().value;
cts.contains(contents,
	cts.fieldValueQuery("myField","Jaz Roy Smith"));

=&gt; false, assuming the field "myField" is defined to include element
   "name" and exclude element "mname". The field must exist in the
   database against which this query is evaluated.
</pre></api:example><api:example class="javascript"><pre xml:space="preserve" xmlns="http://www.w3.org/1999/xhtml">
var contents = xdmp.unquote(
'  &lt;Employee&gt;\n\
    &lt;name&gt;\n\
      &lt;fname&gt;Jaz&lt;/fname&gt;\n\
      &lt;mname&gt;Roy&lt;/mname&gt;\n\
      &lt;lname&gt;Smith&lt;/lname&gt;\n\
    &lt;/name&gt;\n\
  &lt;/Employee&gt;').next().value;
cts.contains(contents,
	cts.fieldValueQuery("myField","Jaz Smith"));

=&gt; true, assuming the field "myField" is defined to include element
   "name" and exclude element "mname". The field must exist in
   the database against which this query is evaluated.
</pre></api:example><api:example class="javascript"><pre xml:space="preserve" xmlns="http://www.w3.org/1999/xhtml">
// In this query, the search is fully resolved in the index.

cts.search(
  cts.fieldValueQuery("myField","Jaz Smith"),
  "unfiltered")

=&gt; Returns the document which has field "myField" and a match
   with the value of the field.
</pre></api:example></api:function></api:function-page>