Tài li羽u XML

Một phần của tài liệu he_thong_tim_kiem_thong_tin_tieng_viet (Trang 66)

1. C医u trúc l逢u tr英 d英 li羽 u

1.1.2Tài li羽u XML

<NEWSPAPERS> <DOC DOC_ID="1">

<TITLE>Thanh niên VN: 8瓜ng l詠c cho nh英ng t亥m nhìn m噂i</TITLE> <AUTHOR>Tác gi違: A.Bình</AUTHOR>

<DATE>Ngày :01/12/2000</DATE>

<NEWS>Tên t運 báo : Tu鰻i tr飲 Th吋 lo衣i : ,Trang : trang 1, 14</NEWS> <CONTENT>Thanh niên VN: 8瓜ng l詠c cho nh英ng ý t逢荏ng m噂i, t亥m nhìn o噂i. (TT-Hà N瓜i) - T衣i l宇 khai m衣c Di宇n 8àn thanh niên (TN) VN v噂i ch栄

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

8隠 “S印n sàng cho th院 k益 21” sáng 30-11 t衣i Hà N瓜i (do H瓜i Liên hi羽p TN VN ph嘘i h嬰p v噂i các c挨 quan LHQ t衣i VN t鰻 ch泳c), ông Edouard Wattez, 8k隠u ph嘘i viên th逢運ng trú LHQ t衣i VN, TN VN có vai trò quan tr丑ng trong quá trình m荏 c穎a v噂i th院 gi噂i... A. Bình.</CONTENT>

</DOC> ……

</NEWSPAPERS>

1.2 V壱p tin sau khi tách t tài liu

Aây là t壱p tin Xml l逢u các t瑛 tách 8逢嬰c t瑛 các t壱p tin v<n b違n g嘘c cùng v噂i các ID tham chi院u t噂i chúng. M厩i t壱p tin ch泳a các t瑛 c栄a 50 tài li羽u t逢挨ng 泳ng trong t壱p tin x<n b違n g嘘c, trong ch逢挨ng trình các t壱p tin này 8逢嬰c l逢u 荏 th逢 m映c “TachTu”.

1.2.1 E医u trúc DTD / XSD

• DTD

<!ELEMENT WORDS (WORD*)> <!ELEMENT WORD (DOC+)>

<!ATTLIST WORD Name CDATA #REQUIRED> <!ELEMENT DOC EMPTY>

<!ATTLIST DOC DOC_ID CDATA #REQUIRED>

• XSD

<?xml version='1.0'?>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

xmlns:dt="urn:schemas-microsoft-com:datatypes"> <!-- contents of XML Schema document goes here --> <AttributeType name="DOC_ID" dt:type="string"/> <AttributeType name="Name" dt:type="string"/> <ElementType name="DOC" content="eltOnly">

<attribute type="DOC_ID"/> </ElementType>

<ElementType name="WORD" content="eltOnly"> <attribute type="Name"/>

<element type="DOC" minOccurs="1" maxOccurs="*"/> </ElementType>

<ElementType name="WORDS" content="eltOnly">

<element type="WORD" minOccurs="1" maxOccurs="*"/> </ElementType> </Schema> 1.2.2 Tài li羽u XML <WORDS> <WORD Name="thành l壱p"> <DOC DOC_ID="2051" /> <DOC DOC_ID="2063" />

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<DOC DOC_ID="2091" /> </WORD>

<WORD Name="trung tâm"> <DOC DOC_ID="2091" /> <DOC DOC_ID="2092" /> <DOC DOC_ID="2099" /> </WORD>

<WORD Name="u胤">

<DOC DOC_ID="2076" /> <DOC DOC_ID="2079" /> <DOC DOC_ID="2084" /> <DOC DOC_ID="2086" /> <DOC DOC_ID="2091" /> <DOC DOC_ID="2094" /> <DOC DOC_ID="2095" /> <DOC DOC_ID="2096" /> <DOC DOC_ID="2099" /> </WORD> …… </WORDS>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

1.3 V壱p tin cha các t không th hin ni dung ca v<n bn (stop list)

