{
    "$schema": "http://json-schema.org/draft-04/schema",
    "additionalProperties": false,
    "definitions": {
        "edition": {
            "additionalProperties": false,
            "properties": {
                "additional_properties": {
                    "$ref": "#/definitions/trait_additional_properties_json"
                },
                "edition_date": {
                    "_format": "date-time",
                    "description": "The machine-generated date that this edition was last updated (i.e., that the content item was published/unpublished to a particular destination.)",
                    "title": "Edition Date",
                    "type": "string"
                },
                "edition_display_date": {
                    "_format": "date-time",
                    "description": "The human-editable date that should be shown to readers as the 'date' for this content item. When viewing the story at this edition name directly, this will override whatever value is set for Display Date on the story directly. After an edition is created, subsequent updates to that edition will not change this date unless otherwise specified.",
                    "title": "Display Date (Edition)",
                    "type": "string"
                },
                "edition_first_publish_date": {
                    "_format": "date-time",
                    "description": "The machine-generated date that this edition was created for the first time (i.e., that the content item was first published.)",
                    "title": "First Published Date (Edition)",
                    "type": "string"
                },
                "edition_name": {
                    "description": "The machine-readable identifier of this edition. This should be the same as the key in 'editions' for the edition object.",
                    "title": "Edition Name",
                    "type": "string"
                },
                "edition_publish_date": {
                    "_format": "date-time",
                    "description": "The machine-editable date that should be shown to readers as the 'publish date' for this content item. When viewing the story at this edition name directly, this will override whatever value is set for Publish Date on the story directly. Every time an edition is updated (i.e. a story is republished) this date will also be updated unless otherwise specified.",
                    "title": "Publish Date (Edition)",
                    "type": "string"
                },
                "edition_published": {
                    "description": "If false, this edition has been deleted/unpublished.",
                    "title": "Publish Status",
                    "type": "boolean"
                },
                "edition_revision_id": {
                    "description": "The id of the revision that this edition was created from. Omitted if unpublished.",
                    "title": "Revision ID",
                    "type": "string"
                }
            },
            "required": [
                "edition_published",
                "edition_date",
                "edition_name"
            ]
        },
        "trait_additional_properties_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "additionalProperties": {},
            "description": "A grab-bag object for non-validatable data.",
            "title": "Has additional properties",
            "type": "object"
        }
    },
    "description": "The current published state of all editions of a content item as well as any scheduled publishing information. Machine-generated.",
    "properties": {
        "additional_properties": {
            "$ref": "#/definitions/trait_additional_properties_json"
        },
        "editions": {
            "description": "A map of edition names to the current publish state for that edition",
            "patternProperties": {
                "^[a-zA-Z0-9_]*$": {
                    "$ref": "#/definitions/edition"
                }
            },
            "properties": {
                "default": {
                    "$ref": "#/definitions/edition"
                }
            },
            "required": [
                "default"
            ],
            "type": "object"
        },
        "has_published_edition": {
            "description": "True if and only if at least one published edition exists for this content item.",
            "title": "Has Published Edition",
            "type": "boolean"
        },
        "scheduled_operations": {
            "additionalProperties": false,
            "description": "A map of lists of operations scheduled to be performed on this content item, sorted by operation type.",
            "properties": {
                "publish_edition": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "additional_properties": {
                                "$ref": "#/definitions/trait_additional_properties_json"
                            },
                            "operation": {
                                "enum": [
                                    "publish_edition"
                                ]
                            },
                            "operation_date": {
                                "description": "The date that this operation will be performed.",
                                "title": "Operation Date",
                                "type": "string"
                            },
                            "operation_edition": {
                                "description": "The name of the edition this operation will publish to.",
                                "title": "Edition Name (Operation)",
                                "type": "string"
                            },
                            "operation_revision_id": {
                                "description": "The revision id to be published.",
                                "title": "Revision ID (Operation)",
                                "type": "string"
                            }
                        },
                        "type": "object"
                    },
                    "type": "array"
                },
                "unpublish_edition": {
                    "items": {
                        "additionalProperties": false,
                        "properties": {
                            "additional_properties": {
                                "$ref": "#/definitions/trait_additional_properties_json"
                            },
                            "operation": {
                                "enum": [
                                    "unpublish_edition"
                                ]
                            },
                            "operation_date": {
                                "description": "The date that this operation will be performed.",
                                "title": "Operation Date",
                                "type": "string"
                            },
                            "operation_edition": {
                                "description": "The name of the edition this operation will publish to.",
                                "title": "Edition Name (Operation)",
                                "type": "string"
                            }
                        },
                        "type": "object"
                    },
                    "type": "array"
                }
            },
            "title": "Scheduled Operations",
            "type": "object"
        }
    },
    "required": [
        "has_published_edition"
    ],
    "title": "Publishing Information",
    "type": "object"
}