Documentation Index
Fetch the complete documentation index at: https://docs.jinba.io/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Checker Tools provide comprehensive data validation and quality assurance capabilities. These tools help ensure data integrity, compliance with business rules, and automated quality control in your workflows.
Key Features
CHECKER_CHECK_BY_JSON
- Validate text against JSON-defined rules
- Flexible rule configuration
- Detailed validation results with reasons
- Support for multiple validation criteria
CHECKLIST
- File-based validation using CSV rules
- Batch validation capabilities
- Structured validation reporting
- Integration with external rule sets
JINBA_MODULES_CHECKER_V2
- Advanced validation using JSON rule files
- Enhanced rule processing
- Improved performance and accuracy
- Version 2 with additional features
Authentication
No authentication required for checker tools.
Example: Document Validation
- id: validate_document
name: validate_document
tool: CHECKER_CHECK_BY_JSON
input:
- name: text
value: "{{steps.extract_document.result.content}}"
- name: task_name
value: "Contract Compliance Check"
- name: description
value: "Validate contract document against legal requirements"
- name: rules
value: |
[
{
"rule": "Must contain signature section",
"pattern": "signature|sign here|executed by",
"required": true
},
{
"rule": "Must include termination clause",
"pattern": "termination|end of agreement|expire",
"required": true
},
{
"rule": "Should specify payment terms",
"pattern": "payment|invoice|billing|due",
"required": false
}
]
Example: Data Quality Validation
- id: extract_data
name: extract_data
tool: EXCEL_GET_ROWS
input:
- name: file_url
value: "{{steps.input_file.result.file_url}}"
- name: range
value: "A1:E100"
- id: validate_data_quality
name: validate_data_quality
tool: CHECKER_CHECK_BY_JSON
input:
- name: text
value: "{{steps.extract_data.result.content | join('\n')}}"
- name: task_name
value: "Customer Data Validation"
- name: rules
value: |
[
{
"rule": "Email format validation",
"pattern": "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}",
"required": true
},
{
"rule": "Phone number format",
"pattern": "\\+?[1-9]\\d{1,14}",
"required": true
},
{
"rule": "Complete address information",
"pattern": "street|avenue|road|drive|lane",
"required": false
}
]
- id: process_validation_results
name: process_validation_results
tool: PYTHON_SANDBOX_RUN
input:
- name: code
value: |
import json
validation_results = {{steps.validate_data_quality.result.results}}
# Count validation status
accepted = sum(1 for r in validation_results if r['status'] == 'accepted')
rejected = sum(1 for r in validation_results if r['status'] == 'rejected')
pending = sum(1 for r in validation_results if r['status'] == 'pending')
print(f"Validation Summary:")
print(f"✅ Accepted: {accepted}")
print(f"❌ Rejected: {rejected}")
print(f"⏳ Pending: {pending}")
# List rejected items with reasons
if rejected > 0:
print("\nRejected Items:")
for result in validation_results:
if result['status'] == 'rejected':
print(f"- {result['rule']}: {result['reason']}")
Example: Advanced File Validation
- id: upload_rules_file
name: upload_rules_file
tool: INPUT_FILE
input:
- name: description
value: "Upload validation rules CSV file"
- id: validate_with_checklist
name: validate_with_checklist
tool: CHECKLIST
input:
- name: file_url
value: "{{steps.input_data.result.file_url}}"
- name: rules_file
value: "{{steps.upload_rules_file.result.file_url}}"
- name: task_name
value: "Batch Data Validation"
- id: advanced_validation
name: advanced_validation
tool: JINBA_MODULES_CHECKER_V2
input:
- name: target_file
value: "{{steps.input_data.result.file_url}}"
- name: task
value: "Advanced Data Validation"
- name: description
value: "Comprehensive validation using enhanced checker v2"
- name: rules
value: |
[
{
"rule": "Email format validation",
"pattern": "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}",
"required": true,
"uniqueId": "email_check"
},
{
"rule": "Age range validation",
"pattern": "^(1[8-9]|[2-9][0-9]|1[01][0-9]|120)$",
"required": true,
"uniqueId": "age_check"
},
{
"rule": "Country code validation",
"pattern": "(US|UK|CA|AU|JP)",
"required": true,
"uniqueId": "country_check"
}
]
- name: additionalDataSchema
value: |
{
"extractedData": {
"type": "object",
"properties": {
"email": {"type": "string"},
"age": {"type": "number"},
"country": {"type": "string"}
}
}
}
Validation Rule Types
Pattern-based Rules
- Regex patterns: Use regular expressions for complex validation
- Text matching: Simple text presence or absence checks
- Format validation: Email, phone, URL, date formats
Structural Rules
- Required fields: Ensure mandatory data is present
- Data types: Validate numeric, date, boolean data
- Range validation: Min/max values, length constraints
Business Rules
- Custom logic: Complex business rule validation
- Cross-field validation: Rules that depend on multiple fields
- Conditional rules: Rules that apply under certain conditions
Validation Results
Each validation returns structured results:
{
"rule": "Email format validation",
"status": "accepted|rejected|pending",
"range": "Character range if applicable",
"reason": "Detailed explanation of validation result"
}
Use Cases
- Data Quality Assurance: Validate imported data quality
- Compliance Checking: Ensure documents meet regulatory requirements
- Form Validation: Validate user-submitted forms and applications
- Content Moderation: Check content against community guidelines
- Business Rule Enforcement: Ensure data meets business criteria
- Import Validation: Validate data before importing into systems
- Document Review: Automated document compliance checking