## org.apache.lucene.search
Class Explanation

    java.lang.Object
      org.apache.lucene.search.Explanation

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  ComplexExplanation

    public class Explanation

extends Object
implements Serializable

Expert: Describes the score computation for document and query.

See Also:
  Serialized Form

Nested Class Summary
`static class` `Explanation.IDFExplanation` Small Util class used to pass both an idf factor as well as an explanation for that factor.

Constructor Summary
`Explanation()`
`Explanation(float value, String description)`

Method Summary
`void` `addDetail(Explanation detail)` Adds a sub-node to this explanation node.
`String` `getDescription()` A description of this explanation node.
`Explanation[]` `getDetails()` The sub-nodes of this explanation node.
`protected String` `getSummary()` A short one line summary which should contain all high level information about this Explanation, without the "Details"
`float` `getValue()` The value assigned to this explanation node.
`boolean` `isMatch()` Indicates whether or not this Explanation models a good match.
`void` `setDescription(String description)` Sets the description of this explanation node.
`void` `setValue(float value)` Sets the value assigned to this explanation node.
`String` `toHtml()` Render an explanation as HTML.
`String` `toString()` Render an explanation as text.
`protected String` `toString(int depth)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Explanation

    public Explanation()

### Explanation

    public Explanation(float value,
                       String description)

Method Detail

### isMatch

    public boolean isMatch()

  Indicates whether or not this Explanation models a good match.

  By default, an Explanation represents a "match" if the value is positive.

  See Also:
    `getValue()`

### getValue

    public float getValue()

  The value assigned to this explanation node.

### setValue

    public void setValue(float value)

  Sets the value assigned to this explanation node.

### getDescription

    public String getDescription()

  A description of this explanation node.

### setDescription

    public void setDescription(String description)

  Sets the description of this explanation node.

### getSummary

    protected String getSummary()

  A short one line summary which should contain all high level information about this Explanation, without the "Details"

### getDetails

    public Explanation[] getDetails()

  The sub-nodes of this explanation node.

### addDetail

    public void addDetail(Explanation detail)

  Adds a sub-node to this explanation node.

### toString

    public String toString()

  Render an explanation as text.

  Overrides:
    `toString` in class `Object`

### toString

    protected String toString(int depth)

### toHtml

    public String toHtml()

  Render an explanation as HTML.