Aây là t壱p tin Xml ch泳a các t瑛 không th吋 hi羽n n瓜i dung c栄a v<n b違n, g丑i là danh sách StopList, trong ch逢挨ng trình t壱p tin này n茨m trong th逢 m映c “StopList”

1.3.1 E医u trúc DTD / XSD

• DTD

<!ELEMENT STOP_LIST (WORD*)> <!ELEMENT WORD EMPTY>

<!ATTLIST WORD Name CDATA #REQUIRED>

• XSD

<?xml version='1.0'?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">

<!-- contents of XML Schema document goes here --> <AttributeType name="Name" dt:type="string"/>

<ElementType name="WORD" content="eltOnly"> <attribute type="Name"/>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<ElementType name="STOP_LIST" content="eltOnly">

<element type="WORD" minOccurs="1" maxOccurs="*"/> </ElementType> </Schema> 1.3.2 Tài li羽u XML <STOP_LIST> <WORD Name="x噂i" /> <WORD Name="e ng" /> <WORD Name="và" /> <WORD Name="có" /> <WORD Name="nh逢ng" /> <WORD Name="u詠" /> <WORD Name="v衣i" /> </STOP_LIST>

1.4 V壱p tin ch mc 8違o ( Inverted ).

V壱p tin ch雨 m映c 8違o l逢u các t瑛 ch雨 m映c, m厩i t瑛 có các tham chi院u 8院n tài li羽u ch泳a t瑛"8ó kèm theo t亥n s嘘, tr丑ng s嘘 c栄a t瑛"8ó trong tài li羽u, trong ch逢挨ng trình t壱p tin này 8逢嬰c l逢u trong th逢 m映c “Inverted ”.

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

• DTD

<!ELEMENT Inverted_File (Term*)> <!ELEMENT Term (DOC+)>

<!ATTLIST Term Name CDATA #REQUIRED> <!ELEMENT DOC EMPTY>

<!ATTLIST DOC D CDATA #REQUIRED> <!ATTLIST DOC F CDATA #REQUIRED> <!ATTLIST DOC W CDATA #REQUIRED>

• XSD

<?xml version='1.0'?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">

<!-- contents of XML Schema document goes here --> <AttributeType name="D" dt:type="string"/>

<AttributeType name="F" dt:type="int"/>

<AttributeType name="W" dt:type="fixed.14.4"/> <AttributeType name="Name" dt:type="string"/>

<ElementType name="DOC" content="eltOnly"> <attribute type="D"/>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<attribute type="F"/> <attribute type="W"/> </ElementType>

<ElementType name="Term" content="eltOnly"> <attribute type="Name"/>

<element type="DOC" minOccurs="1" maxOccurs="*"/> </ElementType>

<ElementType name="Inverted_File" content="eltOnly">

<element type="Term" minOccurs="1" maxOccurs="*"/> </ElementType>

</Schema>

1.4.2 Tài li羽u XML

<Inverted_File>

<Term Name="nhân công">

<DOC D="378" F="1" W="2.5" /> <DOC D="879" F="3" W="7.49" /> <DOC D="1584" F="1" W="2.5" /> <DOC D="1627" F="1" W="2.5" />

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<DOC D="1659" F="1" W="2.5" /> <DOC D="1708" F="1" W="2.5" /> <DOC D="2194" F="2" W="4.99" /> </Term>

<Term Name="gia truy隠n">

<DOC D="942" F="1" W="2.87" /> <DOC D="1670" F="1" W="2.87" /> <DOC D="2194" F="1" W="2.87" /> </Term> …… </Inverted_File>

1.5 V壱p tin sau khi tách t câu hi.

V壱p tin này ch泳a các t瑛 tách 8逢嬰c trong câu h臼i, trong ch逢挨ng trình nó 8逢嬰c l逢u trong th逢 m映c “CauHoi”

1.5.1 E医u trúc DTD / XSD

• DTD

<!ELEMENT WORDS (WORD*)> <!ELEMENT WORD EMPTY>

<!ATTLIST WORD Name CDATA #REQUIRED>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<?xml version='1.0'?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">

<!-- contents of XML Schema document goes here --> <AttributeType name="Name" dt:type="string"/>

