Bài báo này nghiên cứu bài toán khớp lệnh lấy cảm hứng từ các truy vấn trung gian ontology. Cho một tập hợp các ví dụ dương và âm $(\mathcal{A},q)$ (trong đó $\mathcal{A}$ là một ABox và $q$ là một truy vấn Boolean), bài toán đặt ra là tìm một ontology $\mathcal{O}$ sao cho $\mathcal{A} \cup \mathcal{O} \vDash q$ cho mọi ví dụ dương và $\mathcal{A} \cup \mathcal{O}\not \vDash q$ cho mọi ví dụ âm. Chúng tôi coi $\mathcal{ALC}$ và $\mathcal{ALCI}$ là các ngôn ngữ ontology, còn các truy vấn nguyên tử (AQ), truy vấn kết hợp (CQ) và hợp của chúng (UCQ) là các ngôn ngữ truy vấn. Do đó, chúng tôi cung cấp một mô tả hiệu quả về tất cả các bài toán khớp lệnh thu được và xác định độ phức tạp tính toán của việc xác định xem một ontology khớp lệnh có tồn tại hay không. Bài toán này được chứng minh là ${\scriptsize CO}NP$ đối với AQ và tất cả CQ, và $2E{\scriptsize XP}T{\scriptsize IME}$-hoàn chỉnh đối với CQ và UCQ. Kết quả này đúng với cả $\mathcal{ALC}$ và $\mathcal{ALCI}$.