| name | textual attribute grounding |
| description | Use this skill when the requested information is not in its own column but is instead ‘hidden’ inside a text block like a description, remark, or bio field. Trigger it for requests like “look inside the notes”, “the value is part of the description”, “extract the price from the comments”, or “the schema is semi-structured and I need to parse the text.” Example trigger: “The budget isn’t a column, it’s just mentioned in the project summary.” Example trigger: “I need to query values that are written as sentences within a long-form text column.” |
Skill: textual attribute grounding
1. Capability Definition & Real Case
- Professional Definition: The capability to identify and retrieve specific attributes that are encapsulated within semi-structured or unstructured text columns rather than being isolated in dedicated, typed relational columns. This requires the agent to combine schema item grounding with the generation of SQL string manipulation and pattern-matching functions (e.g., LIKE, SUBSTR, CAST) to extract and process values as if they were structured fields.
- Dimension Hierarchy: Environment Grounding->Retrieval and Alignment->textual attribute grounding
Real Case
[Case 1]
- Initial Environment: A relational database where the 'supplier' table contains s_suppkey, s_name, and s_address, but lacks a dedicated numeric 's_acctbal' column. Instead, a column named 'description' contains free-text entries such as 'Supplier#000004248 has an account balance of 7129.18 and is noted for...'
- Real Question: Find the supply key of the top ten suppliers with the most account balance, and list the supply key along with the account balance in descending order of account balance.
- Real Trajectory: 1. Inspect schema and notice s_acctbal is missing. 2. Read the 'description' column to locate the embedded balance information. 3. Identify the consistent prefix 'account balance of ' within the string. 4. Write a query that extracts the numeric portion via string functions and casts it to a literal for sorting.
- Real Answer: SELECT s_suppkey, CAST(SUBSTR(description, INSTR(description, 'account balance of ') + 19) AS FLOAT) AS balance FROM supplier ORDER BY balance DESC LIMIT 10
- Why this demonstrates the capability: This case tests the transition from a structured intent to a semi-structured source. The agent must realize the target column is 'description' and use non-trivial string arithmetic (INSTR + SUBSTR) and type casting to provide a sorted result that a simple SELECT cannot produce.
[Case 2]
- Initial Environment: A biomedical database with a table called 'drug_performance'. The 'citation' column is missing; however, a 'clinical_notes' column contains sentences like 'As per the study (JCO.2020.V18), Alectinib demonstrated high efficacy...'
- Real Question: Which reference is cited for the clinical data on Alectinib in the table?
- Real Trajectory: 1. Ground the 'drug_performance' table and locate the 'clinical_notes' field. 2. Filter for rows where the text mentions 'Alectinib'. 3. Search for bracketed or parenthetical references within the retrieved text fragments. 4. Extract the citation string using pattern matching.
- Real Answer: SELECT clinical_notes FROM drug_performance WHERE clinical_notes LIKE '%Alectinib%' AND clinical_notes LIKE '%(%)%'
- Why this demonstrates the capability: This demonstrates textual attribute grounding by requiring the agent to find a specific 'hidden' entity (a citation) within a prose column. It isolates the challenge of recognizing that information is embedded rather than missing from the database entirely.
Pipeline Execution Instructions
To synthesize data for this capability, you must strictly follow a 3-phase pipeline. Do not hallucinate steps. Read the corresponding reference file for each phase sequentially:
-
Phase 1: Environment Exploration
Read the exploration guidelines to discover raw knowledge seeds:
references/EXPLORATION.md
-
Phase 2: Trajectory Selection
Once Phase 1 is complete, read the selection criteria to evaluate the trajectory:
references/SELECTION.md
-
Phase 3: Data Synthesis
Once a trajectory passes Phase 2, read the synthesis instructions to generate the final data:
references/SYNTHESIS.md