<ElementType name="WORD" content="eltOnly"> <attribute type="Name"/>

</ElementType>

<ElementType name="WORDS" content="eltOnly">

<element type="WORD" minOccurs="1" maxOccurs="*"/> </ElementType> </Schema> 1.5.2 Tài li羽u XML <WORDS> <WORD Name="8医t n逢噂c" /> <WORD Name="và" />

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<WORD Name="vi羽t nam" /> </WORDS>

1.6 V壱p tin cha các t ca câu hi sau khi loi b các t trong danh sách StopList

V壱p tin này 8逢嬰c l逢u trong th逢 m映c “CauHoi”, tên t壱p tin là “CauHoiLoaiBoStopList.xml ”

1.6.1 E医u trúc DTD / XSD

• DTD

<!ELEMENT WORDS (WORD*)> <!ELEMENT WORD EMPTY>

<!ATTLIST WORD Name CDATA #REQUIRED>

• XSD

<?xml version='1.0'?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">

<!-- contents of XML Schema document goes here --> <AttributeType name="Name" dt:type="string"/>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<attribute type="Name"/> </ElementType>

<ElementType name="WORDS" content="eltOnly">

<element type="WORD" minOccurs="1" maxOccurs="*"/> </ElementType>

</Schema>

1.6.2 Tài li羽u XML

<WORDS>

<WORD Name="8医t n逢噂c" /> <WORD Name="con ng逢運i" /> <WORD Name="vi羽t nam" /> </WORDS>

1.7 V壱p tin cha các t trong câu hi và các tài liu liên quan

V壱p tin này ch泳a các t瑛 trong câu h臼i và các tham chi院u 8院n các tài li羽u ch泳a các t瑛 này, kèm theo t亥n s嘘, tr丑ng s嘘 c栄a m厩i t瑛 trong tài li羽u t逢挨ng 泳ng, nó 8逢嬰c l逢u trong th逢 m映c “CauHoi” và tên t壱p tin là “CauHoiVaTaiLieu.xml”.

1.7.1 E医u trúc DTD / XSD

• DTD

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<!ATTLIST WORD Name CDATA #REQUIRED> <!ELEMENT Doc EMPTY>

<!ATTLIST Doc DOC_ID CDATA #REQUIRED> <!ATTLIST Doc Frequence CDATA #REQUIRED> <!ATTLIST Doc Weight CDATA #REQUIRED>

• XSD

<?xml version='1.0'?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">

<!-- contents of XML Schema document goes here --> <AttributeType name="DOC_ID" dt:type="string"/> <AttributeType name="Frequence" dt:type="int"/> <AttributeType name="Weight" dt:type="fixed.14.4"/> <AttributeType name="Name" dt:type="string"/>

<ElementType name="DOC" content="eltOnly"> <attribute type="DOC_ID"/>

<attribute type="Frequence"/> <attribute type="Weight"/> </ElementType>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<ElementType name="WORD" content="eltOnly"> <attribute type="Name"/>

<element type="DOC" minOccurs="1" maxOccurs="*"/> </ElementType>

<ElementType name="WORDS" content="eltOnly">

<element type="WORD" minOccurs="1" maxOccurs="*"/> </ElementType>

</Schema>

1.7.2 Tài li羽u XML

<WORDS>

<WORD Name="8医t n逢噂c">

<Doc DOC_ID="12" Frequence="2" Weight="2.48" /> <Doc DOC_ID="13" Frequence="1" Weight="1.24" /> <Doc DOC_ID="38" Frequence="1" Weight="1.24" /> <DOC DOC_ID="2446" Frequence="0" Weight="0" /> </WORD>

<WORD Name="con ng逢運i">

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<Doc DOC_ID="13" Frequence="0" Weight="0" /> <Doc DOC_ID="38" Frequence="0" Weight="0" /> <DOC DOC_ID="2446" Frequence="0" Weight="0" /> </WORD>

<WORD Name="vi羽t nam">

<Doc DOC_ID="12" Frequence="1" Weight="2.48" /> <Doc DOC_ID="13" Frequence="0" Weight="0" /> <Doc DOC_ID="38" Frequence="2" Weight="2.12" /> <DOC DOC_ID="2446" Frequence="1" Weight="1.25" /> </WORD>

