Creating a short message search

After you build the short message search index, you can search it from the Documents tab. For more information on building the index, see Short message search index.

To create a short message search:

  1. Navigate to the Documents tab.
  2. Click Add Condition in the search panel to add a condition. For more information on the search panel, see Search panel.
  3. Select (Short Message Search) from the Add Condition fields list.
    The Add Condition - Select Field modal appears.
  4. Select the desired short message field from the list. For a list of all fields available for short message searches, see the Searchable fields section.
    The Filter modal appears. The data entry fields on this modal vary depending on the short message field previously selected.
  5. On the Filter modal, do the following:
    1. Choose the Operator. For more information on operators, see Defining search criteria operators.
    2. Enter or select query information, if needed.
    3. Click Apply.
  6. Optionally, you can:
    • Add additional conditions by clicking Add Condition and repeating the steps above.
    • Create logic groups to group conditions together by clicking the Add Condition drop-down arrow and selecting Logic Group. Then, drag the conditions into the logic group frames. Use the AND or OR operators to join logic groups. For more information, see Setting up search conditions.
      Conditions showing logic groups
  7. When finished entering search conditions, click Apply on the Short Message Search Conditions modal. The Short Message Search condition card is added to the Search Conditions list.
  8. Repeat the steps above to add more conditions or logic groups.
  9. Click Run Search to start the search if the Auto Run toggle is not enabled. If the toggle is enabled, the search begins automatically.
    After running a search, the Document list displays all the documents with at least one message or event matching the query conditions.
  10. Click the document Control Number in the Documents list to view it in the Viewer.

Messages containing a highlight are identified in the Viewer with a yellow highlight around the metadata RSMF search hit highlight. icon. Navigate to each one by using the Persistent Highlight navigation buttons (Persistent Highlight icons.) on the top toolbar of the Viewer. For more information on the Viewer, see Short Message Viewer and Short message coding.

If needed, you can create a saved search on the Documents list as you would any other search. For more information, see Saved search and Create a saved search.

Defining search criteria operators

There are five field types in short message search conditions:

Each field type works similarly to the standard Relativity field type of the same name, as defined below. The primary exception is long text, which uses advanced text search syntax that is similar to dtSearch. For more information on long text, see Long text operators.

For a list of all fields available for short message, see the Searchable fields section.

Long text operators

Use text queries to search for long text. This enables searching Elasticsearch indexes with a syntax similar to dtSearch.

Elasticsearch index does not support all dtSearch syntax.

Sample of Long text dialog using Message Body short message field.

The table below shows search string examples and their expected results. You may also search using the Is set or Is not set operators to check for empty or filled values.

Search string Returns RSMF documents with messages containing…
"apple pear" The exact phrase apple pear.
apple AND pear The words apple and pear.
apple OR pear Either apple or pear.
apple W/5 pear The word apple within five words of pear. The opposite is also true.
apple PRE/5 pear The word apple within five words before pear. The opposite is not true.
apple AND NOT (pear) The word apple but not the word pear.
pear* Any word beginning with pear, including the word itself. For example, pears and Pearson.
pe?r

Any word beginning with pe with a single character between that and r. For example. pear or peer.

Reserved characters and words

Similar to dtSearch, certain characters and words are reserved by the advanced text search syntax and require special handling to be searched.

  • Reserved characters: " ( ) % * ? ~ ! / \ + - & | { } [ ] ^ : < >
  • Reserved words: AND, OR, NOT, W/N, PRE/N (where "N" is a number)

To search for:

  • Reserved characters—insert a backslash (\) before them. Examples:
    • To search for The cat is in the hat!, enter The cat is in the hat\!.
    • To search for the literal phrase, The query should be W/5, enter The query should be W\/5. That is W followed by backslash (\), then forward slash (/), and finally 5.
  • Reserved words—use quotation marks around them, either individually or as part of a phrase. Example query: "Bob and Jill went to the market."
    • The word and is automatically searched because, logically, the AND operator cannot be used within a phrase.
    • To search for the word and separately, enter the query as: bob OR "and" AND jill

New syntax rules

As mentioned, the advanced text search syntax and dtSearch differ in their query requirements. Certain queries need specific criteria to be valid with the advanced syntax. These are detailed in the following list.

  • Enclose all phrases within quotation marks. If not, a syntax error results.
  • Any query containing multiple Boolean clauses must have each clause contained within parenthesis to ensure that the intended meaning of the query is clear.
    • Valid: (apple AND pear) OR (dog AND cat)
    • Invalid: apple AND pear OR dog AND cat
  • Follow the NOT operator with parenthesis containing the content to be searched. This clearly identifies the content the NOT operator is acting on.
    • Valid: apple AND NOT (pear)
    • Invalid: apple AND NOT pear

Proximity operator (W/N, PRE/N) limitations

Compared with dtSearch, there are a few limitations described below on how you can use the two proximity operators.

  • Do not use AND with proximity operators.
    • Invalid: (cat AND dog) W/7 bird
  • Do not nest proximity operators.
    • Invalid: (cat W/3 dog) W/5 bird
  • NOT cannot be used with W/N or PRE/N.
    • Invalid: cat NOT W/5 dog

Analyzer and wildcard behavior

Relativity’s short message search indexing uses Elasticsearch’s standard analyzer. This analyzer determines the rules for segmenting words into tokens, similar to the function of dtSearch Alphabet and Noise Word files. Unlike those configurations, it does not require any customization within RelativityOne.

The standard analyzer follows Unicode rules for word breaking and punctuation, typically removing punctuation marks. For instance, bite-sized would be processed as bite sized, with the word being treated as two separate tokens. There are edge cases where punctuation is indexed, especially with uncommon punctuation or foreign language text. However, the underlying rules are not consistent enough to be reliably summarized or predicted.

This may lead to overly inclusive results in the case of words with punctuation in them.

For example, bite\-sized escaping the hyphen character with a backslash, will match both bite-sized and bite sized. The hyphens are treated as whitespace in both the search term and the indexed text.

The behavior differs when using wildcards (* or ?), since search terms with wildcards are not analyzed. Search terms containing punctuation, such as hyphens, are processed exactly as they appear, with punctuation included in the search.

  • For example, bite\-siz*, with the hyphen character escaped using a backslash, will not match any entries because the escaped hyphen is searched for but is not in the index.
  • There are multiple options for working around this behavior:
    • One is to search for the word both with and without punctuation.
      • This will cover normal cases, plus any potential edge cases where the punctuation is present in the index.
      • For example, bite\-siz* AND bite siz*.
    • Another is to use the proximity operator. Example: bite W/2 siz*

The table below provides examples:

Search Term Analyzed Term Text in Document Analyzed Text in Index Match?
bite\-sized bite sized bite-sized bite sized Yes
bite sized bite sized bite-sized bite sized Yes
bite\-size* bite\-size* bite-sized bite sized No
bite W/2 size* bite W/2 size* bite-sized bite sized Yes

Fixed-length text operators

Fixed-length text values are entered using a simplified syntax relative to that of long text operators. Both single character wildcards (?) and multiple character wildcards (*) are supported, as well as escaping those characters using the backslash (\).

  • Single character example:pa?s would match on both pads and pass when using the Matches operator.
  • Multiple character example:d*ing would match on daring, dashing, and dancing.
  • Escaping example:Did the query work\? would match that sentence including the question mark.

Fixed-length fields support the following operators: Matches, Does not match, Is set, and Is not set.

Fixed-length text modal

Date operators

The following operators are available for date field types. Values should be entered in UTC rather than your local time zone.

Date modal

Operator Returns Documents Where...
Is The entered date is equal to the field value.
Is not The entered date is not equal to the field value.
Is set The field is not empty.
Is not set The field is empty.
Is before The field value is before the entered date.
Is before or on The field value is before or on the entered date.
Is after The field value is after the entered date.
Is after or on The field value is on or after the entered date.
Between The field value is between the two entered dates.

Whole number operators

The following operators are available for whole number field types.

Whole Number modal

Operator Returns Documents Where...
Is The entered number is equal to the field value.
Is not The entered number is not equal to the field value.
Is set The field is not empty.
Is not set The field is empty.
Is less than The field value is less than the entered number.
Is greater than The field value is greater than the entered number.

Yes/No operators

The following operators are available for Yes/No field types.

Yes/No modal

Operator Returns Documents Where...
Is The selected value (Yes or No) is equal to the field value.
Is not The selected value (Yes or No) is not equal to the field value. This operator covers situations where the field is either the opposite of the chosen value or not set. For example, Is not with a value of Yes would cover values of No or unset values.
Is set The field is not empty.
Is not set The field is empty.

Searchable fields

All searchable fields for short message searching.

Field name Type Explanation Example
Attachment Count Integer Number of attachments on a message. 2
Attachment Displays Fixed-Length Text Attachment filenames, including file extensions. Sample.txt
Attachment IDs Fixed-Length Text Internal IDs referring to the attachments – generally matches the filename. Sample.txt
Attachment Max Size Integer Max size of any attachments on a message. 381734829
Conversation Display Long Text Overview field that displays either the message platform or the channel and users.

Platform: Microsoft Teams

Channel Name: new-project

Conversation ID Fixed-Length Text Internal ID referring to the conversation. 2386477
Conversation Platform Fixed-Length Text Platform where the conversation took place. Slack
Conversation Type Fixed-Length Text Type of conversation, generally direct or channel. direct
Deleted Yes/No Whether or not the message was deleted. Yes
Document ID Fixed-Length Text Internal ID of a document. 1387384
Edited Yes/No If the message was edited at any time, it returns Yes for any version of the edited message, including the original. Yes
Event ID Fixed-Length Text Unique internal identifier for the event in the RSMF manifest. C1
Event Important Fixed-Length Text Message importance, generally normal or high. Normal
Event Parent Fixed-Length Text Unique internal identifier of the parent of the RSMF event, such as the thread that a message belongs to. B1
Event Type Fixed-Length Text Type of event, generally message, join, disclaimer, or leave. message
Message Body Long Text The body of the individual message. This is an example of message body text.
Notes Long Text Message-level coding notes made in the Notes field of the Coding Layout. This is an example of note text.
Privileged Yes/No Whether or not a message was coded as Privileged in the message-level coding layout. Yes
Reaction Participants Display Long Text Names of conversation participants who left reactions on the message. John Smith
Reaction Total Count Across Types Integer Total reactions left across a message. 5
Reaction Types Fixed-Length Text Type of reactions left on a messages. slightly_smiling_face
Reaction Types Count Integer Number of reaction types left on a message. 3
Responsive Yes/No Whether or not a message was coded as Responsive in the message-level coding layout. Yes
Sender Account ID Fixed-Length Text Primary ID distinguishing the sender in the application, such as a phone number or social media handle. 1-555-921-4560
Sender Display Long Text Display name of the sender. John Smith
Sender Email Fixed-Length Text Email address of the sender, if applicable to that platform. john.smith@gmail.com
Sender ID Fixed-Length Text Unique internal identifier for the sender in the RSMF manifest. P1
Timestamp Date Date and time that the message was sent. 5/1/2025 1:00 AM