Comparison

mod_rest/res/schema-xmpp.json @ 4840:e9b7c8db3ebd

mod_rest: Fixup internal schema references for correctness With JSON Pointer support in util.datamapper, it is now possible to use the schema file as-is without the fixups mod_rest does.
author Kim Alvefur <zash@zash.se>
date Wed, 29 Dec 2021 18:31:40 +0100
parent 4800:1e2f53fb2099
child 4841:f69c5a443156
comparison
equal deleted inserted replaced
4839:797b51043767 4840:e9b7c8db3ebd
201 "iq" : { 201 "iq" : {
202 "properties" : { 202 "properties" : {
203 "archive" : { 203 "archive" : {
204 "properties" : { 204 "properties" : {
205 "form" : { 205 "form" : {
206 "$ref" : "#_common/dataform" 206 "$ref" : "#/_common/dataform"
207 }, 207 },
208 "page" : { 208 "page" : {
209 "$ref" : "#_common/rsm" 209 "$ref" : "#/_common/rsm"
210 }, 210 },
211 "queryid" : { 211 "queryid" : {
212 "type" : "string", 212 "type" : "string",
213 "xml" : { 213 "xml" : {
214 "attribute" : true 214 "attribute" : true
218 "type" : "object", 218 "type" : "object",
219 "xml" : { 219 "xml" : {
220 "name" : "query", 220 "name" : "query",
221 "namespace" : "urn:xmpp:mam:2" 221 "namespace" : "urn:xmpp:mam:2"
222 } 222 }
223 },
224 "dataform" : {
225 "$ref" : "#/_common/dataform"
226 },
227 "delay" : {
228 "$ref" : "#/_common/delay"
223 }, 229 },
224 "extdisco" : { 230 "extdisco" : {
225 "properties" : { 231 "properties" : {
226 "services" : { 232 "services" : {
227 "items" : { 233 "items" : {
305 "xml" : { 311 "xml" : {
306 "name" : "services", 312 "name" : "services",
307 "namespace" : "urn:xmpp:extdisco:2" 313 "namespace" : "urn:xmpp:extdisco:2"
308 } 314 }
309 }, 315 },
316 "from" : {
317 "$ref" : "#/_common/from"
318 },
310 "gateway" : { 319 "gateway" : {
311 "properties" : { 320 "properties" : {
312 "desc" : { 321 "desc" : {
313 "type" : "text" 322 "type" : "text"
314 }, 323 },
323 "type" : "object", 332 "type" : "object",
324 "xml" : { 333 "xml" : {
325 "name" : "query", 334 "name" : "query",
326 "namespace" : "jabber:iq:gateway" 335 "namespace" : "jabber:iq:gateway"
327 } 336 }
337 },
338 "id" : {
339 "$ref" : "#/_common/id"
340 },
341 "lang" : {
342 "$ref" : "#/_common/lang"
328 }, 343 },
329 "lastactivity" : { 344 "lastactivity" : {
330 "properties" : { 345 "properties" : {
331 "seconds" : { 346 "seconds" : {
332 "minimum" : 0, 347 "minimum" : 0,
346 "type" : "object", 361 "type" : "object",
347 "xml" : { 362 "xml" : {
348 "name" : "query", 363 "name" : "query",
349 "namespace" : "jabber:iq:last" 364 "namespace" : "jabber:iq:last"
350 } 365 }
366 },
367 "nick" : {
368 "$ref" : "#/_common/nick"
351 }, 369 },
352 "oob" : { 370 "oob" : {
353 "properties" : { 371 "properties" : {
354 "desc" : { 372 "desc" : {
355 "type" : "string" 373 "type" : "string"
461 } 479 }
462 }, 480 },
463 "result" : { 481 "result" : {
464 "properties" : { 482 "properties" : {
465 "page" : { 483 "page" : {
466 "$ref" : "#_common/rsm" 484 "$ref" : "#/_common/rsm"
467 } 485 }
468 }, 486 },
469 "type" : "object", 487 "type" : "object",
470 "xml" : { 488 "xml" : {
471 "name" : "fin", 489 "name" : "fin",
472 "namespace" : "urn:xmpp:mam:2" 490 "namespace" : "urn:xmpp:mam:2"
473 } 491 }
492 },
493 "rsm" : {
494 "$ref" : "#/_common/rsm"
474 }, 495 },
475 "stats" : { 496 "stats" : {
476 "description" : "Simple statistics gathering, array of (name, unit, value) tuples.", 497 "description" : "Simple statistics gathering, array of (name, unit, value) tuples.",
477 "items" : { 498 "items" : {
478 "properties" : { 499 "properties" : {
506 "name" : "query", 527 "name" : "query",
507 "namespace" : "http://jabber.org/protocol/stats", 528 "namespace" : "http://jabber.org/protocol/stats",
508 "wrapped" : true 529 "wrapped" : true
509 } 530 }
510 }, 531 },
532 "to" : {
533 "$ref" : "#/_common/to"
534 },
535 "type" : {
536 "$ref" : "#/_common/type"
537 },
511 "version" : { 538 "version" : {
512 "description" : "Ask about software version information", 539 "description" : "Ask about software version information",
513 "properties" : { 540 "properties" : {
514 "name" : { 541 "name" : {
515 "example" : "My Software", 542 "example" : "My Software",
544 "message" : { 571 "message" : {
545 "properties" : { 572 "properties" : {
546 "archive" : { 573 "archive" : {
547 "properties" : { 574 "properties" : {
548 "forward" : { 575 "forward" : {
549 "$ref" : "#_common/forwarded" 576 "$ref" : "#/properties/message/properties/forwarded"
550 }, 577 },
551 "queryid" : { 578 "queryid" : {
552 "type" : "string", 579 "type" : "string",
553 "xml" : { 580 "xml" : {
554 "attribute" : true 581 "attribute" : true
573 "body" : { 600 "body" : {
574 "description" : "Human-readable chat message", 601 "description" : "Human-readable chat message",
575 "example" : "Hello, World!", 602 "example" : "Hello, World!",
576 "type" : "string" 603 "type" : "string"
577 }, 604 },
605 "dataform" : {
606 "$ref" : "#/_common/dataform"
607 },
608 "delay" : {
609 "$ref" : "#/_common/delay"
610 },
578 "displayed" : { 611 "displayed" : {
579 "description" : "Message ID of a message that has been displayed", 612 "description" : "Message ID of a message that has been displayed",
580 "title" : "XEP-0333: Chat Markers", 613 "title" : "XEP-0333: Chat Markers",
581 "type" : "string", 614 "type" : "string",
582 "xml" : { 615 "xml" : {
593 } 626 }
594 }, 627 },
595 "forwarded" : { 628 "forwarded" : {
596 "properties" : { 629 "properties" : {
597 "delay" : { 630 "delay" : {
598 "$ref" : "#_common/delay" 631 "$ref" : "#/_common/delay"
599 }, 632 },
600 "message" : { 633 "message" : {
601 "type" : "object", 634 "$ref" : "#/message"
602 "xml" : {
603 "namespace" : "jabber:client"
604 }
605 } 635 }
606 }, 636 },
607 "title" : "XEP-0297: Stanza Forwarding", 637 "title" : "XEP-0297: Stanza Forwarding",
608 "type" : "object", 638 "type" : "object",
609 "xml" : { 639 "xml" : {
610 "name" : "forwarded", 640 "name" : "forwarded",
611 "namespace" : "urn:xmpp:forward:0" 641 "namespace" : "urn:xmpp:forward:0"
612 } 642 }
643 },
644 "from" : {
645 "$ref" : "#/_common/from"
646 },
647 "id" : {
648 "$ref" : "#/_common/id"
613 }, 649 },
614 "invite" : { 650 "invite" : {
615 "properties" : { 651 "properties" : {
616 "continue" : { 652 "continue" : {
617 "type" : "boolean", 653 "type" : "boolean",
653 "xml" : { 689 "xml" : {
654 "name" : "x", 690 "name" : "x",
655 "namespace" : "jabber:x:conference" 691 "namespace" : "jabber:x:conference"
656 } 692 }
657 }, 693 },
694 "lang" : {
695 "$ref" : "#/_common/lang"
696 },
658 "markable" : { 697 "markable" : {
659 "title" : "XEP-0333: Chat Markers", 698 "title" : "XEP-0333: Chat Markers",
660 "type" : "boolean", 699 "type" : "boolean",
661 "xml" : { 700 "xml" : {
662 "namespace" : "urn:xmpp:chat-markers:0", 701 "namespace" : "urn:xmpp:chat-markers:0",
663 "x_name_is_value" : true 702 "x_name_is_value" : true
664 } 703 }
704 },
705 "nick" : {
706 "$ref" : "#/_common/nick"
665 }, 707 },
666 "occupant_id" : { 708 "occupant_id" : {
667 "title" : "XEP-0421: Anonymous unique occupant identifiers for MUCs", 709 "title" : "XEP-0421: Anonymous unique occupant identifiers for MUCs",
668 "type" : "string", 710 "type" : "string",
669 "xml" : { 711 "xml" : {
768 "xml" : { 810 "xml" : {
769 "name" : "replace", 811 "name" : "replace",
770 "namespace" : "urn:xmpp:message-correct:0", 812 "namespace" : "urn:xmpp:message-correct:0",
771 "x_single_attribute" : "id" 813 "x_single_attribute" : "id"
772 } 814 }
815 },
816 "rsm" : {
817 "$ref" : "#/_common/rsm"
773 }, 818 },
774 "stanza_ids" : { 819 "stanza_ids" : {
775 "items" : { 820 "items" : {
776 "properties" : { 821 "properties" : {
777 "by" : { 822 "by" : {
837 "attribute" : true 882 "attribute" : true
838 } 883 }
839 } 884 }
840 }, 885 },
841 "type" : "object" 886 "type" : "object"
887 },
888 "to" : {
889 "$ref" : "#/_common/to"
890 },
891 "type" : {
892 "$ref" : "#/_common/type"
842 } 893 }
843 }, 894 },
844 "type" : "object", 895 "type" : "object",
845 "xml" : { 896 "xml" : {
846 "name" : "message" 897 "name" : "message"
880 "xml" : { 931 "xml" : {
881 "name" : "c", 932 "name" : "c",
882 "namespace" : "http://jabber.org/protocol/caps" 933 "namespace" : "http://jabber.org/protocol/caps"
883 } 934 }
884 }, 935 },
936 "dataform" : {
937 "$ref" : "#/_common/dataform"
938 },
939 "delay" : {
940 "$ref" : "#/_common/delay"
941 },
942 "from" : {
943 "$ref" : "#/_common/from"
944 },
945 "id" : {
946 "$ref" : "#/_common/id"
947 },
885 "idle_since" : { 948 "idle_since" : {
886 "format" : "date-time", 949 "format" : "date-time",
887 "title" : "XEP-0319: Last User Interaction in Presence", 950 "title" : "XEP-0319: Last User Interaction in Presence",
888 "type" : "string", 951 "type" : "string",
889 "xml" : { 952 "xml" : {
890 "name" : "idle", 953 "name" : "idle",
891 "namespace" : "urn:xmpp:idle:1", 954 "namespace" : "urn:xmpp:idle:1",
892 "x_single_attribute" : "since" 955 "x_single_attribute" : "since"
893 } 956 }
957 },
958 "lang" : {
959 "$ref" : "#/_common/lang"
960 },
961 "nick" : {
962 "$ref" : "#/_common/nick"
894 }, 963 },
895 "priority" : { 964 "priority" : {
896 "description" : "Presence priority", 965 "description" : "Presence priority",
897 "maximum" : 127, 966 "maximum" : 127,
898 "minimum" : -128, 967 "minimum" : -128,
899 "type" : "integer" 968 "type" : "integer"
969 },
970 "rsm" : {
971 "$ref" : "#/_common/rsm"
900 }, 972 },
901 "show" : { 973 "show" : {
902 "description" : "indicator of availability, ie away or not", 974 "description" : "indicator of availability, ie away or not",
903 "enum" : [ 975 "enum" : [
904 "away", 976 "away",
910 }, 982 },
911 "status" : { 983 "status" : {
912 "description" : "Textual status message.", 984 "description" : "Textual status message.",
913 "type" : "string" 985 "type" : "string"
914 }, 986 },
987 "to" : {
988 "$ref" : "#/_common/to"
989 },
990 "type" : {
991 "$ref" : "#/_common/type"
992 },
915 "vcard_update" : { 993 "vcard_update" : {
916 "properties" : { 994 "properties" : {
917 "photo" : { 995 "photo" : {
918 "type" : "string" 996 "type" : "string"
919 } 997 }