Files
TextNLPClassifierApp/specs/007-media-article-routing/contracts/media-output.schema.json
T

57 lines
1.6 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "MediaOutputFileSchema",
"description": "Schema de validação do arquivo de saída de mídias (*_media.json)",
"type": "object",
"required": [
"articles"
],
"additionalProperties": false,
"properties": {
"articles": {
"type": "array",
"description": "Lista de publicações classificadas como predominantemente de mídia",
"items": {
"type": "object",
"required": [
"input_meta",
"crawled_url",
"page_title",
"http_status",
"content_type",
"media_type"
],
"additionalProperties": false,
"properties": {
"input_meta": {
"type": "object",
"required": [
"titulo",
"url"
],
"properties": {
"titulo": { "type": "string" },
"url": { "type": "string" },
"subtitulo": { "type": ["string", "null"] },
"quando_publicado": { "type": ["string", "null"] },
"pagina": { "type": ["integer", "null"] }
},
"additionalProperties": true
},
"crawled_url": { "type": "string" },
"page_title": { "type": ["string", "null"] },
"http_status": { "type": ["integer", "null"] },
"content_type": {
"type": "string",
"enum": ["media"]
},
"media_type": {
"type": "string",
"enum": ["video", "image", "images", "embed", "mixed"]
}
}
}
}
}
}