19512-Preservation-API-schema.json 22 KB
Newer Older
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
{
    "$schema": "http:\/\/json-schema.org\/draft-04\/schema#",
    "definitions": {
        "dsb-AnyType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsb-AnyType"
        },
        "dsb-AttachmentReferenceType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsb-AttachmentReferenceType"
        },
        "dsb-DigestInfoType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsb-DigestInfoType"
        },
        "dsigrw-TransformsType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsigrw-TransformsType"
        },
        "dsigrw-TransformType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsigrw-TransformType"
        },
        "nsl-NsPrefixMappingType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/nsl-NsPrefixMappingType"
        },
        "dsb-Base64DataType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsb-Base64DataType"
        },
        "dsb-ResultType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsb-ResultType"
        },
        "dsb-InternationalStringType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsb-InternationalStringType"
        },
        "md-OperationType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-md\/v1.0\/cs02\/schema\/oasis-dss-metadata-schema.json#\/definitions\/md-OperationType"
        },
        "md-ParameterType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-md\/v1.0\/cs02\/schema\/oasis-dss-metadata-schema.json#\/definitions\/md-ParameterType"
        },
        "md-FormatType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-md\/v1.0\/cs02\/schema\/oasis-dss-metadata-schema.json#\/definitions\/md-FormatType"
        },
        "md-ExtensionType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-md\/v1.0\/cs02\/schema\/oasis-dss-metadata-schema.json#\/definitions\/md-ExtensionType"
        },
        "md-PolicyType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-md\/v1.0\/cs02\/schema\/oasis-dss-metadata-schema.json#\/definitions\/md-PolicyType"
        },
        "md-PolicyByRefType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-md\/v1.0\/cs02\/schema\/oasis-dss-metadata-schema.json#\/definitions\/md-PolicyByRefType"
        },
        "dsigrw-DigestMethodType": {
            "$ref": "http:\/\/docs.oasis-open.org\/dss-x\/dss-core\/v2.0\/cs02\/schema\/oasis-dss-core-schema.json#\/definitions\/dsigrw-DigestMethodType"
        },
        "dsb-OptionalInputsType": {
            "type": "object",
            "properties": {
                "policy": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "lang": {
                    "type": "string"
                },
                "other": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/dsb-AnyType"
                    }
                }
            }
        },
        "dsb-OptionalOutputsType": {
            "type": "object",
            "properties": {
                "policy": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "other": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/dsb-AnyType"
                    }
                }
            }
        },
        "pres-PreservePOType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "pro": {
                    "type": "string"
                },
                "po": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-POType"
                    }
                }
            },
            "required": ["pro"]
        },
        "pres-POType": {
            "type": "object",
            "properties": {
                "binaryData": {
                    "$ref": "#\/definitions\/pres-POType:BinaryData"
                },
                "xmlData": {
                    "$ref": "#\/definitions\/pres-POType:XmlData"
                },
                "formatId": {
                    "type": "string"
                },
                "mimeType": {
                    "type": "string"
                },
                "pronomId": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "relObj": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            },
            "minProperties": 1
        },
        "pres-POType:BinaryData": {
            "type": "object",
            "properties": {
                "value": {
                    "type": "string"
                }
            }
        },
        "pres-POType:XmlData": {
            "type": "object",
            "properties": {
                "b64Content": {
                    "type": "string"
                }
            }
        },
        "pres-PreservePOResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "poId": {
                    "type": "string"
                },
                "po": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-POType"
                    }
                }
            }
        },
        "pres-UpdatePOCType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "poId": {
                    "type": "string"
                },
                "deltaPoc": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-POType"
                    }
                }
            },
            "required": ["poId", "deltaPoc"]
        },
        "pres-UpdatePOCResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "versionId": {
                    "type": "string"
                }
            }
        },
        "pres-RetrievePOType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "poId": {
                    "type": "string"
                },
                "versionId": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "sor": {
Laurent Velez's avatar
Laurent Velez committed
                    "type": "string"
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702
                },
                "poFormat": {
                    "type": "string"
                },
                "evFormat": {
                    "type": "string"
                }
            },
            "required": ["poId"]
        },
        "pres-RetrievePOResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "po": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-POType"
                    }
                }
            }
        },
        "pres-DeletePOType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "poId": {
                    "type": "string"
                },
                "mod": {
                    "type": "string"
                },
                "crn": {
                    "type": "string"
                },
                "reason": {
                    "type": "string"
                }
            },
            "required": ["poId"]
        },
        "pres-ResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                }
            },
            "required": ["result"]
        },
        "pres-RetrieveTraceType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "poId": {
                    "type": "string"
                }
            },
            "required": ["poId"]
        },
        "pres-RetrieveTraceResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "trace": {
                    "$ref": "#\/definitions\/pres-TraceType"
                }
            },
            "required": ["trace"]
        },
        "pres-TraceType": {
            "type": "object",
            "properties": {
                "event": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-EventType"
                    }
                }
            }
        },
        "pres-EventType": {
            "type": "object",
            "properties": {
                "time": {
                    "type": "string",
                    "format": "date-time"
                },
                "sub": {
                    "type": "string"
                },
                "op": {
                    "type": "string"
                },
                "obj": {
                    "type": "string"
                },
                "det": {
                    "type": "string"
                }
            },
            "required": ["time", "sub", "op"]
        },
        "pres-ValidateEvidenceType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "ev": {
                    "$ref": "#\/definitions\/pres-EvidenceType"
                },
                "po": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-POType"
                    }
                }
            }
        },
        "pres-EvidenceType": {
            "type": "object",
            "properties": {
                "binaryData": {
                    "$ref": "#\/definitions\/pres-POType:BinaryData"
                },
                "xmlData": {
                    "$ref": "#\/definitions\/pres-POType:XmlData"
                },
                "formatId": {
                    "type": "string"
                },
                "mimeType": {
                    "type": "string"
                },
                "pronomId": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "relObj": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "poId": {
                    "type": "string"
                },
                "verId": {
                    "type": "string"
                }
            }
        },
        "pres-ValidateEvidenceResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "valRep": {
                    "$ref": "#\/definitions\/pres-POType"
                },
                "poe": {
                    "type": "string",
                    "format": "date-time"
                }
            }
        },
        "pres-ProfileType": {
            "type": "object",
            "properties": {
                "pid": {
                    "type": "string"
                },
                "spec": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "description": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/dsb-InternationalStringType"
                    }
                },
                "op": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/md-OperationType"
                    }
                },
                "pol": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/md-PolicyType"
                    }
                },
                "ext": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/md-ExtensionType"
                    }
                },
                "sid": {
                    "type": "string"
                },
                "pvp": {
                    "$ref": "#\/definitions\/pres-ProfileValidityPeriodType"
                },
                "psm": {
                    "type": "string"
                },
                "pg": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ef": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/md-FormatType"
                    }
                },
                "eed": {
                    "type": "string"
                },
                "perp": {
                    "type": "string"
                }
            },
            "required": ["pvp", "psm", "pg", "ef"]
        },
        "pres-ProfileValidityPeriodType": {
            "type": "object",
            "properties": {
                "vfrom": {
                    "type": "string",
                    "format": "date-time"
                },
                "vuntl": {
                    "type": "string",
                    "format": "date-time"
                }
            },
            "required": ["vfrom"]
        },
        "pres-RetrieveInfoType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "pro": {
                    "type": "string"
                },
                "stat": {
                    "type": "string"
                }
            }
        },
        "pres-RetrieveInfoResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "pro": {
                    "type": "array",
                    "items": {
                        "$ref": "#\/definitions\/pres-ProfileType"
                    }
                }
            }
        },
        "pres-SearchType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                },
                "fi": {
                    "type": "string"
                }
            },
            "required": ["fi"]
        },
        "pres-SearchResponseType": {
            "type": "object",
            "properties": {
                "optOut": {
                    "$ref": "#\/definitions\/dsb-OptionalOutputsType"
                },
                "result": {
                    "$ref": "#\/definitions\/dsb-ResultType"
                },
                "reqId": {
                    "type": "string"
                },
                "poId": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "pres-DigestListType": {
            "type": "object",
            "properties": {
                "digAlg": {
                    "$ref": "#\/definitions\/dsigrw-DigestMethodType"
                },
                "digVal": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "ev": {
                    "$ref": "#\/definitions\/pres-EvidenceType"
                }
            },
            "required": ["digAlg", "digVal"]
        },
        "pres-RequestType": {
            "type": "object",
            "properties": {
                "optIn": {
                    "$ref": "#\/definitions\/dsb-OptionalInputsType"
                },
                "reqId": {
                    "type": "string"
                }
            }
        }
    },
    "type": "object",
    "properties": {
        "presPO": {
            "$ref": "#\/definitions\/pres-PreservePOType"
        },
        "preserveResp": {
            "$ref": "#\/definitions\/pres-PreservePOResponseType"
        },
        "updPoc": {
            "$ref": "#\/definitions\/pres-UpdatePOCType"
        },
        "updPocResp": {
            "$ref": "#\/definitions\/pres-UpdatePOCResponseType"
        },
        "getPO": {
            "$ref": "#\/definitions\/pres-RetrievePOType"
        },
        "getPOResp": {
            "$ref": "#\/definitions\/pres-RetrievePOResponseType"
        },
        "delPO": {
            "$ref": "#\/definitions\/pres-DeletePOType"
        },
        "getResp": {
            "$ref": "#\/definitions\/pres-ResponseType"
        },
        "getTrace": {
            "$ref": "#\/definitions\/pres-RetrieveTraceType"
        },
        "getTraceResp": {
            "$ref": "#\/definitions\/pres-RetrieveTraceResponseType"
        },
        "valEvidence": {
            "$ref": "#\/definitions\/pres-ValidateEvidenceType"
        },
        "valEvidenceResp": {
            "$ref": "#\/definitions\/pres-ValidateEvidenceResponseType"
        },
        "sor": {
            "type": "string"
        },
        "profile": {
            "$ref": "#\/definitions\/pres-ProfileType"
        },
        "stat": {
            "type": "string"
        },
        "retrvInfo": {
            "$ref": "#\/definitions\/pres-RetrieveInfoType"
        },
        "retrvInfoResp": {
            "$ref": "#\/definitions\/pres-RetrieveInfoResponseType"
        },
        "presStoreModel": {
            "type": "string"
        },
        "search": {
            "$ref": "#\/definitions\/pres-SearchType"
        },
        "searchResp": {
            "$ref": "#\/definitions\/pres-SearchResponseType"
        },
        "digestList": {
            "$ref": "#\/definitions\/pres-DigestListType"
        },
        "req": {
            "$ref": "#\/definitions\/pres-RequestType"
        },
        "resp": {
            "$ref": "#\/definitions\/pres-ResponseType"
        }
    }
}