@@ -269,9 +269,13 @@ public struct JSONSchema: JSONSchemaContext, HasWarnings, Sendable {
269269 }
270270 }
271271
272+ public var xml : OpenAPI . XML ? {
273+ coreContext. xml
274+ }
275+
272276 // See `JSONSchemaContext`
273277 public var inferred : Bool {
274- return coreContext. inferred
278+ coreContext. inferred
275279 }
276280}
277281
@@ -1129,7 +1133,8 @@ extension JSONSchema {
11291133 examples: [ AnyCodable ] = [ ] ,
11301134 anchor: String ? = nil ,
11311135 dynamicAnchor: String ? = nil ,
1132- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1136+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1137+ xml: OpenAPI . XML ? = nil
11331138 ) -> JSONSchema {
11341139 let context = JSONSchema . CoreContext< JSONTypeFormat . BooleanFormat> (
11351140 format: format,
@@ -1146,7 +1151,8 @@ extension JSONSchema {
11461151 examples: examples,
11471152 anchor: anchor,
11481153 dynamicAnchor: dynamicAnchor,
1149- defs: defs
1154+ defs: defs,
1155+ xml: xml
11501156 )
11511157 return . boolean( context)
11521158 }
@@ -1168,7 +1174,8 @@ extension JSONSchema {
11681174 examples: [ AnyCodable ] = [ ] ,
11691175 anchor: String ? = nil ,
11701176 dynamicAnchor: String ? = nil ,
1171- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1177+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1178+ xml: OpenAPI . XML ? = nil
11721179 ) -> JSONSchema {
11731180 return . boolean(
11741181 format: format,
@@ -1185,7 +1192,8 @@ extension JSONSchema {
11851192 examples: examples,
11861193 anchor: anchor,
11871194 dynamicAnchor: dynamicAnchor,
1188- defs: defs
1195+ defs: defs,
1196+ xml: xml
11891197 )
11901198 }
11911199
@@ -1211,7 +1219,8 @@ extension JSONSchema {
12111219 examples: [ AnyCodable ] = [ ] ,
12121220 anchor: String ? = nil ,
12131221 dynamicAnchor: String ? = nil ,
1214- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1222+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1223+ xml: OpenAPI . XML ? = nil
12151224 ) -> JSONSchema {
12161225 let context = JSONSchema . CoreContext< JSONTypeFormat . AnyFormat> (
12171226 format: format,
@@ -1228,7 +1237,8 @@ extension JSONSchema {
12281237 examples: examples,
12291238 anchor: anchor,
12301239 dynamicAnchor: dynamicAnchor,
1231- defs: defs
1240+ defs: defs,
1241+ xml: xml
12321242 )
12331243 return . fragment( context)
12341244 }
@@ -1250,7 +1260,8 @@ extension JSONSchema {
12501260 examples: [ AnyCodable ] = [ ] ,
12511261 anchor: String ? = nil ,
12521262 dynamicAnchor: String ? = nil ,
1253- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1263+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1264+ xml: OpenAPI . XML ? = nil
12541265 ) -> JSONSchema {
12551266 return . fragment(
12561267 format: format,
@@ -1267,7 +1278,8 @@ extension JSONSchema {
12671278 examples: examples,
12681279 anchor: anchor,
12691280 dynamicAnchor: dynamicAnchor,
1270- defs: defs
1281+ defs: defs,
1282+ xml: xml
12711283 )
12721284 }
12731285
@@ -1301,7 +1313,8 @@ extension JSONSchema {
13011313 examples: [ AnyCodable ] = [ ] ,
13021314 anchor: String ? = nil ,
13031315 dynamicAnchor: String ? = nil ,
1304- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1316+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1317+ xml: OpenAPI . XML ? = nil
13051318 ) -> JSONSchema {
13061319 let genericContext = JSONSchema . CoreContext< JSONTypeFormat . StringFormat> (
13071320 format: format,
@@ -1318,7 +1331,8 @@ extension JSONSchema {
13181331 examples: examples,
13191332 anchor: anchor,
13201333 dynamicAnchor: dynamicAnchor,
1321- defs: defs
1334+ defs: defs,
1335+ xml: xml
13221336 )
13231337 let stringContext = JSONSchema . StringContext (
13241338 maxLength: maxLength,
@@ -1352,7 +1366,8 @@ extension JSONSchema {
13521366 examples: [ AnyCodable ] = [ ] ,
13531367 anchor: String ? = nil ,
13541368 dynamicAnchor: String ? = nil ,
1355- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1369+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1370+ xml: OpenAPI . XML ? = nil
13561371 ) -> JSONSchema {
13571372 return . string(
13581373 format: format,
@@ -1374,7 +1389,8 @@ extension JSONSchema {
13741389 examples: examples,
13751390 anchor: anchor,
13761391 dynamicAnchor: dynamicAnchor,
1377- defs: defs
1392+ defs: defs,
1393+ xml: xml
13781394 )
13791395 }
13801396
@@ -1403,7 +1419,8 @@ extension JSONSchema {
14031419 examples: [ AnyCodable ] = [ ] ,
14041420 anchor: String ? = nil ,
14051421 dynamicAnchor: String ? = nil ,
1406- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1422+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1423+ xml: OpenAPI . XML ? = nil
14071424 ) -> JSONSchema {
14081425 let genericContext = JSONSchema . CoreContext< JSONTypeFormat . NumberFormat> (
14091426 format: format,
@@ -1420,7 +1437,8 @@ extension JSONSchema {
14201437 examples: examples,
14211438 anchor: anchor,
14221439 dynamicAnchor: dynamicAnchor,
1423- defs: defs
1440+ defs: defs,
1441+ xml: xml
14241442 )
14251443 let numbericContext = JSONSchema . NumericContext (
14261444 multipleOf: multipleOf,
@@ -1450,7 +1468,8 @@ extension JSONSchema {
14501468 examples: [ AnyCodable ] = [ ] ,
14511469 anchor: String ? = nil ,
14521470 dynamicAnchor: String ? = nil ,
1453- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1471+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1472+ xml: OpenAPI . XML ? = nil
14541473 ) -> JSONSchema {
14551474 return . number(
14561475 format: format,
@@ -1470,7 +1489,8 @@ extension JSONSchema {
14701489 examples: examples,
14711490 anchor: anchor,
14721491 dynamicAnchor: dynamicAnchor,
1473- defs: defs
1492+ defs: defs,
1493+ xml: xml
14741494 )
14751495 }
14761496
@@ -1499,7 +1519,8 @@ extension JSONSchema {
14991519 examples: [ AnyCodable ] = [ ] ,
15001520 anchor: String ? = nil ,
15011521 dynamicAnchor: String ? = nil ,
1502- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1522+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1523+ xml: OpenAPI . XML ? = nil
15031524 ) -> JSONSchema {
15041525 let genericContext = JSONSchema . CoreContext< JSONTypeFormat . IntegerFormat> (
15051526 format: format,
@@ -1516,7 +1537,8 @@ extension JSONSchema {
15161537 examples: examples,
15171538 anchor: anchor,
15181539 dynamicAnchor: dynamicAnchor,
1519- defs: defs
1540+ defs: defs,
1541+ xml: xml
15201542 )
15211543 let integerContext = JSONSchema . IntegerContext (
15221544 multipleOf: multipleOf,
@@ -1546,7 +1568,8 @@ extension JSONSchema {
15461568 examples: [ AnyCodable ] = [ ] ,
15471569 anchor: String ? = nil ,
15481570 dynamicAnchor: String ? = nil ,
1549- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1571+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1572+ xml: OpenAPI . XML ? = nil
15501573 ) -> JSONSchema {
15511574 return . integer(
15521575 format: format,
@@ -1566,7 +1589,8 @@ extension JSONSchema {
15661589 examples: examples,
15671590 anchor: anchor,
15681591 dynamicAnchor: dynamicAnchor,
1569- defs: defs
1592+ defs: defs,
1593+ xml: xml
15701594 )
15711595 }
15721596
@@ -1596,7 +1620,8 @@ extension JSONSchema {
15961620 examples: [ AnyCodable ] = [ ] ,
15971621 anchor: String ? = nil ,
15981622 dynamicAnchor: String ? = nil ,
1599- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1623+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1624+ xml: OpenAPI . XML ? = nil
16001625 ) -> JSONSchema {
16011626 let coreContext = JSONSchema . CoreContext< JSONTypeFormat . ObjectFormat> (
16021627 format: format,
@@ -1613,7 +1638,8 @@ extension JSONSchema {
16131638 examples: examples,
16141639 anchor: anchor,
16151640 dynamicAnchor: dynamicAnchor,
1616- defs: defs
1641+ defs: defs,
1642+ xml: xml
16171643 )
16181644 let objectContext = JSONSchema . ObjectContext (
16191645 properties: properties,
@@ -1651,7 +1677,8 @@ extension JSONSchema {
16511677 examples: [ AnyCodable ] = [ ] ,
16521678 anchor: String ? = nil ,
16531679 dynamicAnchor: String ? = nil ,
1654- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1680+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1681+ xml: OpenAPI . XML ? = nil
16551682 ) -> JSONSchema {
16561683 let coreContext = JSONSchema . CoreContext< JSONTypeFormat . ArrayFormat> (
16571684 format: format,
@@ -1668,7 +1695,8 @@ extension JSONSchema {
16681695 examples: examples,
16691696 anchor: anchor,
16701697 dynamicAnchor: dynamicAnchor,
1671- defs: defs
1698+ defs: defs,
1699+ xml: xml
16721700 )
16731701
16741702 let arrayContext = JSONSchema . ArrayContext (
@@ -1704,7 +1732,8 @@ extension JSONSchema {
17041732 discriminator: OpenAPI . Discriminator ? = nil ,
17051733 anchor: String ? = nil ,
17061734 dynamicAnchor: String ? = nil ,
1707- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1735+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1736+ xml: OpenAPI . XML ? = nil
17081737 ) -> JSONSchema {
17091738 return . all(
17101739 of: schemas,
@@ -1715,7 +1744,8 @@ extension JSONSchema {
17151744 discriminator: discriminator,
17161745 anchor: anchor,
17171746 dynamicAnchor: dynamicAnchor,
1718- defs: defs
1747+ defs: defs,
1748+ xml: xml
17191749 )
17201750 )
17211751 }
@@ -1738,7 +1768,8 @@ extension JSONSchema {
17381768 discriminator: OpenAPI . Discriminator ? = nil ,
17391769 anchor: String ? = nil ,
17401770 dynamicAnchor: String ? = nil ,
1741- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1771+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1772+ xml: OpenAPI . XML ? = nil
17421773 ) -> JSONSchema {
17431774 return . one(
17441775 of: schemas,
@@ -1749,7 +1780,8 @@ extension JSONSchema {
17491780 discriminator: discriminator,
17501781 anchor: anchor,
17511782 dynamicAnchor: dynamicAnchor,
1752- defs: defs
1783+ defs: defs,
1784+ xml: xml
17531785 )
17541786 )
17551787 }
@@ -1772,7 +1804,8 @@ extension JSONSchema {
17721804 discriminator: OpenAPI . Discriminator ? = nil ,
17731805 anchor: String ? = nil ,
17741806 dynamicAnchor: String ? = nil ,
1775- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1807+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1808+ xml: OpenAPI . XML ? = nil
17761809 ) -> JSONSchema {
17771810 return . any(
17781811 of: schemas,
@@ -1783,7 +1816,8 @@ extension JSONSchema {
17831816 discriminator: discriminator,
17841817 anchor: anchor,
17851818 dynamicAnchor: dynamicAnchor,
1786- defs: defs
1819+ defs: defs,
1820+ xml: xml
17871821 )
17881822 )
17891823 }
@@ -1803,7 +1837,8 @@ extension JSONSchema {
18031837 discriminator: OpenAPI . Discriminator ? = nil ,
18041838 anchor: String ? = nil ,
18051839 dynamicAnchor: String ? = nil ,
1806- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1840+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1841+ xml: OpenAPI . XML ? = nil
18071842 ) -> JSONSchema {
18081843 return . not(
18091844 schema,
@@ -1814,7 +1849,8 @@ extension JSONSchema {
18141849 discriminator: discriminator,
18151850 anchor: anchor,
18161851 dynamicAnchor: dynamicAnchor,
1817- defs: defs
1852+ defs: defs,
1853+ xml: xml
18181854 )
18191855 )
18201856 }
@@ -1827,11 +1863,20 @@ extension JSONSchema {
18271863 description: String ? = nil ,
18281864 anchor: String ? = nil ,
18291865 dynamicAnchor: String ? = nil ,
1830- defs: OrderedDictionary < String , JSONSchema > = [ : ]
1866+ defs: OrderedDictionary < String , JSONSchema > = [ : ] ,
1867+ xml: OpenAPI . XML ? = nil
18311868 ) -> JSONSchema {
18321869 return . reference(
18331870 reference,
1834- . init( required: required, title: title, description: description, anchor: anchor, dynamicAnchor: dynamicAnchor, defs: defs)
1871+ . init(
1872+ required: required,
1873+ title: title,
1874+ description: description,
1875+ anchor: anchor,
1876+ dynamicAnchor: dynamicAnchor,
1877+ defs: defs,
1878+ xml: xml
1879+ )
18351880 )
18361881 }
18371882}
0 commit comments