xref: /aosp_15_r20/external/json-schema-validator/src/test/resources/draft4/complex.json (revision 78c4dd6aa35290980cdcd1623a7e337e8d021c7c)
1[
2  {
3    "description": "test on complex schema",
4    "schema": {
5      "additionalProperties": false,
6      "type": "object",
7      "properties": {
8        "prop249": {
9          "anyOf": [
10            {
11              "type": "null"
12            },
13            {
14              "additionalItems": false,
15              "type": "array",
16              "items": {
17                "type": "string"
18              }
19            }
20          ]
21        },
22        "prop398": {
23          "anyOf": [
24            {
25              "type": "null"
26            },
27            {
28              "additionalProperties": false,
29              "type": "object",
30              "properties": {
31                "prop395": {
32                  "anyOf": [
33                    {
34                      "type": "null"
35                    },
36                    {
37                      "type": "string"
38                    }
39                  ]
40                },
41                "prop397": {
42                  "anyOf": [
43                    {
44                      "type": "null"
45                    },
46                    {
47                      "type": "string"
48                    }
49                  ]
50                },
51                "prop389": {
52                  "anyOf": [
53                    {
54                      "type": "null"
55                    },
56                    {
57                      "type": "string"
58                    }
59                  ]
60                },
61                "prop396": {
62                  "anyOf": [
63                    {
64                      "type": "null"
65                    },
66                    {
67                      "type": "string"
68                    }
69                  ]
70                }
71              },
72              "required": []
73            }
74          ]
75        },
76        "prop388": {
77          "anyOf": [
78            {
79              "type": "null"
80            },
81            {
82              "type": "boolean"
83            }
84          ]
85        },
86        "lockinbenefits": {
87          "anyOf": [
88            {
89              "type": "null"
90            },
91            {
92              "additionalProperties": false,
93              "type": "object",
94              "properties": {
95                "freeShipping": {
96                  "anyOf": [
97                    {
98                      "type": "null"
99                    },
100                    {
101                      "additionalProperties": false,
102                      "type": "object",
103                      "properties": {
104                        "actualBenefit": {
105                          "anyOf": [
106                            {
107                              "type": "null"
108                            },
109                            {
110                              "type": "string"
111                            }
112                          ]
113                        },
114                        "potentialBenefits": {
115                          "anyOf": [
116                            {
117                              "type": "null"
118                            },
119                            {
120                              "type": "string"
121                            }
122                          ]
123                        },
124                        "eligibleBenefits": {
125                          "anyOf": [
126                            {
127                              "type": "null"
128                            },
129                            {
130                              "type": "string"
131                            }
132                          ]
133                        }
134                      },
135                      "required": []
136                    }
137                  ]
138                },
139                "hasEarlyAccess": {
140                  "anyOf": [
141                    {
142                      "type": "null"
143                    },
144                    {
145                      "type": "boolean"
146                    }
147                  ]
148                },
149                "fastShipping": {
150                  "anyOf": [
151                    {
152                      "type": "null"
153                    },
154                    {
155                      "additionalProperties": false,
156                      "type": "object",
157                      "properties": {
158                        "actualBenefit": {
159                          "anyOf": [
160                            {
161                              "type": "null"
162                            },
163                            {
164                              "type": "string"
165                            }
166                          ]
167                        },
168                        "potentialBenefits": {
169                          "anyOf": [
170                            {
171                              "type": "null"
172                            },
173                            {
174                              "type": "string"
175                            }
176                          ]
177                        },
178                        "eligibleBenefits": {
179                          "anyOf": [
180                            {
181                              "type": "null"
182                            },
183                            {
184                              "type": "string"
185                            }
186                          ]
187                        }
188                      },
189                      "required": []
190                    }
191                  ]
192                }
193              },
194              "required": []
195            }
196          ]
197        },
198        "prop248": {
199          "anyOf": [
200            {
201              "type": "null"
202            },
203            {
204              "type": "boolean"
205            }
206          ]
207        },
208        "prop237": {
209          "type": "string"
210        },
211        "prop250": {
212          "anyOf": [
213            {
214              "type": "null"
215            },
216            {
217              "type": "boolean"
218            }
219          ]
220        },
221        "prop389": {
222          "anyOf": [
223            {
224              "type": "null"
225            },
226            {
227              "type": "string"
228            }
229          ]
230        },
231        "prop387": {
232          "anyOf": [
233            {
234              "type": "null"
235            },
236            {
237              "type": "boolean"
238            }
239          ]
240        },
241        "prop247": {
242          "anyOf": [
243            {
244              "type": "null"
245            },
246            {
247              "type": "boolean"
248            }
249          ]
250        },
251        "prop252": {
252          "type": "string"
253        },
254        "prop392": {
255          "anyOf": [
256            {
257              "type": "null"
258            },
259            {
260              "additionalItems": false,
261              "type": "array",
262              "items": {
263                "additionalProperties": false,
264                "type": "object",
265                "properties": {
266                  "prop391": {
267                    "type": "string"
268                  },
269                  "prop390": {
270                    "type": "string"
271                  }
272                },
273                "required": [
274                  "prop391",
275                  "prop390"
276                ]
277              }
278            }
279          ]
280        },
281        "prop240": {
282          "anyOf": [
283            {
284              "type": "null"
285            },
286            {
287              "type": "string"
288            }
289          ]
290        },
291        "prop241": {
292          "anyOf": [
293            {
294              "type": "null"
295            },
296            {
297              "type": "string"
298            }
299          ]
300        },
301        "prop246": {
302          "anyOf": [
303            {
304              "type": "null"
305            },
306            {
307              "additionalProperties": false,
308              "type": "object",
309              "properties": {
310                "prop245": {
311                  "maximum": 2147483647,
312                  "type": "integer",
313                  "minimum": -2147483648
314                },
315                "prop244": {
316                  "maximum": 2147483647,
317                  "type": "integer",
318                  "minimum": -2147483648
319                },
320                "prop243": {
321                  "maximum": 1.7976931348623157E308,
322                  "type": "number",
323                  "minimum": -1.7976931348623157E308
324                },
325                "prop242": {
326                  "maximum": 2147483647,
327                  "type": "integer",
328                  "minimum": -2147483648
329                }
330              },
331              "required": [
332                "prop245",
333                "prop244",
334                "prop243",
335                "prop242"
336              ]
337            }
338          ]
339        },
340        "prop385": {
341          "anyOf": [
342            {
343              "type": "null"
344            },
345            {
346              "additionalItems": false,
347              "type": "array",
348              "items": {
349                "additionalProperties": false,
350                "type": "object",
351                "properties": {
352                  "prop269": {
353                    "anyOf": [
354                      {
355                        "type": "null"
356                      },
357                      {
358                        "maximum": 2147483647,
359                        "type": "integer",
360                        "minimum": -2147483648
361                      }
362                    ]
363                  },
364                  "prop284": {
365                    "anyOf": [
366                      {
367                        "type": "null"
368                      },
369                      {
370                        "additionalItems": false,
371                        "type": "array",
372                        "items": {
373                          "additionalProperties": false,
374                          "type": "object",
375                          "properties": {
376                            "prop282": {
377                              "anyOf": [
378                                {
379                                  "type": "null"
380                                },
381                                {
382                                  "type": "boolean"
383                                }
384                              ]
385                            },
386                            "prop283": {
387                              "anyOf": [
388                                {
389                                  "type": "null"
390                                },
391                                {
392                                  "type": "boolean"
393                                }
394                              ]
395                            },
396                            "prop281": {
397                              "anyOf": [
398                                {
399                                  "type": "null"
400                                },
401                                {
402                                  "additionalProperties": false,
403                                  "type": "object",
404                                  "properties": {
405                                    "prop280": {
406                                      "type": "string"
407                                    },
408                                    "prop279": {
409                                      "maximum": 2147483647,
410                                      "type": "integer",
411                                      "minimum": -2147483648
412                                    }
413                                  },
414                                  "required": [
415                                    "prop280",
416                                    "prop279"
417                                  ]
418                                }
419                              ]
420                            },
421                            "shownOnProductPage": {
422                              "anyOf": [
423                                {
424                                  "type": "null"
425                                },
426                                {
427                                  "type": "boolean"
428                                }
429                              ]
430                            },
431                            "prop278": {
432                              "anyOf": [
433                                {
434                                  "type": "null"
435                                },
436                                {
437                                  "type": "boolean"
438                                }
439                              ]
440                            },
441                            "prop277": {
442                              "anyOf": [
443                                {
444                                  "type": "null"
445                                },
446                                {
447                                  "maximum": 9223372036854775807,
448                                  "type": "integer",
449                                  "minimum": -9223372036854775808
450                                }
451                              ]
452                            },
453                            "prop276": {
454                              "type": "string"
455                            }
456                          },
457                          "required": [
458                            "prop276"
459                          ]
460                        }
461                      }
462                    ]
463                  },
464                  "prop267": {
465                    "anyOf": [
466                      {
467                        "type": "null"
468                      },
469                      {
470                        "additionalItems": false,
471                        "type": "array",
472                        "items": {
473                          "additionalProperties": false,
474                          "type": "object",
475                          "properties": {
476                            "prop255": {
477                              "anyOf": [
478                                {
479                                  "type": "null"
480                                },
481                                {
482                                  "type": "string"
483                                }
484                              ]
485                            },
486                            "type": {
487                              "anyOf": [
488                                {
489                                  "type": "null"
490                                },
491                                {
492                                  "type": "string"
493                                }
494                              ]
495                            }
496                          },
497                          "required": []
498                        }
499                      }
500                    ]
501                  },
502                  "prop271": {
503                    "anyOf": [
504                      {
505                        "type": "null"
506                      },
507                      {
508                        "maximum": 2147483647,
509                        "type": "integer",
510                        "minimum": -2147483648
511                      }
512                    ]
513                  },
514                  "prop270": {
515                    "anyOf": [
516                      {
517                        "type": "null"
518                      },
519                      {
520                        "maximum": 2147483647,
521                        "type": "integer",
522                        "minimum": -2147483648
523                      }
524                    ]
525                  },
526                  "prop272": {
527                    "anyOf": [
528                      {
529                        "type": "null"
530                      },
531                      {
532                        "maximum": 2147483647,
533                        "type": "integer",
534                        "minimum": -2147483648
535                      }
536                    ]
537                  },
538                  "prop274": {
539                    "type": "string"
540                  },
541                  "prop285": {
542                    "anyOf": [
543                      {
544                        "type": "null"
545                      },
546                      {
547                        "additionalItems": false,
548                        "type": "array",
549                        "items": {
550                          "type": "string"
551                        }
552                      }
553                    ]
554                  },
555                  "prop268": {
556                    "anyOf": [
557                      {
558                        "type": "null"
559                      },
560                      {
561                        "type": "boolean"
562                      }
563                    ]
564                  },
565                  "displayedFinalPrice": {
566                    "anyOf": [
567                      {
568                        "type": "null"
569                      },
570                      {
571                        "maximum": 2147483647,
572                        "type": "integer",
573                        "minimum": -2147483648
574                      }
575                    ]
576                  },
577                  "prop254": {
578                    "type": "string"
579                  },
580                  "prop253": {
581                    "anyOf": [
582                      {
583                        "type": "null"
584                      },
585                      {
586                        "type": "boolean"
587                      }
588                    ]
589                  },
590                  "showMRP": {
591                    "anyOf": [
592                      {
593                        "type": "null"
594                      },
595                      {
596                        "type": "boolean"
597                      }
598                    ]
599                  },
600                  "exchangeDetails": {
601                    "anyOf": [
602                      {
603                        "type": "null"
604                      },
605                      {
606                        "additionalProperties": false,
607                        "type": "object",
608                        "properties": {
609                          "pincode": {
610                            "anyOf": [
611                              {
612                                "type": "null"
613                              },
614                              {
615                                "maximum": 2147483647,
616                                "type": "integer",
617                                "minimum": -2147483648
618                              }
619                            ]
620                          },
621                          "offerId": {
622                            "type": "string"
623                          },
624                          "prop278": {
625                            "anyOf": [
626                              {
627                                "type": "null"
628                              },
629                              {
630                                "type": "boolean"
631                              }
632                            ]
633                          }
634                        },
635                        "required": [
636                          "offerId"
637                        ]
638                      }
639                    ]
640                  },
641                  "prop275": {
642                    "anyOf": [
643                      {
644                        "type": "null"
645                      },
646                      {
647                        "type": "string"
648                      }
649                    ]
650                  },
651                  "prop277": {
652                    "anyOf": [
653                      {
654                        "type": "null"
655                      },
656                      {
657                        "pattern": "^(19[7-9][0-9]|2\\d{3})-((((0[13578])|(1[02]))-(([0-2][0-9])|(3[01])))|(((0[469])|(11))-(([0-2][0-9])|(30)))|(02-?[0-2][0-9]))([tT ]([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(\\.\\d+)?([zZ]|[+-]\\d{2}(:|)\\d{2}|\\b)|\\b)$",
658                        "type": "string"
659                      }
660                    ]
661                  },
662                  "prop273": {
663                    "type": "string"
664                  }
665                },
666                "required": [
667                  "prop274",
668                  "prop254",
669                  "prop273"
670                ]
671              }
672            }
673          ]
674        },
675        "prop399": {
676          "anyOf": [
677            {
678              "type": "null"
679            },
680            {
681              "type": "string"
682            }
683          ]
684        },
685        "prop393": {
686          "anyOf": [
687            {
688              "type": "null"
689            },
690            {
691              "type": "string"
692            }
693          ]
694        },
695        "prop239": {
696          "anyOf": [
697            {
698              "type": "null"
699            },
700            {
701              "additionalProperties": false,
702              "type": "object",
703              "properties": {
704                "prop238": {
705                  "type": "boolean"
706                },
707                "type": {
708                  "anyOf": [
709                    {
710                      "type": "null"
711                    },
712                    {
713                      "additionalItems": false,
714                      "type": "array",
715                      "items": {
716                        "type": "string"
717                      }
718                    }
719                  ]
720                }
721              },
722              "required": [
723                "prop238"
724              ]
725            }
726          ]
727        },
728        "latestVersion": {
729          "anyOf": [
730            {
731              "type": "null"
732            },
733            {
734              "type": "string"
735            }
736          ]
737        },
738        "exchangeDetails": {
739          "anyOf": [
740            {
741              "type": "null"
742            },
743            {
744              "additionalProperties": false,
745              "type": "object",
746              "properties": {
747                "pincode": {
748                  "anyOf": [
749                    {
750                      "type": "null"
751                    },
752                    {
753                      "maximum": 2147483647,
754                      "type": "integer",
755                      "minimum": -2147483648
756                    }
757                  ]
758                },
759                "offerId": {
760                  "type": "string"
761                },
762                "prop278": {
763                  "anyOf": [
764                    {
765                      "type": "null"
766                    },
767                    {
768                      "type": "boolean"
769                    }
770                  ]
771                }
772              },
773              "required": [
774                "offerId"
775              ]
776            }
777          ]
778        },
779        "prop386": {
780          "anyOf": [
781            {
782              "type": "null"
783            },
784            {
785              "type": "boolean"
786            }
787          ]
788        },
789        "prop251": {
790          "anyOf": [
791            {
792              "type": "null"
793            },
794            {
795              "maximum": 2147483647,
796              "type": "integer",
797              "minimum": -2147483648
798            }
799          ]
800        }
801      },
802      "required": [
803        "prop237",
804        "prop252"
805      ]
806    },
807    "tests": [
808      {
809        "description": "test on complex schema",
810        "data": {
811          "prop399": "SADSADSADASDSAD",
812          "prop398": {
813            "prop397": "sdsadsadsad",
814            "prop396": "dsadsadsadsad",
815            "prop395": "Fashiosadsadn",
816            "prop389": "sadsadsdsadas"
817          },
818          "prop393": "sassa-6572-4e94-8c45-9b76adfe567b.BELEEVDNNWHPCFG5",
819          "prop392": [
820            {
821              "prop391": "sadsadsdsadas",
822              "prop390": "sadsadsdsadas"
823            }
824          ],
825          "prop389": "BELEEVDNNWHPCFG5",
826          "prop388": false,
827          "prop387": false,
828          "prop386": false,
829          "prop385": [
830            {
831              "prop285": [
832                "nsddasc17ce07",
833                "nbsds05674208",
834                "nadsda1b76202",
835                "nadada7dbb31",
836                "ndadada7a6be08",
837                "nbadadf4e4dd06"
838              ],
839              "prop284": [
840                {
841                  "prop283": false,
842                  "prop282": true,
843                  "prop281": {
844                    "prop280": "AASS",
845                    "prop279": 65
846                  },
847                  "prop278": true,
848                  "prop277": 1519064999000,
849                  "prop276": "REGULAR"
850                }
851              ],
852              "prop275": "AFDA SDADck",
853              "prop274": "LSTBELEEVDNNWHPCFG5XTR99D",
854              "prop273": "current",
855              "prop272": 599,
856              "prop271": 6,
857              "prop270": 177,
858              "prop269": 112,
859              "prop268": true,
860              "prop267": [
861                {
862                  "type": "sadsadsdsadas",
863                  "prop255": "AAA15c17ce07"
864                },
865                {
866                  "type": "sadsadsdsadas",
867                  "prop255": "AA05674208"
868                },
869                {
870                  "type": "sadsadsdsadas",
871                  "prop255": "AAAAA1b76202"
872                },
873                {
874                  "type": "sadsadsdsadas",
875                  "prop255": "AAAAA67dbb31"
876                },
877                {
878                  "type": "sadsadsdsadas",
879                  "prop255": "AAAAA7a6be08"
880                },
881                {
882                  "type": "sadsadsdsadas",
883                  "prop255": "AAAAf4e4dd06"
884                }
885              ],
886              "prop254": "AAAADSDSWQDFDFSD44",
887              "prop253": false
888            },
889            {
890              "prop285": [
891                "nSADSA15c17ce07",
892                "nSDSA105674208",
893                "nSDS0081b76202",
894                "nSDSD67dbb31",
895                "nSAFS1d7a6be08",
896                "nbSFDFSAf4e4dd06"
897              ],
898              "prop284": [
899                {
900                  "prop283": false,
901                  "prop282": true,
902                  "prop281": {
903                    "prop280": "WHAT",
904                    "prop279": 58
905                  },
906                  "prop278": true,
907                  "prop277": 1519151399000,
908                  "prop276": "REGULAR"
909                }
910              ],
911              "prop275": "SDADAck",
912              "prop274": "LSTBELEEVDNNWHPCFG5SOSPHT",
913              "prop273": "current",
914              "prop272": 599,
915              "prop271": 6,
916              "prop270": 198,
917              "prop269": 140,
918              "prop268": true,
919              "prop267": [
920                {
921                  "type": "DFSFDSFSDFDSFSDFDFDFSDFD",
922                  "prop255": "nb:mp:015c17ce07"
923                },
924                {
925                  "type": "DSFDSFSDFSDFSDFSDFSDF",
926                  "prop255": "nb:mp:0105674208"
927                },
928                {
929                  "type": "SFDSFDSFDSFDSFDFSDF",
930                  "prop255": "nb:mp:0081b76202"
931                },
932                {
933                  "type": "SFDSFSDFFDSFDFSDFDSFFDSDF",
934                  "prop255": "nb:mp:00f67dbb31"
935                },
936                {
937                  "type": "DSFSDFDFDSFSDFDSFDFSDFSDF",
938                  "prop255": "nb:mp:01d7a6be08"
939                },
940                {
941                  "type": "DGDGDSGDSGSGSDGSDGSDGSDGSDGSSD",
942                  "prop255": "nb:mp:01f4e4dd06"
943                }
944              ],
945              "prop254": "aaaaca4d3acf4b76",
946              "prop253": false
947            },
948            {
949              "prop285": [
950                "dsdsadsadasdsad",
951                "sadsdsadasdsa8",
952                "nsdadsad0081b76202",
953                "sdddsadadsdd",
954                "nasdsadsa08",
955                "nsaddsadsae4dd06"
956              ],
957              "prop284": [
958                {
959                  "prop283": false,
960                  "prop282": true,
961                  "prop281": {
962                    "prop280": "ohh",
963                    "prop279": 58
964                  },
965                  "prop278": true,
966                  "prop277": 1519064999000,
967                  "prop276": "REGULAR"
968                }
969              ],
970              "prop275": "OUT",
971              "prop274": "LSTBELEEVDNNWHPCFG5NHDRPJ",
972              "prop273": "PAST",
973              "prop272": 599,
974              "prop271": 6,
975              "prop270": 207,
976              "prop269": 149,
977              "prop268": true,
978              "prop267": [
979                {
980                  "type": "SAFSAFSAFASFASFDASFSDFASD",
981                  "prop255": "EDSFdsad05674208"
982                },
983                {
984                  "type": "SFAFSAFSADFSAFSAFSAFSSAFSA",
985                  "prop255": "nbdsad05674208"
986                },
987                {
988                  "type": "SFDSFSFDSFDSFDSFDSFDSFDSAF",
989                  "prop255": "nbasdsa1b76202"
990                },
991                {
992                  "type": "SFDSFSFSAFSAFSAFSAFSAFSA",
993                  "prop255": "nbsa0f67dbb31"
994                },
995                {
996                  "type": "DSFDSFDSFDSFSADFDSAFEWRFEWFDSAFSD",
997                  "prop255": "nbdasd7a6be08"
998                },
999                {
1000                  "type": "DFDSFDSFDSFDSDSFDSFSDFDS",
1001                  "prop255": "nbssads4dd06"
1002                }
1003              ],
1004              "prop254": "a98dbbb8c75e4fe9",
1005              "prop253": false
1006            },
1007            {
1008              "prop285": [
1009                "SADSASA015c17ce07",
1010                "nASDSA0105674208",
1011                "nbSADASD0081b76202",
1012                "nSADAS0f67dbb31",
1013                "nbSADSAd7a6be08",
1014                "nbD45545F1f4e4dd06"
1015              ],
1016              "prop284": [
1017                {
1018                  "prop283": false,
1019                  "prop282": true,
1020                  "prop281": {
1021                    "prop280": "MYPRICE",
1022                    "prop279": 58
1023                  },
1024                  "prop278": true,
1025                  "prop277": 1519064999000,
1026                  "prop276": "IRREGULAR"
1027                }
1028              ],
1029              "prop275": "WHAT?",
1030              "prop274": "LSTBELEEVDNNWHPCFG5DU2RER",
1031              "prop273": "PAST",
1032              "prop272": 599,
1033              "prop271": 6,
1034              "prop270": 278,
1035              "prop269": 220,
1036              "prop268": true,
1037              "prop267": [
1038                {
1039                  "type": "DDSFDSFSDDSADFSFDS",
1040                  "prop255": "nb:mp:015c17ce07"
1041                },
1042                {
1043                  "type": "DFDSFDSFDSFDSFDS",
1044                  "prop255": "nb:mp:0105674208"
1045                },
1046                {
1047                  "type": "DSFDSFDSFDSFDSFDSFDS",
1048                  "prop255": "DSADASDA0081b76202"
1049                },
1050                {
1051                  "type": "DSFDSFDSFDSFSAFFDFDASFASD",
1052                  "prop255": "DSADSAD00f67dbb31"
1053                },
1054                {
1055                  "type": "ADSFDSFDSFDSFDSFDSFDSFDS",
1056                  "prop255": "nbSDSAmpSASADSADSA01d7a6be08"
1057                },
1058                {
1059                  "type": "DSFDSFDSFDSFDSFDSFDS",
1060                  "prop255": "SADSADSA"
1061                }
1062              ],
1063              "prop254": "10d23E223E324E32e58d43a4648ea",
1064              "prop253": false
1065            }
1066          ],
1067          "prop252": "SDSFSD",
1068          "prop251": 4,
1069          "prop250": false,
1070          "prop249": [],
1071          "prop248": false,
1072          "prop247": false,
1073          "prop246": {
1074            "prop245": 6,
1075            "prop244": 5,
1076            "prop243": 3,
1077            "prop242": 35
1078          },
1079          "prop241": "JUNK",
1080          "prop240": "NICEVERYNICE",
1081          "prop239": {
1082            "prop238": false
1083          },
1084          "prop237": "NICEVERYNICE"
1085        },
1086        "valid": true
1087      }
1088    ]
1089  }
1090]
1091