{
    "$schema": "http://json-schema.org/draft-04/schema",
    "definitions": {
        "___utils_reference_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "additionalProperties": false,
            "description": "This represents a reference to external content that should be denormalized",
            "properties": {
                "_id": {
                    "$ref": "#/definitions/trait_id_json"
                },
                "additional_properties": {
                    "$ref": "#/definitions/trait_additional_properties_json"
                },
                "alignment": {
                    "$ref": "#/definitions/trait_alignment_json"
                },
                "channels": {
                    "$ref": "#/definitions/trait_channel_json"
                },
                "referent": {
                    "additionalProperties": false,
                    "dependencies": {
                        "website": {
                            "properties": {
                                "type": {
                                    "enum": [
                                        "section"
                                    ],
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "properties": {
                        "id": {
                            "description": "The id passed to the provider to retrieve an ANS document",
                            "type": "string"
                        },
                        "provider": {
                            "description": "A URL that can resolve the id into an ANS element",
                            "type": "string"
                        },
                        "referent_properties": {
                            "additionalProperties": {},
                            "description": "An object for key-value pairs that should override the values of keys with the same name in the denormalized object",
                            "type": "object"
                        },
                        "service": {
                            "description": "The type of interaction the provider expects. E.g., 'oembed'",
                            "type": "string"
                        },
                        "type": {
                            "description": "The ANS type that the provider should return.",
                            "type": "string"
                        },
                        "website": {
                            "description": "The website which the referenced id belongs to. Currently supported only for sections.",
                            "type": "string"
                        }
                    },
                    "required": [
                        "id"
                    ],
                    "type": "object"
                },
                "subtype": {
                    "$ref": "#/definitions/trait_subtype_json"
                },
                "type": {
                    "enum": [
                        "reference"
                    ],
                    "type": "string"
                }
            },
            "required": [
                "type",
                "referent"
            ],
            "title": "Representation of a normalized element",
            "type": "object"
        },
        "___utils_section_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "additionalProperties": false,
            "description": "A hierarchical section in a taxonomy. In the Arc ecosystem, these are stored in the arc-site-service.",
            "properties": {
                "_id": {
                    "$ref": "#/definitions/trait_id_json"
                },
                "_website": {
                    "$ref": "#/definitions/trait_website_json"
                },
                "additional_properties": {
                    "$ref": "#/definitions/trait_additional_properties_json"
                },
                "description": {
                    "description": "A short description or tagline about this site",
                    "type": "string"
                },
                "name": {
                    "description": "The name of this site",
                    "type": "string"
                },
                "parent": {
                    "description": "The id of this section's parent section in various commonly-used hierarchies, where available.",
                    "properties": {
                        "default": {
                            "type": "string"
                        }
                    },
                    "type": "object"
                },
                "parent_id": {
                    "description": "The id of this section's parent section in the default hierarchy, if any.",
                    "type": "string"
                },
                "path": {
                    "description": "The url path to this site",
                    "type": "string"
                },
                "primary": {
                    "description": "Is this the primary site?",
                    "type": "boolean"
                },
                "type": {
                    "enum": [
                        "section"
                    ]
                },
                "version": {
                    "$ref": "#/definitions/trait_version_json"
                }
            },
            "required": [
                "type",
                "version",
                "name"
            ],
            "title": "Section",
            "type": "object"
        },
        "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"
        },
        "trait_alignment_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "A property used to determine horizontal positioning of a content element relative to the elements that immediately follow it in the element sequence.",
            "enum": [
                "left",
                "right",
                "center"
            ],
            "title": "Alignment",
            "type": "string"
        },
        "trait_channel_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "An optional list of output types for which this element should be visible",
            "items": {
                "type": "string"
            },
            "title": "Channel trait",
            "type": "array"
        },
        "trait_id_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "A globally unique identifier of the content in the ANS repository.",
            "title": "Globally Unique ID trait",
            "type": "string"
        },
        "trait_subtype_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "A user-defined categorization method to supplement type. In Arc, this field is reserved for organization-defined purposes, such as selecting the PageBuilder template that should be used to render a document.",
            "title": "Subtype or Template",
            "type": "string"
        },
        "trait_version_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "The version of ANS that this object was serialized as, in major.minor.patch format.  For top-level content objects, this is a required trait.",
            "enum": [
                "0.10.9"
            ],
            "title": "Describes the ANS version of this object",
            "type": "string"
        },
        "trait_website_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "The _id of the website on which this document exists. This field is only available in Content API. If different from canonical_website, then this document was originally sourced from the canonical_website. Generated at fetch time by Content API.",
            "title": "Website",
            "type": "string"
        },
        "trait_website_url_json": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "description": "The relative URL to this document on the website specified by the `website` field. In a multi-site context, this is the url that is typically queried on when fetching by URL. It may be different than canonical_url. Generated at fetch time by Content API.",
            "title": "Website URL",
            "type": "string"
        }
    },
    "description": "Website-specific  metadata for url generation for multi-site copies. These fields are not indexed in Content API.",
    "patternProperties": {
        "^[a-zA-Z0-9_]*": {
            "additionalProperties": false,
            "properties": {
                "website_section": {
                    "anyOf": [
                        {
                            "$ref": "#/definitions/___utils_reference_json"
                        },
                        {
                            "$ref": "#/definitions/___utils_section_json"
                        }
                    ]
                },
                "website_url": {
                    "$ref": "#/definitions/trait_website_url_json"
                }
            },
            "type": "object"
        }
    },
    "title": "Websites Input",
    "type": "object"
}