3 �Xf � @ s� d dl mZ d dlZd dlZd dlZd dlmZ d dlmZ dd� Z dd� Z ejd d �Zej ddd de dd� ej ddddd� ej dde dd� ej dde d� dd� Zejdd� fd d!�Zejejfd"d#�ZdS )$� )�absolute_importN)�namedAny)� validator_forc C s d| krd| } t | �S )N�.zjsonschema.)r )�name� r �/usr/lib/python3.6/cli.py�_namedAnyWithDefault s r c C s t | ��}tj|�S Q R X d S )N)�open�json�load)�path�filer r r � _json_file s r zJSON Schema Validation CLI)�descriptionz-iz --instance�append� instancesz[a path to a JSON instance (i.e. filename.json)to validate (may be specified multiple times))�action�dest�type�helpz-Fz--error-formatz"{error.instance}: {error.message} z�the format to use for each error output message, specified in a form suitable for passing to str.format, which will be called with 'error' for each error)�defaultr z-Vz--validatorz�the fully qualified object name of a validator to use, or, for validators that are registered with jsonschema, simply the name of the class.)r r �schemaz7the JSON Schema to validate with (i.e. filename.schema))r r c C s6 t tj| pdgd��}|d d kr2t|d �|d<