Tài liệu Một cách tiếp cận đối với phép dịch các câu truy vấn ngôn ngữ tự nhiên thành dạng logic. ppt

9 464 0
Tài liệu Một cách tiếp cận đối với phép dịch các câu truy vấn ngôn ngữ tự nhiên thành dạng logic. ppt

Đang tải... (xem toàn văn)

Thông tin tài liệu

Ta . p ch´ı Tin ho . c v`a Diˆe ` u khiˆe ’ n ho . c, T.21, S.3 (2005), 271—279 M ˆ O . T C ´ ACH TI ˆ E ´ P C ˆ A . N D ˆ O ´ I V ´ O . I PH ´ EP DI . CH C ´ AC C ˆ AU TRUY V ˆ A ´ N NG ˆ ON NG ˜ U . TU . . NHI ˆ EN TH ` ANH DA . NG LOGIC NGUY ˆ E ˜ N KIM ANH Khoa Cˆong nghˆe . thˆong tin, Tru . `o . ng Da . i ho . c B´ach khoa H`a Nˆo . i Abstract. For most natual language processing tasks, an interpreter that translates the natural language sentences into a semantic representation is significantly more useful than a parser that simply recognizes syntactically well-formed strings. In this paper, we focus on the task of translating database queries directly into an executable logical form. T´om t˘a ´ t. Dˆo ´ i v´o . i hˆa ` u hˆe ´ t c´ac nhiˆe . m vu . xu . ’ l´y ngˆon ng˜u . tu . . nhiˆen, mˆo . t bˆo . thˆong di . ch nh˘a ` m di . ch c´ac cˆau ngˆon ng˜u . tu . . nhiˆen th`anh mˆo . t biˆe ’ u diˆe ˜ n ng˜u . ngh˜ıa c´o ´ıch ho . n mˆo . t bˆo . phˆan t´ıch c´u ph´ap chı ’ do . n gia ’ n nhˆa . n biˆe ´ t vˆe ` c´u ph´ap c´ac xˆau dˆa ` u v`ao du . o . . c thiˆe ´ t lˆa . p tˆo ´ t. Trong b`ai b´ao n`ay, ch´ung tˆoi tˆa . p trung v`ao nhiˆe . m vu . di . ch c´ac cˆau truy vˆa ´ n co . so . ’ d˜u . liˆe . u th`anh mˆo . t da . ng logic c´o thˆe ’ thu . . c hiˆe . n du . o . . c. 1. GI ´ O . I THI ˆ E . U Gi´up m´ay t´ınh dˆe ˜ su . ’ du . ng ho . n, gˆa ` n g˜ui v´o . i con ngu . `o . i ho . n l`a diˆe ` u m`a c´ac nh`a lˆa . p tr`ınh v`a nghiˆen c´u . u m´ay t´ınh d˜a, dang v`a s˜e tiˆe ´ p tu . c cˆo ´ g˘a ´ ng thu . . c hiˆe . n. Ngˆon ng˜u . n´oi l`a mˆo . t trong nh˜u . ng c´ach giao tiˆe ´ p thˆong du . ng v`a tu . . nhiˆen nhˆa ´ t cu ’ a con ngu . `o . i. Dˆe ’ gi´up m´ay t´ınh giao tiˆe ´ p du . o . . c v´o . i con ngu . `o . i thˆong qua ngˆon ng˜u . n´oi, ch´ung ta cˆa ` n c´o c´ac th`anh phˆa ` n xu . ’ l´y ngˆon ng˜u . tu . . nhiˆen (NLP). Mu . c d´ıch ch´ınh cu ’ a c´ac th`anh phˆa ` n NLP n`ay l`a t`u . mˆo . t cˆau tiˆe ´ ng Viˆe . t (ho˘a . c mˆo . t ngˆon ng˜u . bˆa ´ t k`y) s˜e du . o . . c thˆong di . ch bo . ’ i m´ay t´ınh v`a mˆo . t h`anh dˆo . ng tu . o . ng ´u . ng s˜e du . o . . c thu . . c hiˆe . n. Do t´ınh mˆa . p m`o . , da ngh˜ıa trong ngˆon ng˜u . n´oi nˆen cho dˆe ´ n nay, c´ac hˆe . thˆo ´ ng NLP xˆay du . . ng du . o . . c dˆe ` u bi . gi´o . i ha . n trong mˆo . t miˆe ` n nho ’ v`a chı ’ thˆong di . ch du . o . . c mˆo . t sˆo ´ loa . i cˆau nhˆa ´ t di . nh. Mˆo . t l˜ınh vu . . c m`a c´ac hˆe . thˆo ´ ng NLP c´o thˆe ’ ´ap du . ng hiˆe . u qua ’ l`a c´ac hˆe . truy vˆa ´ n co . so . ’ d˜u . liˆe . u (CSDL). L´y do l`a c´ac CSDL thu . `o . ng phu ’ mˆo . t miˆe ` n du ’ nho ’ nˆen nh˜u . ng cˆau truy vˆa ´ n tiˆe ´ ng Viˆe . t vˆe ` d˜u . liˆe . u c´o thˆe ’ phˆan t´ıch du . o . . c bo . ’ i mˆo . t hˆe . thˆo ´ ng NLP. Dˆo ´ i v´o . i hˆa ` u hˆe ´ t c´ac nhiˆe . m vu . xu . ’ l´y ngˆon ng˜u . tu . . nhiˆen, mˆo . t bˆo . thˆong di . ch nh˘a ` m di . ch c´ac cˆau dˆa ` u v`ao th`anh mˆo . t biˆe ’ u diˆe ˜ n ng˜u . ngh˜ıa c´o ´ıch ho . n mˆo . t bˆo . phˆan t´ıch c´u ph´ap chı ’ do . n gia ’ n nhˆa . n biˆe ´ t vˆe ` c´u ph´ap c´ac xˆau dˆa ` u v`ao du . o . . c thiˆe ´ t lˆa . p tˆo ´ t. Tuy nhiˆen, theo ch´ung tˆoi, mˆo . t sˆo ´ c´ach tiˆe ´ p cˆa . n di . ch c´ac cˆau truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen th`anh da . ng logic trong [2] v`a [7] chu . a khai th´ac tˆo ´ t c´ac tri th´u . c miˆe ` n, cu . thˆe ’ l`a c´ac ng˜u . ngh˜ıa du . o . . c biˆe ´ t vˆe ` CSDL m`a ch´ung ta dang xem x´et khi gia ’ i quyˆe ´ t c´ac nhˆa . p nh˘a ` ng v`a kiˆe ’ m tra t´ınh nhˆa ´ t qu´an cu ’ a c´ac cˆau truy vˆa ´ n dˆa ` u v`ao. B`ai b´ao n`ay dˆe ` cˆa . p dˆe ´ n mˆo . t c´ach tiˆe ´ p cˆa . n cho ph´ep di . ch c´ac cˆau truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen tiˆe ´ ng Viˆe . t th`anh mˆo . t da . ng logic c´o thˆe ’ thu . . c hiˆe . n du . o . . c. Nˆo . i dung b`ai b´ao du . o . . c tr`ınh b`ay nhu . sau: phˆa ` n 2 mo . ’ dˆa ` u v´o . i mˆo . t sˆo ´ kh´ai niˆe . m co . ba ’ n liˆen quan dˆe ´ n viˆe . c x´ac di . nh v`a biˆe ’ u diˆe ˜ n ng˜u . ngh˜ıa cu ’ a 272 NGUY ˆ E ˜ N KIM ANH CSDL quan hˆe . . Mu . c 3 tr`ınh b`ay mˆo . t kiˆe ´ n tr´uc ph´ac tha ’ o cu ’ a hˆe . thˆo ´ ng l`am co . so . ’ cho ph´ep di . ch c´ac cˆau truy vˆa ´ n tu . . nhiˆen. Mu . c 4 tr`ınh b`ay c´ac bu . ´o . c ch´ınh dˆe ’ di . ch c´ac cˆau truy vˆa ´ n tu . . nhiˆen tiˆe ´ ng Viˆe . t th`anh da . ng logic c´o thˆe ’ thu . . c hiˆe . n du . o . . c. Cuˆo ´ i c`ung, Mu . c 5 tr`ınh b`ay mˆo . t sˆo ´ v´ı du . minh ho . a v`a Mu . c 6 du . a ra mˆo . t v`ai d´anh gi´a v`a kˆe ´ t luˆa . n. 2. M ˆ O . T S ˆ O ´ KH ´ AI NI ˆ E . M CO . BA ’ N 2.1. So . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t Trong thu . . c tˆe ´ , khi thiˆe ´ t kˆe ´ co . so . ’ d˜u . liˆe . u quan hˆe . cho mˆo . t x´ı nghiˆe . p, ch´ung ta thu . `o . ng su . ’ du . ng mˆo . t so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t biˆe ’ u diˆe ˜ n cˆa ´ u tr´uc logic tˆo ’ ng thˆe ’ cu ’ a CSDL dˆo ´ i v´o . i dˆo ´ i tu . o . . ng n`ay. C´ac th`anh phˆa ` n co . ba ’ n cu ’ a mˆo . t so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t l`a c´ac thu . . c thˆe ’ , c´ac thuˆo . c t´ınh v`a c´ac liˆen kˆe ´ t. Mˆo . t tˆa . p thu . . c thˆe ’ (go . i do . n gia ’ n l`a thu . . c thˆe ’ ) k´y hiˆe . u mˆo . t tˆa . p c´ac x´ı nghiˆe . p c´o c´ac t´ınh chˆa ´ t chung v`a du . o . . c g´an mˆo . t tˆen go . i l`a mˆo . t danh t`u . . C´ac tˆa . p thu . . c thˆe ’ du . o . . c x´ac di . nh thˆong qua mˆo . t tˆa . p c´ac t´ınh chˆa ´ t, du . o . . c go . i l`a c´ac thuˆo . c t´ınh, dˆe ’ pha ’ n ´anh c´ac d˘a . c tru . ng cu ’ a tˆa . p thu . . c thˆe ’ . Mˆo ˜ i mˆo . t thuˆo . c t´ınh du . o . . c g´an mˆo . t tˆen go . i c˜ung l`a mˆo . t danh t`u . . Mˆo . t tˆa . p liˆen kˆe ´ t (go . i do . n gia ’ n l`a liˆen kˆe ´ t) k´y hiˆe . u mˆo . t tˆa . p c´ac bˆo . m`a mˆo ˜ i bˆo . biˆe ’ u diˆe ˜ n mˆo . t su . . kˆe ´ t ho . . p gi˜u . a c´ac thu . . c thˆe ’ du . o . . c k´eo theo bo . ’ i liˆen kˆe ´ t n`ay. Mˆo ˜ i liˆen kˆe ´ t du . o . . c g´an mˆo . t tˆen go . i l`a mˆo . t dˆo . ng t`u . . Thˆong thu . `o . ng, ng˜u . ngh˜ıa cu ’ a c´ac thu . . c thˆe ’ , c´ac thuˆo . c t´ınh v`a c´ac liˆen kˆe ´ t d˜a phˆa ` n n`ao du . o . . c pha ’ n ´anh thˆong qua tˆen go . i cu ’ a ch´ung. Do vˆa . y, so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t dˆo ´ i v´o . i mˆo . t x´ı nghiˆe . p c´o mˆo . t ´y ngh˜ıa quan tro . ng nhˆa ´ t di . nh dˆo ´ i v´o . i bˆo . phˆan t´ıch c´u ph´ap c˜ung nhu . bˆo . thˆong di . ch ng˜u . ngh˜ıa dˆe ’ hiˆe ’ u ngh˜ıa cu ’ a c´ac cˆau truy vˆa ´ n dˆo ´ i v´o . i CSDL cu ’ a x´ı nghiˆe . p n`ay v`a dˆo ´ i v´o . i ch´ung tˆoi, so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t dˆo ´ i v´o . i mˆo . t x´ı nghiˆe . p c´o thˆe ’ du . o . . c xem nhu . l`a nh˜u . ng tri th´u . c vˆe ` ng˜u . ngh˜ıa d˜a du . o . . c biˆe ´ t vˆe ` CSDL m`a ch´ung ta dang xem x´et. 2.2. Logic mˆo ta ’ CIFR [4] C´ac logic mˆo ta ’ l`a c´ac hˆe . h`ınh th´u . c cho ph´ep biˆe ’ u diˆe ˜ n v`a lˆa . p luˆa . n trˆen c´ac l´o . p dˆo ´ i tu . o . . ng ph´u . c ta . p ( du . o . . c go . i l`a c´ac kh´ai niˆe . m) v`a c´ac mˆo ´ i quan hˆe . gi˜u . a ch´ung (thu . `o . ng du . o . . c biˆe ’ u diˆe ˜ n bo . ’ i c´ac quan hˆe . hai ngˆoi v`a c˜ung c`on du . o . . c go . i l`a c´ac vai tr`o). Mˆo . t co . so . ’ tri th´u . c cu ’ a logic mˆo ta ’ gˆo ` m c´o hai th`anh phˆa ` n: + TBoxes ch´u . a mˆo . t tˆa . p c´ac mˆo ta ’ kh´ai niˆe . m v`a biˆe ’ u diˆe ˜ n cho so . dˆo ` chung mˆo h`ınh h´oa miˆe ` n quan tˆam. + ABoxes l`a mˆo . t su . . thˆe ’ hiˆe . n bˆo . phˆa . n cu ’ a so . dˆo ` n`ay bao gˆo ` m mˆo . t tˆa . p c´ac kh˘a ’ ng di . nh liˆen quan dˆe ´ n c´ac c´a thˆe ’ cu ’ a c´ac l´o . p hay c´ac c´a thˆe ’ c´o quan hˆe . v´o . i nhau thˆong qua c´ac mˆo ´ i quan hˆe . gi˜u . a ch´ung. CIFR l`a mˆo . t su . . mo . ’ rˆo . ng kh´a tu . . nhiˆen cu ’ a CIF v´o . i mu . c d´ıch biˆe ’ u diˆe ˜ n tru . . c tiˆe ´ p c´ac quan hˆe . n - ngˆoi m`a d˘a . c biˆe . t c´o ´y ngh˜ıa trong ng˜u . ca ’ nh cu ’ a ch´ung tˆoi, biˆe ’ u diˆe ˜ n c´ac truy vˆa ´ n dˆo ´ i v´o . i mˆo . t co . so . ’ d˜u . liˆe . u quan hˆe . . Gia ’ su . ’ ch´ung ta c´o mˆo . t tˆa . p h˜u . u ha . n c´ac kh´ai niˆe . m nguyˆen tˆo ´ k´y hiˆe . u bo . ’ i A, c´ac vai tr`o nguyˆen tˆo ´ k´y hiˆe . u bo . ’ i P v`a c´ac quan hˆe . n -ngˆoi k´y hiˆe . u bo . ’ i R R R . Ch´ung tˆoi su . ’ du . ng R k´y hiˆe . u c´ac vai tr`o t`uy ´y, C k´y hiˆe . u c´ac kh´ai niˆe . m t`uy ´y v`a T l`a kh´ai niˆe . m dı ’ nh, ⊥ l`a kh´ai niˆe . m d´ay, Π l`a ph´ep giao v`a  l`a ph´ep ho . . p. C´ac kh´ai niˆe . m v`a vai tr`o du . o . . c xˆay du . . ng ph`u ho . . p v´o . i c´u ph´ap sau: C ← T |⊥|A|C 1  C 2 |C 1  C 2 |¬C|∀R.C|∃R.C|( 1P )|( 1P − ), |( 1R[U ])∀R[U ].T 1 : C 1 , , T m : C m |∃R[U ].T 1 : C 1 , , T m : C m , M ˆ O . T C ´ ACH TI ˆ E ´ P C ˆ A . N D ˆ O ´ I V ´ O . I PH ´ EP DI . CH 273 R ← P |R[U, U  ]|R 1  R 2 |R 1 ◦ R 2 |R − |id(C). Ng˜u . ngh˜ıa cu ’ a CIFR, nhu . thˆong thu . `o . ng, du . o . . c cho thˆong qua h`am diˆe ˜ n di . ch I = (∆ I,.I , ) . D˘a . c biˆe . t, nˆe ´ u R l`a mˆo . t quan hˆe . n -ngˆoi m`a tˆa . p c´ac r -vai tr`o cu ’ a n´o l`a rol (R) = {U 1 , , U n } th`ı R I l`a mˆo . t tˆa . p c´ac bˆo . du . o . . c g´an nh˜an c´o da . ng U 1 : d 1 , , U n : d n , o . ’ dˆay d 1 , , d n ∈ ∆ I . Ch´ung ta viˆe ´ t r[U ] k´y hiˆe . u gi´a tri . du . o . . c kˆe ´ t ho . . p v´o . i U -th`anh phˆa ` n cu ’ a bˆo . r. C´ac cˆa ´ u tr´uc m´o . i du . o . . c diˆe ˜ n di . ch nhu . sau: R[U ] I = {(d, r) ∈ ∆ I × R I |d = r[U]} R[U, U  ] I = {(d, d) ∈ ∆ I × ∆ I |∃r ∈ R I .d = r[U ] ∧ d  = r[U  ]} ( 1R[U ]) I = {d ∈ ∆ I |ton tai nhieu nhat mot r ∈ R I |sao cho r[U] = d}, (∀R[U ])T 1 : C 1 , , T m : C m ) I = {d ∈ ∆ I |∀r ∈ R I .r[U ] = d → (r[T 1 ] ∈ C I 1 , , r[T m ] ∈ C I m )}, (∃R[U ])T 1 : C 1 , , T m : C m ) I = {d ∈ ∆ I |∃r ∈ R I .r[U ] = d ∧ r[T 1 ] ∈ C I 1 ∧, , ∧r[T m ] ∈ C I m )}. CIFR-TBoxes du . o . . c di . nh ngh˜ıa l`a mˆo . t tˆa . p h˜u . u ha . n c´ac kh˘a ’ ng di . nh bao h`am C 1 ⊆ C 2 , o . ’ dˆay C 1 , C 2 l`a c´ac kh´ai niˆe . m t`uy ´y cu ’ a CIFR. CIFR-ABoxes du . o . . c di . nh ngh˜ıa l`a mˆo . t tˆa . p h˜u . u ha . n c´ac kh˘a ’ ng di . nh A(a) v´o . i a l`a mˆo . t thˆe ’ hiˆe . n cu ’ a kh´ai niˆe . m nguyˆen tˆo ´ A , c´ac kh˘a ’ ng di . nh P (a, b) v´o . i (a, b) l`a mˆo . t thˆe ’ hiˆe . n cu ’ a vai tr`o nguyˆen tˆo ´ P v`a c´ac kh˘a ’ ng di . nh R(U 1 : d 1 , , U n : d n ) v´o . i U 1 : d 1 , , U n : d n . l`a mˆo . t thˆe ’ hiˆe . n cu ’ a quan hˆe . n -ngˆoi R. T´ınh tho ’ a m˜an cu ’ a kh´ai niˆe . m c˜ung nhu . ph´ep k´eo theo logic trong CIFR-TBoxes du . o . . c di . nh ngh˜ıa nhu . thˆong thu . `o . ng nˆen ch´ung tˆoi khˆong dˆe ` cˆa . p dˆe ´ n trong phˆa ` n n`ay n˜u . a. 3. KI ˆ E ´ N TR ´ UC H ˆ E . TH ˆ O ´ NG Bộ phân tích cú pháp Từ điển từ vựng và các luật cú pháp Bộ dịch LQL thành SQL Bộ thông dịch ngữ nghĩa Sơ đồ CSDL quan hệ và các ràng buộc toàn vẹn Từ điển ngữ nghĩa Bộ sinh câu trả lời DBMS quan hệ CSDL quan hệ Trả lời Cây cú pháp Truy vấn dạng logic Truy vấn SQL Kết quả truy vấn Câu truy vấn ngôn ngữ tự nhiên Các module phụ thuộc miền Bộ phân tích cú pháp Từ điển từ vựng và các luật cú pháp Bộ dịch LQL thành SQL Bộ thông dịch ngữ nghĩa Sơ đồ CSDL quan hệ và các ràng buộc toàn vẹn Từ điển ngữ nghĩa Bộ sinh câu trả lời DBMS quan hệ CSDL quan hệ Trả lời Cây cú pháp Truy vấn dạng logic Truy vấn SQL Kết quả truy vấn Câu truy vấn ngôn ngữ tự nhiên Các module phụ thuộc miền H`ınh 1. Kiˆe ´ n tr´uc hˆe . thˆo ´ ng 274 NGUY ˆ E ˜ N KIM ANH Trong phˆa ` n n`ay, ch´ung tˆoi s˜e tr`ınh b`ay mˆo . t kiˆe ´ n tr´uc ph´ac tha ’ o dˆo ´ i v´o . i hˆe . truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen v`a mˆo . t sˆo ´ phˆan t´ıch liˆen quan dˆe ´ n ph´ep di . ch c´ac cˆau truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen th`anh da . ng logic. Theo kiˆe ´ n tr´uc trong H`ınh 1, cˆau truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen tru . ´o . c tiˆen du . o . . c phˆan t´ıch bo . ’ i bˆo . phˆan t´ıch c´u ph´ap. Bˆo . phˆan t´ıch c´u ph´ap tham chiˆe ´ u dˆe ´ n t`u . diˆe ’ n t`u . vu . . ng dˆe ’ phˆan t´ach c´ac t`u . c´o ngh˜ıa trong cˆau truy vˆa ´ n tu . . nhiˆen, x´ac di . nh loa . i t`u . v`a t`u . ng bu . ´o . c ta . o nˆen cˆay c´u ph´ap dˆo ´ i v´o . i cˆau truy vˆa ´ n thˆong qua mˆo . t tˆa . p c´ac luˆa . t c´u ph´ap. Tiˆe ´ p sau d´o, cˆay phˆan t´ıch c´u ph´ap kˆe ´ t qua ’ du . o . . c xu . ’ l´y bo . ’ i bˆo . thˆong di . ch ng˜u . ngh˜ıa dˆe ’ hiˆe ’ u ngh˜ıa cu ’ a cˆau truy vˆa ´ n v`a sinh ra cˆau truy vˆa ´ n da . ng logic. Ngˆon ng˜u . du . o . . c lu . . a cho . n dˆe ’ biˆe ’ u diˆe ˜ n c´ac cˆau truy vˆa ´ n logic pha ’ i c´o kha ’ n˘ang mˆo ta ’ hay di . nh ngh˜ıa du . o . . c c´ac t´ınh chˆa ´ t hay c´ac diˆe ` u kiˆe . n tr´ıch r´ut du . o . . c t`u . cˆau truy vˆa ´ n dˆa ` u v`ao. Ch´ung tˆoi dˆe ` nghi . su . ’ du . ng mˆo . t logic mˆo ta ’ nhu . mˆo . t ngˆon ng˜u . trung gian dˆe ’ biˆe ’ u diˆe ˜ n c´ac truy vˆa ´ n logic du . ´o . i da . ng mˆo . t biˆe ’ u th´u . c logic mˆo ta ’ . Tiˆe ´ p theo, cˆau truy vˆa ´ n logic n`ay s˜e du . o . . c di . ch th`anh mˆo . t truy vˆa ´ n SQL m`a c´o thˆe ’ du . o . . c thu . . c hiˆe . n bo . ’ i mˆo . t phˆa ` n mˆe ` m hˆe . qua ’ n tri . CSDL quan hˆe . n`ao d´o c´o hˆo ˜ tro . . SQL. Bˆo . sinh cˆau tra ’ l`o . i su . ’ du . ng c´ac kˆe ´ t qua ’ cu ’ a truy vˆa ´ n SQL dˆe ’ du . a ra cˆau tra ’ l`o . i cho ngu . `o . i su . ’ du . ng. Dˆe ’ gi´up cho bˆo . phˆan t´ıch c´u ph´ap c´o thˆe ’ ta . o ra du . o . . c cˆay phˆan t´ıch c´u ph´ap dˆo ´ i v´o . i cˆau truy vˆa ´ n dˆa ` u v`ao, t`u . diˆe ’ n t`u . vu . . ng cu ’ a hˆe . cˆa ` n pha ’ i liˆe . t kˆe dˆa ` y du ’ tˆa ´ t ca ’ c´ac da . ng t`u . c´o thˆe ’ xuˆa ´ t hiˆe . n trong c´ac cˆau truy vˆa ´ n cu ’ a ngu . `o . i su . ’ du . ng. Do vˆa . y, t`u . diˆe ’ n t`u . vu . . ng pha ’ i ch´u . a tˆa ´ t ca ’ c´ac thˆong tin du . o . . c biˆe ´ t vˆe ` CSDL quan hˆe . nhu . tˆen c´ac thu . . c thˆe ’ , c´ac thuˆo . c t´ınh cu ’ a thu . . c thˆe ’ v`a c´ac liˆen kˆe ´ t gi˜u . a c´ac thu . . c thˆe ’ du . o . . c lu . u tr˜u . trong CSDL n`ay. Mˆo . t sˆo ´ nh˜u . ng thˆong tin cˆa ` n thiˆe ´ t kh´ac nhu . c´ac t`u . dˆo ` ng ngh˜ıa cu ’ a mˆo . t t`u . vu . . ng trong t`u . diˆe ’ n v`a tˆa ´ t ca ’ c´ac gi´a tri . miˆe ` n dˆo ´ i v´o . i c´ac thuˆo . c t´ınh c˜ung cˆa ` n du . o . . c lu . u tr˜u . trong t`u . diˆe ’ n t`u . vu . . ng. Ngo`ai ra, mˆo . t sˆo ´ c´ac ph´ep to´an xuˆa ´ t hiˆe . n trong c´ac cˆau truy vˆa ´ n nhu . c´ac ph´ep to´an so s´anh (l´o . n ho . n, nho ’ ho . n, ) v`a c´ac ph´ep to´an logic (v`a, ho˘a . c/hay, khˆong) c˜ung cˆa ` n du . o . . c du . a v`ao trong t`u . diˆe ’ n t`u . vu . . ng. D˘a . c biˆe . t, t`u . diˆe ’ n n`ay khˆong chı ’ do . n gia ’ n lu . u tr˜u . thˆong tin vˆe ` loa . i t`u . (danh t`u . , t´ınh t`u . , dˆo . ng t`u . , ) m`a lu . u ca ’ c´ac thˆong tin vˆe ` tˆo ’ ho . . p c´ac tri th´u . c liˆen quan dˆe ´ n t`u . vu . . ng. N´oi c´ach kh´ac, t`u . diˆe ’ n khˆong chı ’ lu . u thˆong tin mˆo . t c´ach do . n gia ’ n vˆe ` t`u . loa . i m`a ca ’ ngh˜ıa loa . i v`a c´ac thˆong tin liˆen quan kh´ac khi cˆa ` n thiˆe ´ t. Dˆay l`a nguˆo ` n d˜u . liˆe . u chu ’ yˆe ´ u vˆe ` thˆong tin thuˆo . c t´ınh cu ’ a t`u . vu . . ng phu . c vu . cho mu . c d´ıch phˆan t´ıch c´u ph´ap c´ac da . ng cˆau truy vˆa ´ n c´o thˆe ’ t`u . ngu . `o . i su . ’ du . ng v`a cˆay phˆan t´ıch c´u ph´ap kˆe ´ t qua ’ cˆa ` n ch´u . a dˆa ` y du ’ nh˜u . ng thˆong tin cˆa ` n thiˆe ´ t gi´up cho bˆo . thˆong di . ch ng˜u . ngh˜ıa c´o thˆe ’ hiˆe ’ u du . o . . c ngh˜ıa cu ’ a cˆau truy vˆa ´ n dˆa ` u v`ao. T`u . diˆe ’ n ng˜u . ngh˜ıa cu ’ a hˆe . gi´up cho bˆo . thˆong di . ch ng˜u . ngh˜ıa c´o thˆe ’ hiˆe ’ u du . o . . c cˆau truy vˆa ´ n dˆa ` u v`ao. Do vˆa . y, ´y ngh˜ıa cu ’ a mˆo ˜ i t`u . liˆe . t kˆe trong t`u . diˆe ’ n t`u . vu . . ng cˆa ` n du . o . . c mˆo ta ’ ´y ngh˜ıa trong t`u . diˆe ’ n ng˜u . ngh˜ıa du . ´o . i da . ng mˆo . t vi . t`u . logic. Ch´ung tˆoi c˜ung su . ’ du . ng c`ung mˆo . t logic mˆo ta ’ du . o . . c lu . . a cho . n biˆe ’ u diˆe ˜ n cˆau truy vˆa ´ n logic dˆe ’ mˆo ta ’ c´ac t`u . vu . . ng trong t`u . diˆe ’ n t`u . vu . . ng. Bˆo . thˆong di . ch ng˜u . ngh˜ıa su . ’ du . ng c´ac vi . t`u . logic n`ay dˆe ’ h`ınh th`anh nˆen cˆau truy vˆa ´ n logic biˆe ’ u thi . ´y ngh˜ıa cu ’ a truy vˆa ´ n dˆa ` u v`ao. Hai t`u . diˆe ’ n n`ay v`a so . dˆo ` CSDL quan hˆe . l`a c´ac module phu . thuˆo . c miˆe ` n v`a cˆa ` n pha ’ i du . o . . c xˆay du . . ng mˆo ˜ i khi hˆe . thˆo ´ ng du . o . . c c`ai d˘a . t cho mˆo . t CSDL m´o . i hay mˆo . t miˆe ` n tri th´u . c m´o . i. Tuy nhiˆen, vˆe ` co . ba ’ n, hai t`u . diˆe ’ n n`ay c´o thˆe ’ du . o . . c ta . o lˆa . p mˆo . t c´ach b´an tu . . dˆo . ng v´o . i su . . can thiˆe . p nhˆa ´ t di . nh t`u . ngu . `o . i qua ’ n tri . hˆe . thˆo ´ ng. Qua phˆa ` n tr`ınh b`ay trˆen, c´o thˆe ’ thˆa ´ y r˘a ` ng, trong c´ac nhiˆe . m vu . cˆa ` n thu . . c hiˆe . n khi thiˆe ´ t kˆe ´ v`a c`ai d˘a . t mˆo . t giao diˆe . n truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen dˆo ´ i v´o . i c´ac CSDL, nhiˆe . m vu . thˆong di . ch ng˜u . ngh˜ıa nh˘a ` m di . ch c´ac cˆau truy vˆa ´ n dˆa ` u v`ao th`anh mˆo . t biˆe ’ u diˆe ˜ n ng˜u . ngh˜ıa cˆau truy M ˆ O . T C ´ ACH TI ˆ E ´ P C ˆ A . N D ˆ O ´ I V ´ O . I PH ´ EP DI . CH 275 vˆa ´ n l`a quan tro . ng ho . n ca ’ nhˆa ´ t l`a khi c´ac truy vˆa ´ n tu . . nhiˆen du . o . . c ph´at ra kh´a tu . . do t`u . nh˜u . ng ngu . `o . i su . ’ du . ng khˆong chuyˆen vˆe ` tin ho . c, khˆong c´o nh˜u . ng hiˆe ’ u biˆe ´ t dˆa ` y du ’ v`a nhˆa ´ t di . nh vˆe ` CSDL cˆa ` n tra c´u . u. Do vˆa . y, trong phˆa ` n tiˆe ´ p theo, ch´ung tˆoi ch´u tro . ng v`ao nhiˆe . m vu . di . ch c´ac cˆau truy vˆa ´ n tu . . nhiˆen th`anh da . ng logic c´o thˆe ’ thu . . c hiˆe . n du . o . . c. 4. DI . CH C ˆ AU TRUY V ˆ A ´ N TU . . NHI ˆ EN TH ` ANH DA . NG LOGIC Dˆe ’ biˆe ’ u diˆe ˜ n ´y ngh˜ıa cu ’ a c´ac t`u . vu . . ng trong t`u . diˆe ’ n t`u . vu . . ng, ch´ung tˆoi su . ’ du . ng mˆo . t logic mˆo ta ’ d˘a . c biˆe . t, CIFR, d˜a du . o . . c gi´o . i thiˆe . u trong Mu . c 2.2. 4.1. Di . ch so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t th`anh CIFR-TBoxes Trong phˆa ` n n`ay, ch´ung tˆoi s˜e chı ’ ra r˘a ` ng, c´ac ng˜u . ngh˜ıa du . o . . c pha ’ n ´anh trong so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t c´o thˆe ’ du . o . . c n˘a ´ m b˘a ´ t trong CIFR thˆong qua mˆo . t ph´ep di . ch t`u . so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t th`anh CIFR-TBoxes. Co . so . ’ tri th´u . c CIFR-TBoxes du . o . . c suy ra t`u . mˆo . t so . dˆo ` thu . . c thˆe ’ - liˆen kˆe ´ t S du . o . . c x´ac di . nh nhu . sau: + Co . so . ’ tri th´u . c n`ay ch´u . a mˆo . t kh´ai niˆe . m nguyˆen tˆo ´ A dˆo ´ i v´o . i mˆo ˜ i miˆe ` n gi´a tri . thuˆo . c t´ınh hay mˆo ˜ i thu . . c thˆe ’ A, mˆo . t vai tr`o nguyˆen tˆo ´ P dˆo ´ i v´o . i mˆo ˜ i thuˆo . c t´ınh P v`a mˆo . t quan hˆe . n + m -ngˆoi R dˆo ´ i v´o . i mˆo ˜ i liˆen kˆe ´ t R n -ngˆoi (k´eo theo n thu . . c thˆe ’ ) c´o m thuˆo . c t´ınh liˆen kˆe ´ t. Tˆa . p c´ac kh˘a ’ ng di . nh bao h`am cu ’ a co . so . ’ tri th´u . c du . o . . c x´ac di . nh nhu . sau: + V´o . i mˆo ˜ i c˘a . p c´ac thu . . c thˆe ’ E, F sao cho E l`a-mˆo . t F trong S , ch´ung ta c´o kh˘a ’ ng di . nh: E ⊆ F v´o . i E v`a F l`a c´ac kh´ai niˆe . m nguyˆen tˆo ´ ´u . ng v´o . i c´ac thu . . c thˆe ’ E v`a F. + V´o . i mˆo ˜ i thu . . c thˆe ’ E c´o c´ac thuˆo . c t´ınh A 1 , A 2 , , A k v´o . i c´ac miˆe ` n D 1 , D 2 , , D k tu . o . ng ´u . ng, ch´ung ta c´o kh˘a ’ ng di . nh: E ⊆ ∀A 1 .D 1 Π Π∀A k .D k Π( 1A 1 )Π Π( 1A k ). + V´o . i mˆo ˜ i liˆen kˆe ´ t n -ngˆoi R gi˜u . a n thu . . c thˆe ’ E 1 , , E n c´o m thuˆo . c t´ınh liˆen kˆe ´ t T 1 , , T m v´o . i c´ac miˆe ` n D 1 , D 2 , , D m , tu . o . ng ´u . ng, ch´ung ta c´o kh˘a ’ ng di . nh: E i ⊆ ∀R[E i ].T 1 : D 1 , , T m : D m . 4.2. Di . ch nˆo . i dung cu ’ a CSDL quan hˆe . th`anh CIFR-ABoxes V´o . i mˆo ˜ i miˆe ` n D ch´u . a c´ac gi´a tri . r`o . i ra . c v`a h˜u . u ha . n, ch´ung ta c´o kh˘a ’ ng di . nh: D(d) v´o . i d l`a mˆo . t thˆe ’ hiˆe . n cu ’ a D. 4.3. Phˆan t´ıch c´u ph´ap cˆau truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen Tru . ´o . c tiˆen, bˆo . phˆan t´ıch c´u ph´ap tra c´u . u t`u . diˆe ’ n t`u . vu . . ng dˆe ’ phˆan t´ach c´ac t`u . c´o ngh˜ıa trong cˆau truy vˆa ´ n dˆo ` ng th`o . i x´ac di . nh loa . i t`u . c˜ung nhu . nh˜u . ng thˆong tin cˆa ` n thiˆe ´ t kh´ac c´o liˆen quan dˆe ´ n t`u . du . o . . c lu . u tr˜u . trong t`u . diˆe ’ n t`u . vu . . ng. Du . . a trˆen nh˜u . ng thˆong tin n`ay v`a mˆo . t tˆa . p c´ac luˆa . t c´u ph´ap, bˆo . phˆan t´ıch c´u ph´ap s˜e x´ac di . nh cˆa ´ u tr´uc c´u ph´ap cu ’ a cˆau truy vˆa ´ n dˆa ` u v`ao v`a d˘a . c biˆe . t, x´ac di . nh da . ng cu ’ a cˆau truy vˆa ´ n (cˆau c´o t`u . dˆe ’ ho ’ i, cˆau nghi vˆa ´ n, cˆau mˆe . nh lˆe . nh th´u . c v´o . i h`am ´y yˆeu cˆa ` u, ). Trong ng˜u . ca ’ nh cu ’ a ch´ung tˆoi, dˆe ’ bˆo . phˆan t´ıch c´u ph´ap c´o thˆe ’ phˆan t´ıch cˆau truy vˆa ´ n dˆa ` u v`ao mˆo . t c´ach hiˆe . u qua ’ v`a x´ac di . nh du . o . . c da . ng cˆau truy vˆa ´ n, mˆo . t tˆa . p c´ac luˆa . t c´u ph´ap du . o . . c xˆay du . . ng du . . a trˆen viˆe . c liˆe . t kˆe c´ac da . ng cˆau truy vˆa ´ n c´o thˆe ’ t`u . ngu . `o . i su . ’ du . ng cˆa ` n du . o . . c bˆo ’ su . ng v`ao tˆa . p c´ac luˆa . t c´u ph´ap cu ’ a hˆe . thˆo ´ ng. Cˆa ´ u 276 NGUY ˆ E ˜ N KIM ANH tr´uc c´u ph´ap kˆe ´ t qua ’ cu ’ a cˆau truy vˆa ´ n dˆa ` u v`ao s˜e du . o . . c xu . ’ l´y tiˆe ´ p bo . ’ i bˆo . thˆong di . ch ng˜u . ngh˜ıa. 4.4. Di . ch cˆay phˆan t´ıch c´u ph´ap th`anh cˆau truy vˆa ´ n logic Dˆe ’ thˆong di . ch ng˜u . ngh˜ıa c´ac cˆau truy vˆa ´ n tu . . nhiˆen dˆo ´ i v´o . i mˆo . t CSDL quan hˆe . , ch´ung tˆoi bˆo ’ sung v`ao tˆa . p c´ac kh´ai niˆe . m nguyˆen tˆo ´ cu ’ a CIFR mˆo . t tˆa . p dˆe ´ m du . o . . c c´ac kiˆe ’ u co . so . ’ , du . o . . c k´y hiˆe . u l`a B v´o . i B = {Int, Real, String, Bool, Date, d 1 , d 2 }, o . ’ dˆay, c´ac d k k´y hiˆe . u c´ac phˆa ` n tu . ’ cu ’ a Int ∪ Real ∪ String ∪ Bool ∪ Date. Ngo`ai ra, dˆe ’ thˆong di . ch du . o . . c c´ac ph´ep so s´anh, ch´ung tˆoi bˆo ’ sung v`ao tˆa . p c´ac vai tr`o nguyˆen tˆo ´ cu ’ a CIFR mˆo . t vai tr`o nguyˆen tˆo ´ L´o . nHo . n v`a di . nh ngh˜ıa c´ac vai tr`o sau: B˘a ` ng = id(Int ∪ Real), L´o . nHo . nHo˘a . cB˘a ` ng = L´o . nHo . n  B˘a ` ng, Nho ’ Ho . n = L´o . nHo . n, Nho ’ Ho . nHo˘a . cB˘a ` ng = Nho ’ Ho . n  B˘a ` ng. Mu . c d´ıch cu ’ a bˆo . thˆong di . ch ng˜u . ngh˜ıa, c˜ung nhu . c´ac giao diˆe . n truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen kh´ac, cˆa ` n pha ’ i tr´ıch ra nh˜u . ng thˆong tin cˆa ` n thiˆe ´ t t`u . cˆau truy vˆa ´ n tu . . nhiˆen cu ’ a ngu . `o . i su . ’ du . ng dˆe ’ c´o thˆe ’ ph´at biˆe ’ u du . o . . c mˆo . t cˆau truy vˆa ´ n c´o thˆe ’ thu . . c hiˆe . n du . o . . c dˆo ´ i v´o . i mˆo . t CSDL quan hˆe . . Do vˆa . y, dˆo ´ i v´o . i mˆo ˜ i cˆau truy vˆa ´ n tu . . nhiˆen, ch´ung ta cˆa ` n x´ac di . nh du . o . . c ba phˆa ` n: danh s´ach c´ac thuˆo . c t´ınh cˆa ` n du . a ra, c´ac thu . . c thˆe ’ c´o liˆen quan v`a c´ac diˆe ` u kiˆe . n r`ang buˆo . c cu ’ a truy vˆa ´ n. Sau khi phˆan t´ıch c´u ph´ap cˆau truy vˆa ´ n, ch´ung ta d˜a x´ac di . nh du . o . . c da . ng cˆau truy vˆa ´ n v`a cˆa ´ u tr´uc c´u ph´ap cu ’ a cˆau. Tuy nhiˆen, dˆe ’ hiˆe ’ u du . o . . c cˆau truy vˆa ´ n n`ay, ch´ung ta cˆa ` n biˆe ´ t ´y ngh˜ıa cu ’ a mˆo ˜ i t`u . hay cu . m t`u . c´o ngh˜ıa trong cˆau truy vˆa ´ n dˆa ` u v`ao. Mˆo ˜ i t`u . hay cu . m t`u . n`ay c´o thˆe ’ l`a tˆen cu ’ a mˆo . t thu . . c thˆe ’ , mˆo . t thuˆo . c t´ınh, mˆo . t liˆen kˆe ´ t, mˆo . t gi´a tri . thuˆo . c t´ınh, mˆo . t ph´ep so s´anh hay ph´ep to´an logic. Kh´o kh˘an cu ’ a nhiˆe . m vu . thˆong di . ch l`a nh˜u . ng ´y di . nh cu ’ a ngu . `o . i su . ’ du . ng c´o thˆe ’ biˆe ’ u thi . mˆo . t c´ach khˆong tru . . c tiˆe ´ p v`a tiˆe ` m t`ang nhiˆe ` u nhˆa . p nh˘a ` ng trong cˆau truy vˆa ´ n du . a v`ao. V`ı vˆa . y, nh˜u . ng thˆong tin tr´ıch r´ut ra du . o . . c t`u . cˆau truy vˆa ´ n du . a v`ao c´o thˆe ’ l`a khˆong dˆa ` y du ’ v`a khˆong r˜o r`ang. Thˆong thu . `o . ng, viˆe . c x´ac di . nh ´y ngh˜ıa cu ’ a c´ac t`u . hay cu . m t`u . c´o ngh˜ıa khˆong pha ’ i luˆon luˆon tˆa ` m thu . `o . ng. Trong qu´a tr`ınh thˆong di . ch, bˆo . thˆong di . ch pha ’ i tham chiˆe ´ u dˆe ´ n t`u . diˆe ’ n ng˜u . ngh˜ıa hay su . ’ du . ng c´ac tri th´u . c cu ’ a hˆe . dˆe ’ x´ac di . nh ´y ngh˜ıa ph`u ho . . p nhˆa ´ t dˆo ´ i v´o . i cho c´ac t`u . hay cu . m t`u . . Danh s´ach thuˆo . c t´ınh cˆa ` n du . a ra dˆo ´ i v´o . i truy vˆa ´ n cu ’ a ngu . `o . i su . ’ du . ng phu . thuˆo . c v`ao nh˜u . ng thuˆo . c t´ınh n`ao ngu . `o . i su . ’ du . ng muˆo ´ n du . a ra trong cˆau tra ’ l`o . i. Hˆe . thˆo ´ ng cu ’ a ch´ung tˆoi x´ac di . nh hai loa . i truy vˆa ´ n v`ao: loa . i th´u . nhˆa ´ t c´o danh s´ach thuˆo . c t´ınh du . a ra tu . `o . ng minh v`a loa . i th´u . hai khˆong c´o danh s´ach thuˆo . c t´ınh du . a ra. 1. C´ac da . ng cˆau truy vˆa ´ n thuˆo . c loa . i th´u . nhˆa ´ t: + Cˆau truy vˆa ´ n v´o . i dˆo . ng t`u . h`am ´y ‘yˆeu cˆa ` u’ d´u . ng dˆa ` u. C´ac dˆo . ng t`u . h`am ´y ‘yˆeu cˆa ` u’ nhu . : liˆe . t kˆe, cho biˆe ´ t, du . a ra, luˆon luˆon du . o . . c su . ’ du . ng dˆe ’ ph´at ra mˆo . t yˆeu cˆa ` u tra c´u . u thˆong tin trong mˆo . t CSDL. C´ac dˆo . ng t`u . n`ay khˆong chuyˆe ’ n h`anh dˆo . ng. Do vˆa . y, ch´ung ta khˆong cˆa ` n kˆe ´ t ho . . p n´o v´o . i mˆo . t vi . t`u . biˆe ’ u diˆe ˜ n liˆen kˆe ´ t n`ao ca ’ . Tuy nhiˆen, nh˜u . ng danh t`u . d´u . ng ngay sau nh˜u . ng dˆo . ng t`u . n`ay cho ph´ep x´ac di . nh du . o . . c nh˜u . ng thuˆo . c t´ınh hay thu . . c thˆe ’ cˆa ` n du . a ra trong cˆau tra ’ l`o . i cho ngu . `o . i su . ’ du . ng. + Cˆau truy vˆa ´ n c´o t`u . dˆe ’ ho ’ i. Bˆo . thˆong di . ch x´ac di . nh c´ac thuˆo . c t´ınh du . o . . c nh˘a ´ c t´o . i bo . ’ i ngu . `o . i su . ’ du . ng, cu . thˆe ’ d´o l`a nh˜u . ng thuˆo . c t´ınh c´o xuˆa ´ t hiˆe . n trong cˆau du . a v`ao nhu . ng khˆong tham gia v`ao viˆe . c x´ac di . nh c´ac diˆe ` u kiˆe . n truy vˆa ´ n. Nh˜u . ng thuˆo . c t´ınh n`ay s˜e du . o . . c du . a v`ao danh s´ach thuˆo . c t´ınh cˆa ` n du . a ra mˆo . t c´ach tu . . dˆo . ng. Ch´ung tˆoi cho r˘a ` ng, c´ac thuˆo . c t´ınh du . o . . c M ˆ O . T C ´ ACH TI ˆ E ´ P C ˆ A . N D ˆ O ´ I V ´ O . I PH ´ EP DI . CH 277 su . ’ du . ng trong c´ac diˆe ` u kiˆe . n truy vˆa ´ n d˜a c´o gi´a tri . v`a nh˜u . ng thuˆo . c t´ınh khˆong thuˆo . c diˆe ` u kiˆe . n truy vˆa ´ n cˆa ` n pha ’ i tra c´u . u v`a cˆa ` n du . o . . c du . a ra. 2. C´ac da . ng cˆau truy vˆa ´ n thuˆo . c loa . i th´u . hai: Dˆo ´ i v´o . i c´ac cˆau truy vˆa ´ n thuˆo . c loa . i n`ay, hˆe . s˜e du . a ra c´ac thuˆo . c t´ınh ngˆa ` m di . nh dˆo ´ i v´o . i thu . . c thˆe ’ du . o . . c nh˘a ´ c t´o . i bo . ’ i ngu . `o . i su . ’ du . ng. C´o thˆe ’ thˆa ´ y r˘a ` ng, phˆa ` n thˆong tin cˆa ` n thiˆe ´ t v`a quan tro . ng nhˆa ´ t cˆa ` n tr´ıch r´ut t`u . cˆau truy vˆa ´ n dˆa ` u v`ao l`a c´ac diˆe ` u kiˆe . n r`ang buˆo . c cu ’ a truy vˆa ´ n do c´ac thu . . c thˆe ’ c´o liˆen quan d˜a du . o . . c x´ac di . nh tiˆe ` m ˆa ’ n khi biˆe ’ u diˆe ˜ n diˆe ` u kiˆe . n r`ang buˆo . c cu ’ a truy vˆa ´ n. Dˆo . ng t`u . d´ong mˆo . t vai tr`o rˆa ´ t quan tro . ng trong viˆe . c thˆong di . ch ng˜u . ngh˜ıa cˆau truy vˆa ´ n. Do vˆa . y, bˆo . thˆong di . ch ng˜u . ngh˜ıa cu ’ a ch´ung tˆoi lˆa ´ y dˆo . ng t`u . l`am th`anh phˆa ` n trung tˆam cu ’ a cˆau dˆe ’ x´ac di . nh c´ac chu ’ thˆe ’ v`a dˆo ´ i tu . o . . ng c´o liˆen quan dˆe ´ n dˆo . ng t`u . hay x´ac di . nh c´ac vai tr`o ng˜u . ngh˜ıa cu ’ a dˆo . ng t`u . . Tiˆe ´ p theo, ch´ung ta s˜e lˆa ` n lu . o . . t x´et c´ac dˆo . ng t`u . xuˆa ´ t hiˆe . n trong cˆay phˆan t´ıch c´u ph´ap dˆe ’ x´ac di . nh diˆe ` u kiˆe . n r`ang buˆo . c cu ’ a truy vˆa ´ n. a. Dˆo . ng t`u . dang x´et tu . o . ng ´u . ng v´o . i mˆo . t quan hˆe . n-ngˆoi trong co . so . ’ tri th´u . c cu ’ a hˆe . . + Di . ch dˆo . ng t`u . th`anh quan hˆe . n-ngˆoi tu . o . ng ´u . ng dˆo ` ng th`o . i x´ac di . nh c´ac cu . m danh t`u . hay mˆe . nh dˆe ` d´ong vai tr`o chu ’ thˆe ’ v`a dˆo ´ i tu . o . . ng cu ’ a dˆo . ng t`u . tu . o . ng ´u . ng v´o . i c´ac thu . . c thˆe ’ tham gia v`ao liˆen kˆe ´ t du . o . . c biˆe ’ u diˆe ˜ n bo . ’ i quan hˆe . n - ngˆoi n`ay. Ngo`ai ra, doa . n tra . ng ng˜u . cu ’ a cˆau s˜e du . o . . c di . ch th`anh thuˆo . c t´ınh cu ’ a liˆen kˆe ´ t d˜a x´ac di . nh. + Di . ch c´ac danh t`u . d´u . ng dˆa ` u cu . m danh t`u . th`anh c´ac kh´ai niˆe . m tu . o . ng ´u . ng v´o . i c´ac thu . . c thˆe ’ d˜a x´ac di . nh. Thˆong thu . `o . ng, c´ac cu . m danh t`u . n`ay c´o thˆe ’ c´o mˆo . t sˆo ´ di . nh ng˜u . bˆo ’ ngh˜ıa cho danh t`u . d´u . ng dˆa ` u. C´ac di . nh ng˜u . n`ay c´o thˆe ’ l`a c´ac danh t`u . , t´ınh t`u . hay mˆo . t mˆe . nh dˆe ` . Tra c´u . u t`u . diˆe ’ n ng˜u . ngh˜ıa dˆo ´ i v´o . i c´ac danh t`u . v`a t´ınh t`u . , ch´ung ta c´o thˆe ’ x´ac di . nh du . o . . c c´ac di . nh ng˜u . n`ay tu . o . ng ´u . ng v´o . i thuˆo . c t´ınh v`a/hay gi´a tri . thuˆo . c t´ınh cu ’ a thu . . c thˆe ’ d˜a x´ac di . nh. Di . ch c´ac di . nh ng˜u . n`ay th`anh c´ac r`ang buˆo . c gi´a tri . dˆo ´ i v´o . i c´ac vai tr`o tu . o . ng ´u . ng. Tru . `o . ng ho . . p bˆo ’ ng˜u . cu ’ a dˆo . ng t`u . hay di . nh ng˜u . cu ’ a danh t`u . l`a mˆe . nh dˆe ` s˜e du . o . . c x´et tiˆe ´ p sau dˆay. b. Dˆo . ng t`u . dang x´et khˆong tu . o . ng ´u . ng v´o . i mˆo . t quan hˆe . n -ngˆoi trong co . so . ’ tri th´u . c cu ’ a hˆe . . Trong tru . `o . ng ho . . p n`ay, dˆo . ng t`u . dang x´et khˆong chuyˆe ’ n h`anh dˆo . ng m`a chı ’ mˆo ta ’ mˆo . t thuˆo . c t´ınh cu ’ a thu . . c thˆe ’ d´ong vai tr`o chu ’ thˆe ’ cu ’ a dˆo . ng t`u . v`a bˆo ’ ng˜u . cu ’ a dˆo . ng t`u . c´o thˆe ’ danh t`u . /t´ınh t`u . hay mˆo . t cu . m danh t`u . . + Bˆo ’ ng˜u . l`a danh t`u . /t´ınh t`u . : Tra c´u . u t`u . diˆe ’ n ng˜u . ngh˜ıa dˆe ’ x´ac di . nh danh t`u . /t´ınh t`u . n`ay l`a gi´a tri . cu ’ a thuˆo . c t´ınh n`ao dˆo ´ i v´o . i thu . . c thˆe ’ d˜a x´ac di . nh. Di . ch bˆo ’ ng˜u . n`ay th`anh r`ang buˆo . c gi´a tri . dˆo ´ i v´o . i c´ac vai tr`o tu . o . ng ´u . ng + Bˆo ’ ng˜u . l`a cu . m danh t`u . : Di . ch danh t`u . d´u . ng dˆa ` u th`anh vai tr`o tu . o . ng ´u . ng v´o . i mˆo . t thuˆo . c t´ınh cu ’ a thu . . c thˆe ’ d˜a x´ac di . nh v`a di . ch di . nh ng˜u . cu ’ a danh t`u . d´u . ng dˆa ` u th`anh r`ang buˆo . c gi´a tri . dˆo ´ i v´o . i vai tr`o d˜a x´ac di . nh (c´o thˆe ’ thˆong qua mˆo . t ph´ep to´an so s´anh). c. Di . ch c´ac t`u . chı ’ quan hˆe . ‘v`a’, ‘ho˘a . c/hay’ th`anh c´ac ph´ep to´an  ,  trong CIFR tu . o . ng ´u . ng. d. Di . ch t`u . chı ’ phu ’ di . nh ‘khˆong’ th`anh ph´ep ¬ trong CIFR tu . o . ng ´u . ng. e. C´ac da . ng truy vˆa ´ n d˘a . c biˆe . t: + Cˆau truy vˆa ´ n o . ’ da . ng nghi vˆa ´ n v´o . i dˆo . ng t`u . ‘l`a’: Dˆo . ng t`u . ‘l`a’ l`a dˆo . ng t`u . liˆen hˆe . thu . `o . ng du . o . . c su . ’ du . ng dˆe ’ mˆo ta ’ chu ’ thˆe ’ cu ’ a dˆo . ng t`u . . C´ac dˆo . ng t`u . n`ay khˆong chuyˆe ’ n h`anh dˆo . ng. Do vˆa . y, ch´ung ta khˆong cˆa ` n kˆe ´ t ho . . p n´o v´o . i mˆo . t vi . t`u . biˆe ’ u diˆe ˜ n liˆen kˆe ´ t n`ao ca ’ . + Cˆau truy vˆa ´ n o . ’ da . ng so . ’ h˜u . u: ch´u ´y r˘a ` ng, mˆo . t sˆo ´ liˆen kˆe ´ t c´o thˆe ’ du . o . . c truy vˆa ´ n du . ´o . i da . ng so . ’ h˜u . u nhu . ‘h˜ay liˆe . t kˆe c´ac A cu ’ a B’. Trong tru . `o . ng ho . . p n`ay, khˆong c´o dˆo . ng t`u . n`ao 278 NGUY ˆ E ˜ N KIM ANH xuˆa ´ t hiˆe . n trong cˆau truy vˆa ´ n tu . . nhiˆen v`a do vˆa . y khˆong thˆe ’ x´ac di . nh du . o . . c c´ac liˆen kˆe ´ t cˆa ` n thiˆe ´ t t`u . cˆau dˆa ` u v`ao dˆe ’ di . ch cˆau truy vˆa ´ n n`ay th`anh da . ng logic c´o thˆe ’ thu . . c hiˆe . n du . o . . c. Dˆo ´ i v´o . i c´ac cˆau truy vˆa ´ n da . ng n`ay, trong qu´a tr`ınh di . ch, tru . ´o . c tiˆen, hˆe . s˜e di . ch c´ac cu . m danh t`u . (A v`a B) th`anh c´ac kh´ai niˆe . m/vai tr`o tu . o . ng ´u . ng. Tiˆe ´ p sau d´o, du . . a trˆen co . so . ’ tri th´u . c cu ’ a hˆe . , hˆe . s˜e suy diˆe ˜ n dˆe ’ thiˆe ´ t lˆa . p c´ac du . `o . ng dˆa ˜ n c´o thˆe ’ gi˜u . a c´ac kh´ai niˆe . m/vai tr`o n`ay v`a cho ph´ep mˆo ta ’ chi tiˆe ´ t cˆau truy vˆa ´ n logic c´o thˆe ’ thu . . c hiˆe . n du . o . . c. Trong tru . `o . ng ho . . p tˆo ` n ta . i nhiˆe ` u du . `o . ng dˆa ˜ n c´o thˆe ’ , ngu . `o . i su . ’ du . ng s˜e du . o . . c ho ’ i dˆe ’ kh˘a ’ ng di . nh mˆo . t du . `o . ng dˆa ˜ n ph`u ho . . p v´o . i ´y di . nh cu ’ a ngu . `o . i su . ’ du . ng. 5. M ˆ O . T S ˆ O ´ V ´ I DU . MINH HO . A Cˆau 1. H˜ay du . a ra tˆen c´ac sinh viˆen o . ’ H`a Nˆo . i v`a sinh sau n˘am 85: TˆenSV l`a thuˆo . c t´ınh cˆa ` n du . a ra v`a biˆe ’ u th´u . c logic mˆo ta ’ l`a: ∃ Di . aChı ’ ◦ H`aNˆo . i  ∃ N˘amSinh ◦ L´o . nHo . n ◦ 85. Cˆau 2. Cho biˆe ´ t c´ac gia ’ ng viˆen chı ’ da . y mˆon Co . so . ’ d˜u . liˆe . u hay mˆon Hˆe . qua ’ n tri . CSDL: ∀ Da . y[GV, MˆonHo . c] ◦ TˆenMˆon ◦ (Co . so . ’ d˜u . liˆe . u  Hˆe . qua ’ n tri . CSDL). Cˆau 3. Cho biˆe ´ t c´ac sinh viˆen cu ’ a gia ’ ng viˆen A: Hˆe . x´ac di . nh du . o . . c 2 du . `o . ng dˆa ˜ n gi˜u . a SV v`a GV l`a: 1. SV  Ho . c  MˆonHo . c  Da . y  GV v`a 2. SV  Hu . ´o . ngDˆa ˜ n  GV. Ngu . `o . i su . ’ du . ng s˜e du . o . . c ho ’ i dˆe ’ lu . . a cho . n du . `o . ng dˆa ˜ n ph`u ho . . p: 1. ∃ Ho . c[SV, MˆonHo . c] ◦ Da . y[MˆonHo . c, GV] ◦ TˆenGV ◦ A. 2. ∃ Hu . ´o . ngDˆa ˜ n [SV, GV] ◦ TˆenGV ◦ A 6. D ´ ANH GI ´ A V ` A K ˆ E ´ T LU ˆ A . N Ch´ung tˆoi d˜a tiˆe ´ n h`anh c`ai d˘a . t thu . ’ nghiˆe . m mˆo . t hˆe . truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen tiˆe ´ ng Viˆe . t dˆo ´ i v´o . i CSDL Qua ’ n l´y ho . c tˆa . p mˆo . t kho´a cu ’ a tru . `o . ng Da . i ho . c B´ach khoa H`a Nˆo . i. Hˆe . thˆo ´ ng c`ai d˘a . t d˜a d´ap ´u . ng du . o . . c c´ac yˆeu cˆa ` u v`a mu . c tiˆeu dˆe ` ra dˆo ´ i v´o . i mˆo . t hˆe . thˆo ´ ng truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen. Tuy nhiˆen, hiˆe . u qua ’ cu ’ a hˆe . thˆo ´ ng phu . thuˆo . c rˆa ´ t nhiˆe ` u v`ao vˆo ´ n t`u . vu . . ng m`a ta du . a v`ao. Dˆay ch´ınh l`a kh´o kh˘an l´o . n nhˆa ´ t v`a c˜ung l`a vˆa ´ n dˆe ` co . ba ’ n cu ’ a bˆa ´ t k`y hˆe . thˆo ´ ng xu . ’ l´y ngˆon ng˜u . tu . . nhiˆen n`ao - su . . hiˆe ’ u biˆe ´ t cu ’ a n´o vˆe ` CSDL cu . thˆe ’ . Theo d´anh gi´a cu ’ a ch´ung tˆoi, c´ach tiˆe ´ p cˆa . n di . ch c´ac cˆau truy vˆa ´ n tu . . nhiˆen tiˆe ´ ng Viˆe . t du . o . . c gi´o . i thiˆe . u trong b`ai n`ay th`anh mˆo . t biˆe ’ u th´u . c logic mˆo ta ’ l`a rˆa ´ t c´o triˆe ’ n vo . ng. Cˆau truy vˆa ´ n o . ’ da . ng logic n`ay kh´a tu . . nhiˆen v`a rˆa ´ t gˆa ` n v´o . i cˆau truy vˆa ´ n tu . . nhiˆen. Ho . n n˜u . a, su . ’ du . ng kha ’ n˘ang lˆa . p luˆa . n cu ’ a hˆe . logic mˆo ta ’ , ch´ung ta c´o thˆe ’ di . ch du . o . . c c´ac truy vˆa ´ n khˆong dˆa ` y du ’ thˆong tin, khˆong r˜o r`ang, kiˆe ’ m tra t´ınh nhˆa ´ t qu´an cu ’ a cˆau truy vˆa ´ n dˆa ` u v`ao v`a d˘a . c biˆe . t c´o thˆe ’ ´ap du . ng c´ac k˜y thuˆa . t tˆo ´ i u . u ho´a vˆe ` ng˜u . ngh˜ıa dˆo ´ i v´o . i c´ac cˆau truy vˆa ´ n ph´u . c ta . p. C´ach tiˆe ´ p cˆa . n n`ay d˘a . c biˆe . t ph`u ho . . p v´o . i c´ac truy vˆa ´ n tra c´u . u thˆong tin vˆe ` mˆo . t kh´ai niˆe . m - mˆo . t da . ng truy vˆa ´ n phˆo ’ biˆe ´ n dˆo ´ i v´o . i c´ac hˆe . CSDL quan hˆe . . Cuˆo ´ i c`ung, ch´ung tˆoi hy vo . ng r˘a ` ng hˆe . thˆo ´ ng c`ai d˘a . t s˜e du . o . . c ca ’ i tiˆe ´ n v`a ph´at triˆe ’ n ho`an thiˆe . n ho . n n˜u . a dˆe ’ d´ap ´u . ng dˆa ` y du ’ c´ac yˆeu cˆa ` u cu ’ a mˆo . t hˆe . truy vˆa ´ n ngˆon ng˜u . tu . . nhiˆen tiˆe ´ ng Viˆe . t v`a thu . . c su . . cho ph´ep nh˜u . ng ngu . `o . i su . ’ du . ng khˆong du . o . . c d`ao ta . o vˆe ` Tin ho . c c´o thˆe ’ khai th´ac tˆo ´ t c´ac CSDL. M ˆ O . T C ´ ACH TI ˆ E ´ P C ˆ A . N D ˆ O ´ I V ´ O . I PH ´ EP DI . CH 279 T ` AI LI ˆ E . U THAM KHA ’ O [1] S. Abiteboul, R. Hull, IFO, A formal semantic database model, ACM TODS 12 (4) (1987) 525—565. [2] I. Androutsopoulos, “Interfacing a natural language front-end to relational database”, Tech. Paper no.11, Dept.of AI, Univ. of Edingburgh, 1993. [3] D. Calvanese, M. Lenzerini, D. Nardi, Logics for Databases and Information Systems, Kluwer, 1998. [4] G. D. Giacomo, M. Lenzerini, Description logic with inverse roles, functional restrictions, and n -ary relations, Proc. of the 4th European Workshop on Logic in AI (1994) 332—346. [5] G. G. Hendrix, et.all, Developing a nature language interface to complex data, ACM TODS 3 (3) (1978) 105—147. [6] J. S. Kaplan, Designing a portable nature language database query system, ACM TODS 9 (1) (1984) 1—19. [7] C. A. Thompson, R. S. Mooney, and L. R. Tang, Learning to parse natural language data- base queries into logical form, Workshop on Automata Induction, Grammatical Inference and Language Acquisition, 1997. [8] D. L. Waltz, An English language question answering system for a large relational data- base, Comm. ACM 21 (7) (1978) 526—539. Nhˆa . n b`ai ng`ay 18 - 5 - 2005 Nhˆa . n la . i sau su . ’ a ng`ay 17 - 10 -2005 . pháp Truy vấn dạng logic Truy vấn SQL Kết quả truy vấn Câu truy vấn ngôn ngữ tự nhiên Các module phụ thuộc miền Bộ phân tích cú pháp Từ điển từ vựng và các. hệ CSDL quan hệ Trả lời Cây cú pháp Truy vấn dạng logic Truy vấn SQL Kết quả truy vấn Câu truy vấn ngôn ngữ tự nhiên Các module phụ thuộc miền H`ınh 1.

Ngày đăng: 27/02/2014, 07:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan