All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jsonschema.ttb-schema.json Maven / Gradle / Ivy

The newest version!
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "description": "Schema for a Template Tasks Batch",
    "definitions": {
        "ProvFormat": {
            "type": "string",
            "enum": ["provn", "prov-jsonld", "svg", "png", "pdf"]
        },
        "Task": {
            "type": "object",
            "properties": {
                "type": {
                    "type": "string",
                    "enum": ["expansion", "merge"]
                },
                "description": {
                    "type": "string"
                },
                "input": {
                    "type": "string"
                },
                "input2": {
                    "type": "string"
                },
                "output": {
                    "type": "string"
                },
                "bindings": {
                    "oneOf": [
                        {"type": "string"},
                        {"type": "null"}
                    ]
                },
                "formats": {
                    "type": "array",
                    "items":  {"$ref": "#/definitions/ProvFormat"}
                },
                "hasProvenance": {
                    "type": "string"
                },
                "copyinput": {
                    "type": "boolean"
                },
                "clean2": {
                    "type": "boolean"
                },
                "template_path": {
                    "type": "array",
                    "items": [
                        {
                            "type": "string"
                        }
                    ],
                    "minItems": 1
                }
            },
            "required": [
                "type",
                "input",
                "output",
                "bindings",
                "formats"
            ],
            "additionalProperties": false
        }
    },
    "type": "object",
    "properties": {
        "template_path": {
            "type": "array",
            "items": [
                {
                    "type": "string"
                }
            ],
            "minItems": 1
        },
        "bindings_path": {
            "type": "array",
            "items": [
                {
                    "type": "string"
                }
            ],
            "minItems": 1
        },
        "output_dir": {
            "type": "string"
        },
        "variableMaps": {
            "type": "array",
            "items": [
                {
                    "type": "string"
                }
            ]
        },
        "tasks": {
            "type": "array",
            "items": {
                "$ref": "#/definitions/Task"
            },
            "minItems": 1
        }
    },

    "required": [
        "template_path",
        "bindings_path",
        "output_dir",
        "variableMaps",
        "tasks"
    ]
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy