Tôi nhận được nó ở một mức độ nào đó, nhưng tôi vẫn chưa thấy một ví dụ không mang lại nhiều câu hỏi hơn câu trả lời.Tôi không hiểu một thẻ YAML là gì
http://rhnh.net/2011/01/31/yaml-tutorial
# Set.new([1,2]).to_yaml
--- !ruby/object:Set
hash:
1: true
2: true
Tôi nhận được rằng chúng ta đang tuyên bố một thẻ Set. Tôi không hiểu bản đồ băm tiếp theo phải làm gì với nó. Chúng ta đang khai báo một lược đồ? Ai đó có thể cho tôi xem một ví dụ có nhiều khai báo thẻ không?
Tôi đã đọc qua spec: http://yaml.org/spec/1.2/spec.html#id2761292
%TAG ! tag:clarkevans.com,2002:
Đây có phải là tuyên bố một lược đồ? Có điều gì khác mà một trình phân tích cú pháp phải làm để phân tích cú pháp tệp thành công không? Một tệp lược đồ của một số loại?
http://www.yaml.org/refcard.html
Tag property: # Usually unspecified.
none : Unspecified tag (automatically resolved by application).
'!' : Non-specific tag (by default, "!!map"/"!!seq"/"!!str").
'!foo' : Primary (by convention, means a local "!foo" tag).
'!!foo' : Secondary (by convention, means "tag:yaml.org,2002:foo").
'!h!foo': Requires "%TAG !h! <prefix>" (and then means "<prefix>foo").
'!<foo>': Verbatim tag (always means "foo").
Tại sao nó có liên quan để có một thẻ chính và phụ, và tại sao thẻ thứ cấp tham khảo một URI? Vấn đề gì đang được giải quyết bằng cách có những thứ này?
Tôi dường như thấy rất nhiều "chúng là gì" và không "tại sao chúng ở đó" hoặc "chúng được sử dụng để làm gì".
Trong ví dụ đầu tiên của bạn, '# Set. new ([1,2]). to_yaml' thực ra là một chú thích * - đó là một câu lệnh ruby có thể xuất ra YAML bên dưới nó. – AlexFoxGill