FANDOM


Từ điển tiếng Việt của VLSP được xây dựng dưới dạng XML.

Một vài thao tác bằng Python để xử lý định dạng XML, qua đó sẽ dễ dàng chuyển sang định dạng mình mong muốn.

""" Convert Vietnamese Dic from XML format to CSV format """
import os, os.path
from xml.etree.ElementTree import *

Từ điển từ VLSP được chia thành các file nhỏ hơn, theo kí tự đầu tiên. Tổng cộng có 22 file nhỏ hơn.

Sử dụng Python để lấy tên tất cả các file nhỏ :

dir_path = ""  # Đường dẫn đến thư mục chứa các file từ điển
print os.listdir(dir_path) 
fjoin = os.path.join  # Nên dùng hàm này thay vì sử dụng cộng 2 chuỗi
filenames = [fjoin(dir_path, f) for f in os.listdir(dir_path)]

XML của từ điển có dạng :

<Document>
<Entry>
<HeadWord>a</HeadWord>
<Morphology>
    <WordType>symbol</WordType>
</Morphology>
<Syntactic>
    <Category>N</Category>
    <SubCategory>Nt</SubCategory>
</Syntactic>
<Semantic>
    <def>con chữ thứ nhất của bảng chữ cái chữ quốc ngữ</def>
</Semantic>
</Entry>

Thẻ <HeadWord> miêu tả "từ".

Thẻ <Morphology> miêu tả "chủng loại" của từ : từ đơn, từ ghép, từ láy,...

Thẻ <Syntactic> miêu tả "từ loại" : danh từ, tính từ, ... Gồm 2 loại : <Category>+<SubCategory>.

Các thẻ khác không quá quan trọng.

for filename in filenames : 
    fo = open("VietnameseDic.csv","a")
    tree = parse(filename)
    elem = tree.getroot()
    for entry in elem.getiterator("Entry"):
        headword = entry.findtext("HeadWord")
        label = entry[2].findtext("Category")
         sublable = entry[2].findtext("SubCategory")

Một vấn đề đáng tiếc là không có sự thống nhất về nhãn từ loại giữa corpus và từ điển. Corpus sử dụng bộ nhãn gồm 18 nhãn, trong khi từ điển sử dụng bộ nhãn gồm 28 nhãn (tính cả các nhãn phụ).

Biến label và sublabel, bạn nên thay đổi sao cho phù hợp.

Với từ điển label (Category) có tổng cộng 13 loại, sublabel (SubCategory) có tổng cộng 28 loại.

Tham khảo

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.