Chuyển JSON sang YAML JavaScript Object Notation ↔ YAML Ain't Markup Language Miễn phí Trực tuyến An toàn
Thả vào một tệp JSON rồi mang YAML đi. Việc đọc và ghi diễn ra ngay đây, trong trình duyệt của bạn, nên tệp không rời khỏi thiết bị — còn chuyến đi ấy giữ được gì và không giữ được gì thì viết rõ bên dưới, chứ không để bạn tự phát hiện.
Chuyển đổi tệp của bạn
Thả một tệp JSON vào đây, hoặc chọn một tệp.
Tệp của bạn không rời khỏi thiết bị này. Mọi thứ chạy trong trình duyệt của bạn.
Không tải gì lên
Chuyển từ JSON
Chuyển sang JSON
Những định dạng này đến từ đâu
CSV là định dạng cổ nhất và ít chuẩn hóa nhất: một bảng viết thành những dòng văn bản, dùng từ thập niên 1970 mà mãi năm 2005 mới được mô tả thành văn, khi mọi chương trình đã tự quyết lấy đâu là dấu phân cách và khi nào đặt dấu nháy. XML lớn lên từ SGML năm 1998, dành cho những tài liệu phải mang cấu trúc chặt và được kiểm theo một lược đồ. JSON được Douglas Crockford rút ra từ JavaScript quanh năm 2001, cố ý tỉa gọn chỉ còn đối tượng, mảng, số và chuỗi — chính sự tối giản ấy khiến nó chiếm lĩnh web. YAML là người anh em dễ đọc của nó, nơi việc thụt đầu dòng làm thay phần việc của các dấu ngoặc. Khi đổi qua lại giữa chúng, chỉ một điều là đáng kể: CSV phẳng, một lưới gồm hàng và cột, còn JSON, XML và YAML là những cái cây.
Bạn gặp chúng ở đâu
CSV là thứ bảng tính xuất ra, và là thứ kế toán, sàn bán hàng hay sao kê ngân hàng đưa cho bạn. JSON là thứ các dịch vụ web nói với nhau, và ngày càng là thứ dùng để viết tệp cấu hình. XML sống sót trong các hệ thống doanh nghiệp cũ, trong các chuẩn hóa đơn, và ngay bên trong chính các định dạng văn phòng. YAML là nơi con người viết thiết lập bằng tay. Đổi qua lại giữa chúng là công việc hằng ngày, đưa dữ liệu từ nơi nó sinh ra đến nơi người ta cần nó.
Những câu hỏi thường gặp
Tệp CSV của tôi mở trong Excel thành một cột duy nhất. Vì sao?
Vì bảng tính của bạn trông đợi một dấu phân cách khác. Excel đi theo dấu phân cách danh sách trong thiết lập vùng của máy, mà đó là dấu chấm phẩy ở bất cứ nơi nào dấu phẩy đã dùng làm dấu thập phân — tức phần lớn châu Âu lục địa. Khi ấy một tệp ngăn bằng dấu phẩy trông như một cột chữ. Hãy dùng hộp thoại nhập và nói rõ dấu phân cách, thay vì nhấp đúp vào tệp. Cũng chính thiết lập vùng ấy khiến 3.5 đôi khi biến thành một ngày tháng.
Vì sao JSON lồng nhau của tôi không thành một bảng tính gọn gàng được?
Vì bảng tính thì phẳng còn JSON là một cái cây. Một hàng chứa được một giá trị cho mỗi cột; một đối tượng JSON có thể chứa một danh sách nằm trong một trường nằm trong một danh sách khác. Đổi nghĩa là phải chọn cách làm phẳng chỗ ấy: hoặc nối các tên lồng nhau thành một tiêu đề cột dài, hoặc lặp lại hàng cha một lần cho mỗi con. Cả hai đều là nhượng bộ, và không cách nào tự hoàn nguyên được — vì thế đi ngược từ bảng tính về hình dạng ban đầu thường cần đến một quyết định của con người.
Tệp có mất chất lượng không?
Còn tùy hai định dạng chứa được những gì. Đổi giữa những định dạng lưu cùng một thứ — PNG sang BMP, WAV sang FLAC — thì chẳng mất gì. Đổi sang định dạng vứt bớt thông tin để tiết kiệm chỗ, như JPEG hay MP3, thì mỗi lần mất đi một ít, và đổi ngược lại cũng không lấy về được. Ở chỗ có thể chọn, trang này nghiêng về giữ chất lượng gốc hơn là tạo ra tệp nhỏ nhất.
Tệp của tôi có được tải lên đâu không?
Không. Việc chuyển đổi diễn ra bên trong trình duyệt của bạn, trên chính máy của bạn; tệp không bao giờ rời khỏi đó, và ở đây cũng chẳng có máy chủ nào để nhận nó. Vì vậy một tệp lớn bị giới hạn bởi bộ nhớ của chính bạn chứ không phải bởi việc tải lên; và vì vậy không thứ gì bạn chuyển đổi có thể xuất hiện trong nhật ký của bất kỳ ai — kể cả của chúng tôi. Các công cụ âm thanh và video thì có tải bộ máy chuyển đổi của chúng từ trang này lần đầu bạn dùng — chừng ba mươi megabyte, chỉ một lần; sau đó công việc vẫn diễn ra hoàn toàn trên máy của bạn.
Vì sao người ta chuyển JSON sang YAML
JSON là ký hiệu mà các chương trình yêu thích: chặt chẽ, gọn và được mọi ngôn ngữ hiểu. Nhưng nó không tử tế với con người. Một tệp JSON dài là một bụi rậm ngoặc nhọn, ngoặc vuông, dấu nháy và dấu phẩy, không chỗ cho chú thích và một dấu phẩy thừa ở cuối có thể làm hỏng mọi thứ. YAML là ký hiệu mà người ta chọn khi phải đọc và sửa dữ liệu bằng tay. Nó dùng thụt lề thay cho ngoặc nhọn, cho phép chú thích và đọc gần như một dàn ý, đó là lý do nó trở thành lựa chọn ưa thích cho cấu hình: quy trình xây dựng, định nghĩa container, tệp triển khai, cài đặt của trang tĩnh và công cụ tài liệu. Khi dữ liệu đến dưới dạng JSON mà bạn muốn làm việc với nó ở dạng dễ đọc, cần có một phép chuyển đổi. Đó là lý do người ta chuyển JSON sang YAML.
Những tình huống này là chuyện thường ngày. Một lập trình viên có đầu ra của một công cụ ở dạng JSON và muốn biến nó thành tệp cấu hình. Một nhóm đang chuyển cài đặt từ hệ thống này sang hệ thống khác và thích một định dạng dễ đọc. Một người viết muốn đọc cấu trúc của câu trả lời API mà không bị rối. Một sinh viên muốn xem ngoặc nhọn ánh xạ sang thụt lề thế nào. Trong mọi trường hợp, dữ liệu vẫn là một, và chỉ có ký hiệu thay đổi.
Trang này chuyển JSON sang YAML ngay trong trình duyệt của bạn. Tệp của bạn được đọc và ghi tại đây, nên nó không bao giờ rời khỏi thiết bị, điều quan trọng với các tệp cấu hình, vốn thường chứa địa chỉ, tên hệ thống nội bộ và đôi khi cả bí mật. Và trang nói trước cho bạn biết việc chuyển đổi giữ lại gì và không giữ được gì, thay vì để bạn tự phát hiện. Bên dưới bạn sẽ thấy việc chuyển đổi hoạt động ra sao, điều gì xảy ra với lồng nhau sâu và chuỗi dài và cách có được kết quả gọn gàng.
Việc chuyển đổi hoạt động thế nào
Cùng các dạng trong cả hai ký hiệu
JSON của bạn được đọc bên trong trình duyệt, và cấu trúc của nó được ghi ra dưới dạng YAML. Hai bên chứa cùng các dạng, và mọi thứ được giữ theo cả hai chiều: ánh xạ, danh sách, chuỗi, số, giá trị đúng sai và null. Một đối tượng trong JSON thành một ánh xạ trong YAML, một mảng thành một chuỗi tuần tự, và các giá trị đơn giữ nguyên kiểu. Một khóa port với số 8080 cho ra port: 8080, và một khóa enabled với true cho ra enabled: true.
Cấu trúc lặp được viết đầy đủ
YAML có cách tránh lặp lại, bằng neo và bí danh. Bộ chuyển đổi không dùng nó. Các cấu trúc lặp được viết đầy đủ thay vì dưới dạng neo, nên tệp đọc thẳng một mạch từ trên xuống. Điều này làm YAML dài hơn một chút, nhưng không có gì trong đó cần tra cứu ở nơi khác, và người đọc nào cũng hiểu được từng khối riêng.
Các khóa giữ thứ tự
Các khóa giữ thứ tự như JSON có. YAML đọc theo cùng trình tự với nguồn, nên ai biết JSON sẽ tìm được đường ngay.
Những gì được giữ lại
Mọi thứ là dữ liệu
Mọi thứ đều được giữ, theo cả hai chiều: ánh xạ, danh sách, chuỗi, số, giá trị đúng sai và null. Nếu nó là một giá trị trong JSON của bạn, nó là một giá trị trong YAML, với cùng kiểu.
Chuỗi cần được bảo vệ
Một số chuỗi sẽ bị đọc sai trong YAML nếu viết trần: từ true, một số trong dấu nháy, một đoạn văn bản chứa dấu hai chấm. Bộ chuyển đổi đặt các chuỗi như vậy trong dấu nháy để chúng quay lại là chuỗi và không biến thành giá trị đúng sai hay số. Một chuỗi JSON ghi "true" vẫn là chuỗi trong YAML.
Unicode
Chữ có dấu, ký hiệu và ký tự của các bảng chữ cái khác được giữ nguyên, nên một tệp nhiều ngôn ngữ vẫn đọc được.
Điều bạn nên biết trước khi chuyển JSON sang YAML
Lồng sâu nghĩa là thụt lề sâu
YAML đặt ý nghĩa vào thụt lề, nên một giá trị bị lồng sâu thành một tệp thụt lề sâu: đọc được, nhưng không ngắn. Một cây JSON tám cấp cho ra những dòng bắt đầu rất xa lề trái. Nếu điều đó trở nên cồng kềnh, hãy cân nhắc làm phẳng cấu trúc ở nguồn.
Chuỗi dài được ngắt dòng
Chuỗi dài được ngắt ở khoảng một trăm cột, điều này đổi chỗ các ngắt dòng mà không đổi giá trị. Một đoạn văn vốn là một dòng dài duy nhất trong JSON hiện ra trên nhiều dòng trong YAML, nhưng vẫn là cùng một văn bản. Chương trình đọc YAML nhận được chuỗi gốc.
Không thể bịa ra chú thích
YAML cho phép chú thích, nhưng JSON không mang chú thích nào, nên kết quả không có. Bạn có thể thêm lời giải thích bằng tay sau đó, đó là một trong những lý do chính để có tệp ở dạng YAML ngay từ đầu.
Cách chuyển JSON sang YAML tại đây
Thêm tệp của bạn
Thả tệp JSON lên trang hoặc chọn từ thiết bị. Nó được đọc bên trong trình duyệt và không được tải lên.
Chuyển đổi
Nhấn nút. Một tệp cỡ thông thường mất một lát. Hãy để trang mở cho đến khi xong.
Tải xuống và kiểm tra
Tải YAML xuống và mở nó trong trình soạn thảo văn bản. Hãy nhìn phần đầu và phần cuối, và kiểm tra cấu trúc và các kiểu có như bạn mong đợi.
Nhìn kỹ hơn vào JSON và YAML
Hai ký hiệu cho cùng dữ liệu
JSON được thiết kế để chương trình dễ đọc và ghi. YAML được thiết kế để con người dễ dùng. Chúng chồng khớp đến mức JSON gần như là một tập con của YAML, và một trình đọc YAML thường đọc được JSON. Vì vậy chuyển JSON sang YAML không phải là đổi dữ liệu mà là mặc cho nó áo mới, trong một dạng có chỗ cho ghi chú và không bị rối vì dấu câu.
Vì sao thụt lề cần cẩn thận
Vì YAML dựa vào thụt lề, một dòng lệch hàng làm đổi nghĩa. Bộ chuyển đổi viết thụt lề nhất quán, bằng dấu cách và cùng độ rộng ở mỗi cấp, nên tệp đúng như khi tạo ra. Khi sửa sau này, hãy giữ cùng độ rộng, và tránh dấu tab, thứ YAML không cho dùng để thụt lề.
Dễ đọc nhưng không phải lúc nào cũng ngắn hơn
YAML thường được mô tả là gọn hơn JSON, vì nó bỏ ngoặc nhọn và dấu nháy quanh khóa. Với dữ liệu phẳng điều này đúng. Với dữ liệu lồng sâu, thụt lề có thể làm nó dài hơn tính theo ký tự. Cái được là ở khả năng đọc, không phải ở kích thước.
Các tình huống thường gặp chi tiết
Biến đầu ra của công cụ thành cấu hình
Các công cụ thường in cài đặt hay kết quả của chúng dưới dạng JSON. Hãy chuyển JSON sang YAML, thêm chú thích và giữ nó làm tệp cấu hình mà mọi người duy trì.
Chuyển cài đặt giữa các hệ thống
Chuyển một cấu hình từ hệ thống dùng JSON sang hệ thống dùng YAML chỉ là một phép chuyển đổi, rồi kiểm tra rằng đích chấp nhận các khóa.
Đọc một câu trả lời API
Câu trả lời của một API có thể dài hàng trăm dòng ngoặc nhọn. Trong YAML, cùng dữ liệu đọc như một dàn ý, và bạn thấy cấu trúc trong một cái nhìn.
Giảng dạy và tài liệu
Cho thấy cùng dữ liệu ở cả hai ký hiệu là cách tốt để dạy dữ liệu có cấu trúc hoạt động thế nào. Tài liệu dùng ví dụ YAML thường dễ đọc hơn.
Lời khuyên thực tế trước khi chuyển JSON sang YAML
Kiểm tra JSON hợp lệ
Một dấu phẩy thừa hay một dấu nháy thiếu sẽ dừng việc chuyển đổi. Nếu trang báo lỗi, hãy mở tệp trong trình soạn thảo làm nổi bật lỗi JSON và sửa dòng mà nó chỉ ra.
Làm phẳng khi có thể
Nếu cấu trúc sâu hơn mức cần thiết, hãy đơn giản hóa nó trước. Cấu trúc phẳng hơn cho ra YAML dễ đọc và dễ sửa hơn.
Nghĩ về bên sử dụng
Hãy xem cái gì sẽ đọc YAML. Một số công cụ mong đợi tên khóa và kiểu cụ thể, và điều chỉnh JSON từ trước dễ hơn sửa YAML sau.
Tệp lớn
Mọi thứ chạy trên thiết bị của bạn, nên một tệp rất lớn cần bộ nhớ. Với tệp nhiều megabyte, hãy dùng máy tính, và chia dữ liệu nếu trang gặp khó.
Những câu hỏi người ta hỏi trước khi chuyển đổi
Dữ liệu của tôi có bị thay đổi không?
Không. Mọi thứ đều được giữ theo cả hai chiều: ánh xạ, danh sách, chuỗi, số, giá trị đúng sai và null.
Vì sao chuỗi dài của tôi bị chia ra nhiều dòng?
Chuỗi dài được ngắt ở khoảng một trăm cột. Điều này đổi chỗ các ngắt dòng mà không đổi giá trị.
Vì sao tệp của tôi thụt lề nhiều thế?
Vì dữ liệu lồng sâu, và YAML biểu đạt sự lồng nhau bằng thụt lề.
Các neo ở đâu?
Các cấu trúc lặp được viết đầy đủ thay vì dưới dạng neo, nên tệp đọc thẳng một mạch từ trên xuống.
Tệp của tôi có được tải lên không?
Không. Việc chuyển đổi chạy trong trình duyệt của bạn và tệp không bao giờ rời khỏi thiết bị.
Tôi có thể quay lại JSON không?
Có. YAML sang JSON đọc lại tệp, dù những chú thích bạn đã thêm sẽ không còn.
Chọn khôn ngoan khi chuyển JSON sang YAML
Có thật sự cần YAML không?
Nếu công cụ nhận đọc JSON, hãy giữ JSON. Chỉ chuyển đổi khi người ta phải đọc và sửa tệp, hoặc khi công cụ đòi YAML.
Các đích khác
Nếu đích là một tệp đánh dấu, JSON sang XML có thể tiếp theo. Cho bảng, JSON sang CSV và JSON sang XLSX phục vụ bảng tính.
Giữ lại JSON
JSON là bản gốc nếu nó đến từ một chương trình. Hãy giữ nó, và tạo lại YAML khi nó thay đổi.
Có kết quả tốt sau khi chuyển đổi
Thêm chú thích
Kết quả không có chú thích nào, và đây là nơi YAML tỏa sáng. Hãy thêm một ghi chú ngắn phía trên mỗi khối để nói nó làm gì và những giá trị nào được phép.
Kiểm tra các kiểu
Hãy xem các giá trị như phiên bản, mã và cờ. Chắc chắn chúng là chuỗi khi bạn muốn chuỗi và là số khi bạn muốn số.
Giữ thụt lề nhất quán
Khi sửa, hãy dùng dấu cách và giữ cùng độ rộng ở mỗi cấp. Một trình soạn thảo hiển thị khoảng trắng và kiểm tra YAML sẽ cứu bạn khỏi lỗi.
Chuẩn bị JSON để nó chuyển đổi tốt
Giữ cho đều đặn
Khi bạn chuyển JSON sang YAML, dữ liệu đều đặn chuyển tốt nhất: khóa nhất quán và kiểu rõ ràng. Dữ liệu không đều cho ra kết quả đúng nhưng lộn xộn.
Đặt tên khóa rõ ràng
Người ta sẽ đọc YAML, nên hãy chọn khóa nói lên ý nghĩa của chúng. Một cấu hình dễ duy trì hơn khi tên của nó giản dị.
Thử trên một phần nhỏ trước
Nếu tệp lớn, hãy lấy một đoạn vào một tệp thử và chuyển nó. Nhìn nhanh kết quả cho thấy cấu trúc có như bạn mong đợi không.
Làm việc với YAML sau khi chuyển JSON sang YAML
Thêm những ghi chú mà JSON không chứa được
Việc đầu tiên nên làm với một tệp mới chuyển là đọc từ đầu và thêm chú thích ở chỗ một người lạ sẽ bối rối. Một dòng ngắn phía trên một phần nói nó điều khiển gì đáng giá hơn một trang tài liệu để ở nơi khác, vì nó nằm cạnh thứ nó mô tả. Đây là lợi thế chính bạn có được khi chuyển JSON sang YAML.
Nhóm các cài đặt liên quan
Các khóa giữ thứ tự chúng có trong JSON, có thể là thứ tự mà một chương trình tình cờ phát ra. Trong YAML bạn được tự do sắp xếp lại để các cài đặt liên quan nằm cạnh nhau, với một dòng trống giữa các nhóm. Vì thứ tự khóa trong một ánh xạ không mang ý nghĩa với hầu hết người đọc, điều này an toàn, nhưng hãy kiểm tra công cụ bạn dùng phòng khi nó để ý.
Kiểm tra công cụ nhận mong đợi gì
Một tệp YAML hợp lệ không nhất thiết là một cấu hình hợp lệ. Công cụ mong đợi các khóa và kiểu cụ thể, và một số nghiêm ngặt với khóa lạ. Sau khi chuyển đổi, hãy so tệp với tài liệu của công cụ, và chạy trình kiểm tra riêng của nó nếu có.
Dùng quản lý phiên bản
Cấu hình YAML dễ so sánh từng dòng, khiến nó rất hợp với quản lý phiên bản. Hãy commit tệp đã chuyển và để đồng nghiệp thấy mỗi thay đổi như một khác biệt rõ ràng, điều khó hơn nhiều với một dòng JSON nén.
Cẩn thận với bí mật
JSON xuất từ công cụ đôi khi bao gồm token và mật khẩu. Vì việc chuyển đổi diễn ra trong trình duyệt, không có gì rời thiết bị của bạn, nhưng tệp YAML sẽ chứa cùng những bí mật. Hãy xóa chúng, hoặc chuyển đến nơi an toàn hơn, trước khi commit hay chia sẻ tệp.
Để mắt đến thụt lề khi sửa
Khi bạn bắt đầu sửa bằng tay, rủi ro chính là một dòng lệch một dấu cách. Hãy dùng trình soạn thảo hiển thị khoảng trắng và kiểm tra YAML khi bạn gõ, và giữ cùng độ rộng ở mỗi cấp, như bộ chuyển đổi đã làm.
Chuyển đổi lại khi nguồn thay đổi
Nếu JSON do một chương trình tạo ra và thỉnh thoảng thay đổi, hãy chuyển JSON sang YAML lại cho mỗi phiên bản mới, và gộp chú thích của bạn từ tệp cũ vào tệp mới. Một công cụ so sánh biến việc này thành chuyện vài phút.
Quyền riêng tư và cách xử lý
Vì sao chuyển đổi cục bộ quan trọng với cấu hình
Các tệp cấu hình thường chứa địa chỉ, tên hệ thống nội bộ và đôi khi cả khóa và mật khẩu. Nhiều bộ chuyển đổi trực tuyến tải tệp của bạn lên máy chủ, xử lý và gửi kết quả về, và trong một thời gian một bản sao nằm trên một máy bạn không kiểm soát. Ở đây trình duyệt của chính bạn làm việc, nên tệp ở lại trên thiết bị.
Điều gì xảy ra khi bạn rời đi
Khi bạn đóng trang, tệp đã chuyển biến mất khỏi trình duyệt, nên hãy tải nó xuống trước. Không có gì về tệp của bạn được giữ lại.
Nếu có gì trục trặc
Trang báo tệp không phải JSON hợp lệ
Có thể có một dấu phẩy thừa, một dấu nháy thiếu hay một ngoặc không đóng. Hãy mở tệp trong trình soạn thảo làm nổi bật lỗi JSON và sửa dòng mà nó chỉ ra.
Công cụ từ chối YAML
Hãy kiểm tra tên khóa và các kiểu nó mong đợi. YAML hợp lệ, nhưng công cụ có thể muốn tên khác hay cấu trúc khác.
Trang bị đơ với tệp lớn
Mọi thứ chạy trên thiết bị của bạn, và một tệp lớn cần bộ nhớ. Hãy thử lại trên máy tính, hoặc chia dữ liệu.
Các công cụ liên quan
Cùng họ công cụ này bao quát các việc lân cận. Để quay lại, hãy dùng YAML sang JSON. Cho đánh dấu, JSON sang XML và XML sang JSON chuyển đổi giữa hai dạng đó. Cho bảng, có JSON sang CSV, CSV sang JSON, JSON sang XLSX và XLSX sang JSON.
Một ví dụ thực tế
Giả sử một công cụ in cài đặt của nó thành tệp JSON 150 dòng, và bạn muốn giữ chúng trong kho mã của mình như một cấu hình mà đồng nghiệp có thể đọc và bình luận. Bạn thả tệp vào đây và nhấn nút. Một lát sau bạn tải về một YAML khoảng 90 dòng trong đó cấu trúc đọc như một dàn ý. Bạn thêm một chú thích phía trên mỗi phần, commit nó và báo nhóm nơi để chỉnh sửa. JSON vẫn còn như đầu ra của công cụ.
Một danh sách kiểm tra ngắn
Trước khi chuyển đổi
Kiểm tra JSON hợp lệ. Đơn giản hóa lồng sâu nếu có thể. Giữ lại JSON.
Trong khi chuyển đổi
Ở lại trang cho đến khi tệp sẵn sàng.
Sau khi chuyển đổi
Mở YAML, kiểm tra cấu trúc và các kiểu, thêm chú thích và thử nó với công cụ sẽ đọc nó.
Những lỗi thường gặp
Mong đợi một tệp ngắn hơn
Lồng sâu tạo ra thụt lề sâu. YAML dễ đọc hơn, không phải lúc nào cũng nhỏ hơn.
Sửa bằng dấu tab
YAML không cho dùng tab để thụt lề. Hãy dùng dấu cách.
Mất nguồn
Nếu JSON đến từ một chương trình, hãy giữ nó và tạo lại YAML khi nó thay đổi.
Tệp của bạn ở lại trên thiết bị
Việc chuyển đổi diễn ra cục bộ. Tệp của bạn được trình duyệt của chính bạn đọc, viết lại ở đó và trao lại dưới dạng YAML. Không có gì được tải lên, nên không có bản sao nào nằm trên máy chủ và không ai khác đọc được. Với cấu hình có nội dung riêng tư, đó là cách an toàn để chuyển JSON sang YAML.
Tóm tắt
Để chuyển JSON sang YAML tại đây, hãy thả tệp và nhấn nút. Nó được đọc và ghi trong trình duyệt của bạn, nên tệp không bao giờ rời khỏi thiết bị. Mọi thứ đều được giữ, theo cả hai chiều: ánh xạ, danh sách, chuỗi, số, giá trị đúng sai và null. Các cấu trúc lặp được viết đầy đủ thay vì dưới dạng neo, nên tệp đọc thẳng một mạch từ trên xuống. YAML đặt ý nghĩa vào thụt lề, nên một giá trị bị lồng sâu thành một tệp thụt lề sâu, đọc được nhưng không ngắn. Chuỗi dài được ngắt ở khoảng một trăm cột, điều này đổi chỗ các ngắt dòng mà không đổi giá trị. Các khóa giữ thứ tự như JSON có.