{
    "definitions": {},
    "$schema": "http://json-schema.org/draft-06/schema#",
    "type": "object",
    "$id": "http://www.pucomex.serpro.gov.br/lpco/detalhar_modelo_ncm.schema.json",
    "properties": {
        "ncm": {
            "type": "string"
        },
        "listaCamposNcm": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "codigo": {
                        "type": "string"
                    },
                    "nome": {
                        "type": "string"
                    },
                    "unidadeMedida": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tipo": {
                        "type": "string",
                        "enum": [
                            "BOOLEANO",
                            "DATA",
                            "DATA_HORA",
                            "NUMERO_INTEIRO",
                            "NUMERO_REAL",
                            "TEXTO"
                        ]
                    },
                    "validacao": {
                        "type": "object",
                        "properties": {
                            "obrigatorio": {
                                "type": "boolean"
                            },
                            "permiteMultiplosValores": {
                                "type": "boolean"
                            },
                            "mascara": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "tamanhoMaximo": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "qtdCasasDecimais": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "dominios": {
                                "type": "array",
                                "items": {
                                    "type": "object",
                                    "properties": {
                                        "id": {
                                            "type": "string"
                                        },
                                        "descricao": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "listaAtributosNcm": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "codigo": {
                        "type": "string"
                    },
                    "nome": {
                        "type": "string"
                    },
                    "tipo": {
                        "type": "string",
                        "enum": [
                            "BOOLEANO",
                            "DATA",
                            "DATA_HORA",
                            "NUMERO_INTEIRO",
                            "NUMERO_REAL",
                            "TEXTO"
                        ]
                    },
                    "validacao": {
                        "type": "object",
                        "properties": {
                            "obrigatorio": {
                                "type": "boolean"
                            },
                            "permiteMultiplosValores": {
                                "type": "boolean"
                            },
                            "mascara": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "tamanhoMaximo": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "qtdCasasDecimais": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "dominios": {
                                "type": "array",
                                "items": {
                                    "type": "object",
                                    "properties": {
                                        "id": {
                                            "type": "string"
                                        },
                                        "descricao": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "unidadeMedidaEstatistica": {
            "type": "string"
        }
    }
}