fluent-syntax 0.9.0

Parser/Serializer tools for Fluent Syntax.
Documentation
{
    "type": "Resource",
    "body": [
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key01"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value"
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key02"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value"
                    }
                ]
            },
            "attributes": [
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute"
                            }
                        ]
                    }
                }
            ],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key02"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value"
                    }
                ]
            },
            "attributes": [
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr1"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute 1"
                            }
                        ]
                    }
                },
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr2"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute 2"
                            }
                        ]
                    }
                }
            ],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key03"
            },
            "value": null,
            "attributes": [
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute"
                            }
                        ]
                    }
                }
            ],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key04"
            },
            "value": null,
            "attributes": [
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr1"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute 1"
                            }
                        ]
                    }
                },
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr2"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute 2"
                            }
                        ]
                    }
                }
            ],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key05"
            },
            "value": null,
            "attributes": [
                {
                    "type": "Attribute",
                    "id": {
                        "type": "Identifier",
                        "name": "attr1"
                    },
                    "value": {
                        "type": "Pattern",
                        "elements": [
                            {
                                "type": "TextElement",
                                "value": "Attribute 1"
                            }
                        ]
                    }
                }
            ],
            "comment": {
                "type": "Comment",
                "content": "     <  whitespace  >"
            }
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key06"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "Placeable",
                        "expression": {
                            "value": "",
                            "type": "StringLiteral"
                        }
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Comment",
            "content": "JUNK Missing value"
        },
        {
            "type": "Junk",
            "annotations": [],
            "content": "key07 =\n\n"
        },
        {
            "type": "Comment",
            "content": "JUNK Missing ="
        },
        {
            "type": "Junk",
            "annotations": [],
            "content": "key08\n\n"
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "KEY09"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value 09"
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key-10"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value 10"
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key_11"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value 11"
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key-12-"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value 12"
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Message",
            "id": {
                "type": "Identifier",
                "name": "key_13_"
            },
            "value": {
                "type": "Pattern",
                "elements": [
                    {
                        "type": "TextElement",
                        "value": "Value 13"
                    }
                ]
            },
            "attributes": [],
            "comment": null
        },
        {
            "type": "Comment",
            "content": "JUNK Invalid id"
        },
        {
            "type": "Junk",
            "annotations": [],
            "content": "0err-14 = Value 14\n\n"
        },
        {
            "type": "Comment",
            "content": "JUNK Invalid id"
        },
        {
            "type": "Junk",
            "annotations": [],
            "content": "err-15? = Value 15\n\n"
        },
        {
            "type": "Comment",
            "content": "JUNK Invalid id"
        },
        {
            "type": "Junk",
            "annotations": [],
            "content": "err-ąę-16 = Value 16\n"
        }
    ]
}