</WORDS>

1.8 V壱p tin cha 8瓜 t逢挨ng quan gia câu hi và các tài liu

V壱p tin này ch泳a t医t c違 các tài li羽u liên quan 8院n câu h臼i, m厩i tài li羽u s胤 có 8瓜 v逢挨ng quan t逢挨ng 泳ng và s嘘 t瑛 trong câu h臼i mà tài li羽u 8ó ch泳a.

1.8.1 E医u trúc DTD / XSD

• DTD

<!ELEMENT CAU_HOI (Doc+)>

<!ATTLIST CAU_HOI Name CDATA #REQUIRED> <!ELEMENT Doc EMPTY>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<!ATTLIST Doc SIMILAR CDATA #REQUIRED> <!ATTLIST Doc Words CDATA #REQUIRED>

• XSD

<?xml version='1.0'?>

<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">

<!-- contents of XML Schema document goes here --> <AttributeType name="DOC_ID" dt:type="string"/> <AttributeType name="SIMILAR" dt:type="fixed.14.4"/> <AttributeType name="Words" dt:type="int"/>

<AttributeType name="Name" dt:type="string"/>

<ElementType name="Doc" content="eltOnly"> <attribute type="DOC_ID"/>

<attribute type="SIMILAR"/> <attribute type="Words"/> </ElementType>

<ElementType name="CAU_HOI" content="eltOnly"> <attribute type="Name"/>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

<element type="Doc" minOccurs="1" maxOccurs="*"/> </ElementType>

</Schema>

1.8.2 Tài li羽u XML

<CAU_HOI Name="8医t n逢噂c và con ng逢運i Vi羽t Nam"> <Doc DOC_ID="12" SIMILAR="8.44" Words="3" /> <Doc DOC_ID="13" SIMILAR="1.24" Words="1" /> <Doc DOC_ID="38" SIMILAR="4.6" Words="2" /> <Doc DOC_ID="2446" SIMILAR="1.25" Words="1" /> </CAU_HOI>

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép 2. Chi tit các lp 8嘘i t逢嬰ng 2.1 Các lp trong quá trình tách t 2.1.1 U挨 8欝 các l噂p Hình 6-1 S挨"8欝 l噂p tách t瑛 2.1.2 N噂p tách t瑛 ghép Hình 6-2 L噂p tách t瑛 ghép N噂p tách t瑛 ghép s胤 có nhi羽m v映 tách m瓜t v<n b違n thành các t瑛 riêng bi羽t.

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

A亥u vào là m瓜t chu厩i v<n b違n và 8亥u ra là m瓜t chu厩i ch泳a các t瑛, m厩i t瑛 s胤 cách nhau d荏i d医u xu嘘ng dòng ( ‘\r\n’ ).

Ví d映 :

chu厩i 8亥u vào = “Thanh niên VN: 8瓜ng l詠c cho nh英ng ý t逢荏ng m噂i, t亥m nhìn m噂i.” chu厩i 8亥u ra = “Thanh niên\r\nVN\r\n8瓜ng l詠c\r\ncho\r\nnh英ng\r\ný t逢荏ng\r\n o噂i\r\nt亥m nhìn\r\nm噂i\r\n”. 2.1.2.1 Ý ngh a c栄a các bi院n thành ph亥n: • ch : m違ng các ký t詠"8員c bi羽t (d医u ch医m, d医u ph育y, ch医m than, ch医m h臼i, hai ch医m,…) 8吋 tách v<n b違n thành các c映m t瑛. • hVietnamese : b違ng b<m 8吋 l逢u t医t c違 các t瑛 trong t瑛"8k吋n ti院ng Vi羽t. 2.1.2.2 Các hàm chính : - HàmTachThanhCumTu( ) : tách chu厩i v<n b違n thành các c映m t瑛 d詠a vào các kí t詠"8員c bi羽t nh逢 : d医u ch医m, ph育y, ch医m h臼i, ch医m than… * Thu壱t toán :

