- 5 minutes to read

What are Search Field Expressions?

Search Field Expressions are extraction methods that automatically pull searchable values from your integration messages. They're the engine behind Search Fields—enabling you to find, correlate, and track data across all your systems without any coding.

Think of them as data extractors:

  • A Search Field is what you search for (e.g., "Order Number")
  • A Search Field Expression is how you extract it (e.g., using XPath from XML, RegEx from EDI, JSONPath from JSON)

For example, an Order Number might appear in multiple messages across different systems with different formats (XML from SAP, EDI from suppliers, JSON from e-commerce). You can use different Search Field Expressions on each Message Type to extract the same Order Number—enabling true end-to-end tracking across your entire integration landscape.

Key Benefits:

  • 12+ built-in plugins for common formats—no coding required
  • Support any data format: XML, JSON, EDI, CSV, flat files, and more
  • Extract from anywhere: Message body, context properties (metadata), or even external databases
  • Combine expressions: Use Formula to nest multiple extraction methods
  • Test in real-time: Built-in test bench validates expressions before deployment

How it works

graph LR A[Log Event<br/>arrives] --> B{Message Type} B --> C[Search Field<br/>Expression] C -->|XPath| D[Extract from XML] C -->|RegEx| E[Extract from EDI/Text] C -->|JSONPath| F[Extract from JSON] C -->|CSV| G[Extract from CSV] C -->|Formula| H[Complex Extraction] D --> I[Search Field Value] E --> I F --> I G --> I H --> I style A fill:#e1f5ff style B fill:#fff4e1 style C fill:#ffe1f5 style I fill:#e1ffe1

The Process:

  1. Integration messages arrive at the Logging Service from any system
  2. Message Type is identified (e.g., "Purchase Order", "Invoice", "Shipment Notice")
  3. Search Field Expressions run automatically based on configuration
  4. Values are extracted using the appropriate plugin (XPath, RegEx, JSONPath, etc.)
  5. Search Field values are stored and immediately available for searching in Log Views

Order number example Example: The "Order Number" Search Field uses different expressions for XML and EDI messages.

Configuration Options:

  • Multiple expressions per Search Field: Use different extraction methods for different Message Types
  • Global option: Apply an expression to all message types (use with care—impacts performance)
  • Optional flag: Prevent warnings when values are missing (useful for optional fields)
  • Test before deploy: Use the built-in test bench to validate expressions with real data

Data sources

A Search Field Expression can retrieve values from any part of a Log Event:

  • Message Body (Payload) - The actual message content in any format (XML, JSON, EDI, CSV, flat file, etc.)
  • Context Properties (Metadata) - Key/value pairs such as headers, tracked properties, custom metadata
  • External Sources - Database lookups, enrichment from APIs (using Formula plugin with SQL lookup)

Built-in expression plugins

Nodinite includes 12 powerful Search Field Expression plugins that handle the most common integration scenarios—no coding required. Each plugin is optimized for specific data formats and use cases.

What you can do:

  • Extract values from any message format (XML, JSON, EDI, CSV, flat files)
  • Extract from context properties and metadata
  • Transform and manipulate extracted data (uppercase, lowercase, substring, replace)
  • Perform calculations (count, sum, average, min, max)
  • Look up enrichment data from SQL databases
  • Combine multiple extraction methods in complex expressions

Use Cases:

  • Extract customer numbers, order IDs, invoice numbers from any format
  • Extract filenames without paths or file extensions
  • Count order line items or calculate totals
  • Validate and transform data (convert dates, normalize formats)
  • Enrich messages with external reference data

Expression plugin reference

All plugins work with real-time testing—validate your expressions before deploying to production.

Expression Types Example: Test bench showing the XPath expression plugin extracting values from XML.

Complete Plugin List

The table below shows which plugins work with which data formats. Click any plugin name for detailed documentation and examples.

Plugin Name XML EDI/Flat File JSON Context Properties Description
XPath Extract from XML using XPath 1.0 (high performance)
XPath with RegEx Combine XPath with RegEx filtering
XPath on Wrapped XPath Extract from XML nested/encoded within XML
XPath on Message Context Apply XPath to XML stored in context properties
RegEx Pattern matching for any text format
RegEx with capturing groups Extract specific parts using capturing groups
RegEx on Message Context Apply RegEx to context property values
RegEx on Message Context with capturing groups Extract parts from context properties
JSON Path Extract from JSON using JSONPath expressions
Message Context Key Simple key-based lookup of context properties
Flat File CSV Parse CSV files with configurable delimiters
Flat File Fixed Width Extract from fixed-width/positional files
Formula Advanced: Combine any extraction method with transformations, calculations, and SQL lookups

Legend:

  • ✅ = Primary use case (optimized for this format)
  • Formula = Works with all formats and can combine multiple plugins

Note

For complex scenarios or if you need features not covered by the built-in plugins, the Formula plugin provides unlimited flexibility by allowing you to nest and combine any extraction method.


Quick start guide

Step 1: Choose Your Plugin

Step 2: Configure

  1. Create or edit a Search Field
  2. Add a Search Field Expression
  3. Select the plugin and Message Type
  4. Enter your expression (XPath, RegEx, JSONPath, etc.)

Step 3: Test

  • Use the built-in test bench to validate with real messages
  • See extracted values immediately
  • Adjust expression as needed

Step 4: Deploy

  • Save your configuration
  • Values are extracted automatically for new messages
  • Optionally re-index historical messages

Best practices

Performance:

  • Use specific plugins rather than generic ones when possible (e.g., XPath is faster than Formula with XPath)
  • Avoid the Global option unless truly needed—it processes every message
  • Test expressions with real production-sized messages

Maintainability:

  • Use descriptive Search Field names that match business terminology
  • Document complex Formula expressions with comments in your configuration notes
  • Keep expressions as simple as possible—complex nested formulas are harder to maintain

Testing:

  • Always test with real messages before deploying
  • Test edge cases: empty values, missing fields, malformed data
  • Use the Optional flag for fields that may not always be present

Next Step