Dữ liệu nửa cấu trúc


Dữ liệu nửa cấu trúc (tiếng Anh: Semi-structured data) là loại dữ liệu tự mô tả và không có giản đồ (schema), nghĩa là không có mô tả riêng biệt về kiểu và cấu trúc của dữ liệu. Thay vào đó, trong dữ liệu nửa cấu trúc, ta trực tiếp mô tả dữ liệu bằng cách sử dụng một loại cú pháp đơn giản.

Ví dụ, dưới đây là dữ liệu về ba người.

{người:
 {tên: "An", điện_thoại: 1234567, email: "an@abc.com"}.
 người:
 {tên: {tên_riêng: "Bình", tên_họ: "Lê"}, 
 điện thoại: 37654321, 
 email: "binh@xyz.com"
 }.
 người:
 {tên: "Cường", điện_thoại: 1726354, chiều_cao: 170}.
}

Ví dụ trên tương đương với cấu trúc đồ thị (cây) sau:

Biểu diễn ví dụ dưới dạng đồ thị

Lưu ý rằng các bộ dữ liệu (tuple) người không bắt buộc phải thuộc cùng một kiểu. Một trong những thế mạnh của dữ liệu nửa cấu trúc là khả năng đáp ứng các đa dạng về cấu trúc. Mặc dù hoàn toàn có thể xây dựng và truy vấn các đồ thị hoàn toàn ngẫu nhiên, ta thường làm việc với các cấu trúc "gần với" một kiểu nào đó. Các khác biệt nhỏ so với "kiểu dữ liệu" đó thường bao gồm thiếu dữ liệu, lặp trường dữ liệu, hoặc các thay đổi nhỏ trong biểu diễn dữ liệu như trong ví dụ trên.

Tham khảo sửa