void TachThanhCumTu (chu厩i v<n b違n) {

while(g員p t詠"8員c bi羽t 8亥u tiên trong chu厩i v<n b違n) {

// C逸t ph亥n 8亥u thành m瓜t c映m t瑛. // Gán chu厩i v<n b違n thành ph亥n sau.

} }

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

Ví d映 :

chu厩i 8亥u vào = “Thanh niên VN: 8瓜ng l詠c cho nh英ng ý t逢荏ng m噂i, t亥m nhìn m噂i.” tr違 v隠 ta s胤 có 3 chu厩i c映m t瑛 :

chu厩i 1 = “Thanh niên VN”

chu厩i 2 = “8瓜ng l詠c cho nh英ng ý t逢荏ng m噂i” chu厩i 3 = “t亥m nhìn m噂i”

- HàmTachMangTieng( ) : tách m瓜t c映m t瑛 thành t瑛ng ti院ng d詠a vào kh臼ang tr逸ng.

* Thu壱t toán :

void TachMangTieng(c映m t瑛) {

while(g員p ký t詠 kho違ng tr逸ng 8亥u tiên trong c映m t瑛) { // C逸t ph亥n 8亥u thành m瓜t ti院ng. // Gán c映m t瑛thành ph亥n sau. } } Ví d映 :

chu厩i 8亥u vào = “8瓜ng l詠c cho nh英ng ý t逢荏ng m噂i” tr違 v隠 là m違ng chu厩i ch泳a các ti院ng = {8瓜ng”;”l詠c”;”cho” “nh英ng”;”ý”;”t逢荏ng”;”m噂i”}

- HàmXacDinhTu( ) : g瓜p các ti院ng l衣i thành t瑛, so sánh trong t瑛"8k吋n ti院ng Vi羽t và ta s胤 l逢u l衣i các t瑛 này vào m違ng các t瑛.

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

* Thu壱t toán :

void XacDinhTu(m違ng các ti院ng) {

B1 : gán t瑛= ti院ng 8亥u tiên.

B2 : so sánh t瑛 có trong t瑛"8k吋n hay không.

B3 : n院u t瑛 có trong t瑛"8k吋n và có 2 ti院ng tr荏 lên thì ta s胤 l逢u l衣i. B4 : N院u trong m違ng ti院ng v磯n còn thì t瑛 := t瑛 + ti院ng ti院p theo. Ng逢嬰c l衣i k院t thúc hàm.

B5 : Quay l衣i B2 }

X噂i các m違ng ti院ng c栄a ví d映 trên sau khi g丑i hàm này thì ta s胤 có m違ng các t瑛 nh逢 sau:

o違ng chu厩i các t瑛={”8瓜ng l詠c”;”cho” “nh英ng”;”ý t逢荏ng”; ”m噂i”}

2.1.3 N噂p tách t瑛

Xây d詠ng h羽 th嘘ng tìm ki院m thông tin ti院ng Vi羽t d詠a trên các ch雨 m映c là các t瑛 ghép

N噂p tách t瑛 s胤 có nhi羽m v映 t衣o t壱p tin v<n b違n Xml t瑛 t壱p tin v<n b違n g嘘c, sau 8ó s胤 trích các t瑛 trong v<n b違n và cu嘘i cùng l逢u l衣i các t瑛 trích 8逢嬰c cùng v噂i các tài li羽u ch泳a t瑛"8ó thành t壱p tin Xml tách t瑛.

2.1.3.1 Ý ngh a c栄a các bi院n thành ph亥n:

• ttg : 8嘘i t逢嬰ng thu瓜c l噂p CTachTuGhep

2.1.3.2 Các hàm chính :

- HàmTaoXML( ) : chuy吋n m瓜t t壱p tin v<n b違n có c医u trúc thành t壱p tin XML * Thu壱t toán :

void TaoXML (t壱p tin v<n b違n) {

T衣o t壱p tin Xml 8吋 l逢u l衣i n瓜i dung t壱p tin v<n b違n. // D鵜ch con tr臼t壱p tin

Một phần của tài liệu he_thong_tim_kiem_thong_tin_tieng_viet (Trang 66)