1f4a2713aSLionel Sambuc<?xml version="1.0" encoding="UTF-8"?> 2f4a2713aSLionel Sambuc 3f4a2713aSLionel Sambuc<grammar xmlns="http://relaxng.org/ns/structure/1.0" 4f4a2713aSLionel Sambuc datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> 5f4a2713aSLionel Sambuc 6f4a2713aSLionel Sambuc <start> 7f4a2713aSLionel Sambuc <choice> 8f4a2713aSLionel Sambuc <!-- Everything else not explicitly mentioned below. --> 9f4a2713aSLionel Sambuc <ref name="Other" /> 10f4a2713aSLionel Sambuc 11f4a2713aSLionel Sambuc <ref name="Function" /> 12f4a2713aSLionel Sambuc <ref name="Class" /> 13f4a2713aSLionel Sambuc <ref name="Variable" /> 14f4a2713aSLionel Sambuc <ref name="Namespace" /> 15f4a2713aSLionel Sambuc <ref name="Typedef" /> 16f4a2713aSLionel Sambuc <ref name="Enum" /> 17f4a2713aSLionel Sambuc </choice> 18f4a2713aSLionel Sambuc </start> 19f4a2713aSLionel Sambuc 20f4a2713aSLionel Sambuc <define name="Other"> 21f4a2713aSLionel Sambuc <element name="Other"> 22f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 23f4a2713aSLionel Sambuc <ref name="Name" /> 24f4a2713aSLionel Sambuc <optional> 25f4a2713aSLionel Sambuc <ref name="USR" /> 26f4a2713aSLionel Sambuc </optional> 27f4a2713aSLionel Sambuc <optional> 28f4a2713aSLionel Sambuc <ref name="Headerfile" /> 29f4a2713aSLionel Sambuc </optional> 30f4a2713aSLionel Sambuc <optional> 31f4a2713aSLionel Sambuc <ref name="Declaration" /> 32f4a2713aSLionel Sambuc </optional> 33f4a2713aSLionel Sambuc <optional> 34f4a2713aSLionel Sambuc <ref name="Abstract" /> 35f4a2713aSLionel Sambuc </optional> 36f4a2713aSLionel Sambuc <optional> 37f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 38f4a2713aSLionel Sambuc </optional> 39f4a2713aSLionel Sambuc <optional> 40f4a2713aSLionel Sambuc <ref name="Parameters" /> 41f4a2713aSLionel Sambuc </optional> 42f4a2713aSLionel Sambuc <optional> 43f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 44f4a2713aSLionel Sambuc </optional> 45f4a2713aSLionel Sambuc <optional> 46f4a2713aSLionel Sambuc <ref name="Discussion" /> 47f4a2713aSLionel Sambuc </optional> 48f4a2713aSLionel Sambuc </element> 49f4a2713aSLionel Sambuc </define> 50f4a2713aSLionel Sambuc 51f4a2713aSLionel Sambuc <define name="Function"> 52f4a2713aSLionel Sambuc <element name="Function"> 53f4a2713aSLionel Sambuc <optional> 54f4a2713aSLionel Sambuc <attribute name="templateKind"> 55f4a2713aSLionel Sambuc <choice> 56f4a2713aSLionel Sambuc <value>template</value> 57f4a2713aSLionel Sambuc <value>specialization</value> 58f4a2713aSLionel Sambuc </choice> 59f4a2713aSLionel Sambuc </attribute> 60f4a2713aSLionel Sambuc </optional> 61f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 62f4a2713aSLionel Sambuc 63f4a2713aSLionel Sambuc <optional> 64f4a2713aSLionel Sambuc <attribute name="isInstanceMethod"> 65f4a2713aSLionel Sambuc <data type="boolean" /> 66f4a2713aSLionel Sambuc </attribute> 67f4a2713aSLionel Sambuc </optional> 68f4a2713aSLionel Sambuc <optional> 69f4a2713aSLionel Sambuc <attribute name="isClassMethod"> 70f4a2713aSLionel Sambuc <data type="boolean" /> 71f4a2713aSLionel Sambuc </attribute> 72f4a2713aSLionel Sambuc </optional> 73f4a2713aSLionel Sambuc 74f4a2713aSLionel Sambuc <ref name="Name" /> 75f4a2713aSLionel Sambuc <optional> 76f4a2713aSLionel Sambuc <ref name="USR" /> 77f4a2713aSLionel Sambuc </optional> 78f4a2713aSLionel Sambuc <optional> 79f4a2713aSLionel Sambuc <ref name="Headerfile" /> 80f4a2713aSLionel Sambuc </optional> 81f4a2713aSLionel Sambuc <optional> 82f4a2713aSLionel Sambuc <ref name="Declaration" /> 83f4a2713aSLionel Sambuc </optional> 84f4a2713aSLionel Sambuc <optional> 85f4a2713aSLionel Sambuc <ref name="Abstract" /> 86f4a2713aSLionel Sambuc </optional> 87f4a2713aSLionel Sambuc <optional> 88f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 89f4a2713aSLionel Sambuc </optional> 90f4a2713aSLionel Sambuc <optional> 91f4a2713aSLionel Sambuc <ref name="Parameters" /> 92f4a2713aSLionel Sambuc </optional> 93f4a2713aSLionel Sambuc <optional> 94f4a2713aSLionel Sambuc <ref name="Exceptions" /> 95f4a2713aSLionel Sambuc </optional> 96f4a2713aSLionel Sambuc <zeroOrMore> 97f4a2713aSLionel Sambuc <ref name="Availability" /> 98f4a2713aSLionel Sambuc </zeroOrMore> 99f4a2713aSLionel Sambuc <zeroOrMore> 100f4a2713aSLionel Sambuc <ref name="Deprecated" /> 101f4a2713aSLionel Sambuc </zeroOrMore> 102f4a2713aSLionel Sambuc <zeroOrMore> 103f4a2713aSLionel Sambuc <ref name="Unavailable" /> 104f4a2713aSLionel Sambuc </zeroOrMore> 105f4a2713aSLionel Sambuc <optional> 106f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 107f4a2713aSLionel Sambuc </optional> 108f4a2713aSLionel Sambuc <optional> 109f4a2713aSLionel Sambuc <ref name="Discussion" /> 110f4a2713aSLionel Sambuc </optional> 111f4a2713aSLionel Sambuc </element> 112f4a2713aSLionel Sambuc </define> 113f4a2713aSLionel Sambuc 114f4a2713aSLionel Sambuc <define name="Class"> 115f4a2713aSLionel Sambuc <element name="Class"> 116f4a2713aSLionel Sambuc <optional> 117f4a2713aSLionel Sambuc <attribute name="templateKind"> 118f4a2713aSLionel Sambuc <choice> 119f4a2713aSLionel Sambuc <value>template</value> 120f4a2713aSLionel Sambuc <value>specialization</value> 121f4a2713aSLionel Sambuc <value>partialSpecialization</value> 122f4a2713aSLionel Sambuc </choice> 123f4a2713aSLionel Sambuc </attribute> 124f4a2713aSLionel Sambuc </optional> 125f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 126f4a2713aSLionel Sambuc 127f4a2713aSLionel Sambuc <ref name="Name" /> 128f4a2713aSLionel Sambuc <optional> 129f4a2713aSLionel Sambuc <ref name="USR" /> 130f4a2713aSLionel Sambuc </optional> 131f4a2713aSLionel Sambuc <optional> 132f4a2713aSLionel Sambuc <ref name="Headerfile" /> 133f4a2713aSLionel Sambuc </optional> 134f4a2713aSLionel Sambuc <optional> 135f4a2713aSLionel Sambuc <ref name="Declaration" /> 136f4a2713aSLionel Sambuc </optional> 137f4a2713aSLionel Sambuc <optional> 138f4a2713aSLionel Sambuc <ref name="Abstract" /> 139f4a2713aSLionel Sambuc </optional> 140f4a2713aSLionel Sambuc <optional> 141f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 142f4a2713aSLionel Sambuc </optional> 143f4a2713aSLionel Sambuc 144f4a2713aSLionel Sambuc <!-- Parameters and results don't make sense for classes, but the user 145f4a2713aSLionel Sambuc can specify \param or \returns in a comment anyway. --> 146f4a2713aSLionel Sambuc <optional> 147f4a2713aSLionel Sambuc <ref name="Parameters" /> 148f4a2713aSLionel Sambuc </optional> 149f4a2713aSLionel Sambuc <optional> 150f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 151f4a2713aSLionel Sambuc </optional> 152f4a2713aSLionel Sambuc 153f4a2713aSLionel Sambuc <optional> 154f4a2713aSLionel Sambuc <ref name="Discussion" /> 155f4a2713aSLionel Sambuc </optional> 156f4a2713aSLionel Sambuc </element> 157f4a2713aSLionel Sambuc </define> 158f4a2713aSLionel Sambuc 159f4a2713aSLionel Sambuc <define name="Variable"> 160f4a2713aSLionel Sambuc <element name="Variable"> 161f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 162f4a2713aSLionel Sambuc <ref name="Name" /> 163f4a2713aSLionel Sambuc <optional> 164f4a2713aSLionel Sambuc <ref name="USR" /> 165f4a2713aSLionel Sambuc </optional> 166f4a2713aSLionel Sambuc <optional> 167f4a2713aSLionel Sambuc <ref name="Headerfile" /> 168f4a2713aSLionel Sambuc </optional> 169f4a2713aSLionel Sambuc <optional> 170f4a2713aSLionel Sambuc <ref name="Declaration" /> 171f4a2713aSLionel Sambuc </optional> 172f4a2713aSLionel Sambuc <optional> 173f4a2713aSLionel Sambuc <ref name="Abstract" /> 174f4a2713aSLionel Sambuc </optional> 175f4a2713aSLionel Sambuc 176f4a2713aSLionel Sambuc <!-- Template parameters, parameters and results don't make sense for 177f4a2713aSLionel Sambuc variables, but the user can specify \tparam \param or \returns 178f4a2713aSLionel Sambuc in a comment anyway. --> 179f4a2713aSLionel Sambuc <optional> 180f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 181f4a2713aSLionel Sambuc </optional> 182f4a2713aSLionel Sambuc <optional> 183f4a2713aSLionel Sambuc <ref name="Parameters" /> 184f4a2713aSLionel Sambuc </optional> 185f4a2713aSLionel Sambuc <optional> 186f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 187f4a2713aSLionel Sambuc </optional> 188f4a2713aSLionel Sambuc 189f4a2713aSLionel Sambuc <optional> 190f4a2713aSLionel Sambuc <ref name="Discussion" /> 191f4a2713aSLionel Sambuc </optional> 192f4a2713aSLionel Sambuc </element> 193f4a2713aSLionel Sambuc </define> 194f4a2713aSLionel Sambuc 195f4a2713aSLionel Sambuc <define name="Namespace"> 196f4a2713aSLionel Sambuc <element name="Namespace"> 197f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 198f4a2713aSLionel Sambuc <ref name="Name" /> 199f4a2713aSLionel Sambuc <optional> 200f4a2713aSLionel Sambuc <ref name="USR" /> 201f4a2713aSLionel Sambuc </optional> 202f4a2713aSLionel Sambuc <optional> 203f4a2713aSLionel Sambuc <ref name="Headerfile" /> 204f4a2713aSLionel Sambuc </optional> 205f4a2713aSLionel Sambuc <optional> 206f4a2713aSLionel Sambuc <ref name="Declaration" /> 207f4a2713aSLionel Sambuc </optional> 208f4a2713aSLionel Sambuc <optional> 209f4a2713aSLionel Sambuc <ref name="Abstract" /> 210f4a2713aSLionel Sambuc </optional> 211f4a2713aSLionel Sambuc 212f4a2713aSLionel Sambuc <!-- Template parameters, parameters and results don't make sense for 213f4a2713aSLionel Sambuc namespaces, but the user can specify \tparam, \param or \returns 214f4a2713aSLionel Sambuc in a comment anyway. --> 215f4a2713aSLionel Sambuc <optional> 216f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 217f4a2713aSLionel Sambuc </optional> 218f4a2713aSLionel Sambuc <optional> 219f4a2713aSLionel Sambuc <ref name="Parameters" /> 220f4a2713aSLionel Sambuc </optional> 221f4a2713aSLionel Sambuc <optional> 222f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 223f4a2713aSLionel Sambuc </optional> 224f4a2713aSLionel Sambuc 225f4a2713aSLionel Sambuc <optional> 226f4a2713aSLionel Sambuc <ref name="Discussion" /> 227f4a2713aSLionel Sambuc </optional> 228f4a2713aSLionel Sambuc </element> 229f4a2713aSLionel Sambuc </define> 230f4a2713aSLionel Sambuc 231f4a2713aSLionel Sambuc <define name="Typedef"> 232f4a2713aSLionel Sambuc <element name="Typedef"> 233f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 234f4a2713aSLionel Sambuc <ref name="Name" /> 235f4a2713aSLionel Sambuc <optional> 236f4a2713aSLionel Sambuc <ref name="USR" /> 237f4a2713aSLionel Sambuc </optional> 238f4a2713aSLionel Sambuc <optional> 239f4a2713aSLionel Sambuc <ref name="Headerfile" /> 240f4a2713aSLionel Sambuc </optional> 241f4a2713aSLionel Sambuc <optional> 242f4a2713aSLionel Sambuc <ref name="Declaration" /> 243f4a2713aSLionel Sambuc </optional> 244f4a2713aSLionel Sambuc <optional> 245f4a2713aSLionel Sambuc <ref name="Abstract" /> 246f4a2713aSLionel Sambuc </optional> 247f4a2713aSLionel Sambuc 248f4a2713aSLionel Sambuc <optional> 249f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 250f4a2713aSLionel Sambuc </optional> 251f4a2713aSLionel Sambuc 252f4a2713aSLionel Sambuc <!-- Parameters and results might make sense for typedefs if the type is 253f4a2713aSLionel Sambuc a function pointer type. --> 254f4a2713aSLionel Sambuc <optional> 255f4a2713aSLionel Sambuc <ref name="Parameters" /> 256f4a2713aSLionel Sambuc </optional> 257f4a2713aSLionel Sambuc <optional> 258f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 259f4a2713aSLionel Sambuc </optional> 260f4a2713aSLionel Sambuc 261f4a2713aSLionel Sambuc <optional> 262f4a2713aSLionel Sambuc <ref name="Discussion" /> 263f4a2713aSLionel Sambuc </optional> 264f4a2713aSLionel Sambuc </element> 265f4a2713aSLionel Sambuc </define> 266f4a2713aSLionel Sambuc 267f4a2713aSLionel Sambuc <define name="Enum"> 268f4a2713aSLionel Sambuc <element name="Enum"> 269f4a2713aSLionel Sambuc <ref name="attrSourceLocation" /> 270f4a2713aSLionel Sambuc <ref name="Name" /> 271f4a2713aSLionel Sambuc <optional> 272f4a2713aSLionel Sambuc <ref name="USR" /> 273f4a2713aSLionel Sambuc </optional> 274f4a2713aSLionel Sambuc <optional> 275f4a2713aSLionel Sambuc <ref name="Headerfile" /> 276f4a2713aSLionel Sambuc </optional> 277f4a2713aSLionel Sambuc <optional> 278f4a2713aSLionel Sambuc <ref name="Declaration" /> 279f4a2713aSLionel Sambuc </optional> 280f4a2713aSLionel Sambuc <optional> 281f4a2713aSLionel Sambuc <ref name="Abstract" /> 282f4a2713aSLionel Sambuc </optional> 283f4a2713aSLionel Sambuc 284f4a2713aSLionel Sambuc <!-- Template parameters, parameters and results don't make sense for 285f4a2713aSLionel Sambuc enums, but the user can specify \tparam \param or \returns in a 286f4a2713aSLionel Sambuc comment anyway. --> 287f4a2713aSLionel Sambuc <optional> 288f4a2713aSLionel Sambuc <ref name="TemplateParameters" /> 289f4a2713aSLionel Sambuc </optional> 290f4a2713aSLionel Sambuc <optional> 291f4a2713aSLionel Sambuc <ref name="Parameters" /> 292f4a2713aSLionel Sambuc </optional> 293f4a2713aSLionel Sambuc <optional> 294f4a2713aSLionel Sambuc <ref name="ResultDiscussion" /> 295f4a2713aSLionel Sambuc </optional> 296f4a2713aSLionel Sambuc 297f4a2713aSLionel Sambuc <optional> 298f4a2713aSLionel Sambuc <ref name="Discussion" /> 299f4a2713aSLionel Sambuc </optional> 300f4a2713aSLionel Sambuc </element> 301f4a2713aSLionel Sambuc </define> 302f4a2713aSLionel Sambuc 303f4a2713aSLionel Sambuc <define name="attrSourceLocation"> 304f4a2713aSLionel Sambuc <optional> 305f4a2713aSLionel Sambuc <attribute name="file"> 306f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 307f4a2713aSLionel Sambuc <data type="string"> 308f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 309f4a2713aSLionel Sambuc </data> 310f4a2713aSLionel Sambuc </attribute> 311f4a2713aSLionel Sambuc </optional> 312f4a2713aSLionel Sambuc <optional> 313f4a2713aSLionel Sambuc <attribute name="line"> 314f4a2713aSLionel Sambuc <data type="positiveInteger" /> 315f4a2713aSLionel Sambuc </attribute> 316f4a2713aSLionel Sambuc <attribute name="column"> 317f4a2713aSLionel Sambuc <data type="positiveInteger" /> 318f4a2713aSLionel Sambuc </attribute> 319f4a2713aSLionel Sambuc </optional> 320f4a2713aSLionel Sambuc </define> 321f4a2713aSLionel Sambuc 322f4a2713aSLionel Sambuc <define name="Name"> 323f4a2713aSLionel Sambuc <element name="Name"> 324f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 325f4a2713aSLionel Sambuc <data type="string"> 326f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 327f4a2713aSLionel Sambuc </data> 328f4a2713aSLionel Sambuc </element> 329f4a2713aSLionel Sambuc </define> 330f4a2713aSLionel Sambuc 331f4a2713aSLionel Sambuc <define name="USR"> 332f4a2713aSLionel Sambuc <element name="USR"> 333f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 334f4a2713aSLionel Sambuc <data type="string"> 335f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 336f4a2713aSLionel Sambuc </data> 337f4a2713aSLionel Sambuc </element> 338f4a2713aSLionel Sambuc </define> 339f4a2713aSLionel Sambuc 340f4a2713aSLionel Sambuc <define name="Abstract"> 341f4a2713aSLionel Sambuc <element name="Abstract"> 342f4a2713aSLionel Sambuc <zeroOrMore> 343f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 344f4a2713aSLionel Sambuc </zeroOrMore> 345f4a2713aSLionel Sambuc </element> 346f4a2713aSLionel Sambuc </define> 347f4a2713aSLionel Sambuc 348f4a2713aSLionel Sambuc <define name="Declaration"> 349f4a2713aSLionel Sambuc <element name="Declaration"> 350f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 351f4a2713aSLionel Sambuc <data type="string"/> 352f4a2713aSLionel Sambuc </element> 353f4a2713aSLionel Sambuc </define> 354f4a2713aSLionel Sambuc 355f4a2713aSLionel Sambuc <define name="Headerfile"> 356f4a2713aSLionel Sambuc <element name="Headerfile"> 357f4a2713aSLionel Sambuc <oneOrMore> 358f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 359f4a2713aSLionel Sambuc </oneOrMore> 360f4a2713aSLionel Sambuc </element> 361f4a2713aSLionel Sambuc </define> 362f4a2713aSLionel Sambuc 363f4a2713aSLionel Sambuc <define name="Discussion"> 364f4a2713aSLionel Sambuc <element name="Discussion"> 365f4a2713aSLionel Sambuc <zeroOrMore> 366f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 367f4a2713aSLionel Sambuc </zeroOrMore> 368f4a2713aSLionel Sambuc </element> 369f4a2713aSLionel Sambuc </define> 370f4a2713aSLionel Sambuc 371f4a2713aSLionel Sambuc <define name="TemplateParameters"> 372f4a2713aSLionel Sambuc <element name="TemplateParameters"> 373f4a2713aSLionel Sambuc <!-- Parameter elements should be sorted according to position. --> 374f4a2713aSLionel Sambuc <oneOrMore> 375f4a2713aSLionel Sambuc <element name="Parameter"> 376f4a2713aSLionel Sambuc <element name="Name"> 377f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 378f4a2713aSLionel Sambuc <data type="string"> 379f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 380f4a2713aSLionel Sambuc </data> 381f4a2713aSLionel Sambuc </element> 382f4a2713aSLionel Sambuc <optional> 383f4a2713aSLionel Sambuc <!-- This is index at depth 0. libclang API can return more 384f4a2713aSLionel Sambuc information about position, but we expose only essential 385f4a2713aSLionel Sambuc information here, since "Parameter" elements are already 386f4a2713aSLionel Sambuc sorted. 387f4a2713aSLionel Sambuc 388f4a2713aSLionel Sambuc "Position" element could be added in future if needed. --> 389f4a2713aSLionel Sambuc <element name="Index"> 390f4a2713aSLionel Sambuc <data type="nonNegativeInteger" /> 391f4a2713aSLionel Sambuc </element> 392f4a2713aSLionel Sambuc </optional> 393f4a2713aSLionel Sambuc <!-- In general, template parameters with whitespace discussion 394f4a2713aSLionel Sambuc should not be emitted. Schema might be more strict here. --> 395f4a2713aSLionel Sambuc <element name="Discussion"> 396f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 397f4a2713aSLionel Sambuc </element> 398f4a2713aSLionel Sambuc </element> 399f4a2713aSLionel Sambuc </oneOrMore> 400f4a2713aSLionel Sambuc </element> 401f4a2713aSLionel Sambuc </define> 402f4a2713aSLionel Sambuc 403f4a2713aSLionel Sambuc <define name="Parameters"> 404f4a2713aSLionel Sambuc <element name="Parameters"> 405f4a2713aSLionel Sambuc <!-- Parameter elements should be sorted according to index. --> 406f4a2713aSLionel Sambuc <oneOrMore> 407f4a2713aSLionel Sambuc <element name="Parameter"> 408f4a2713aSLionel Sambuc <element name="Name"> 409f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 410f4a2713aSLionel Sambuc <data type="string"> 411f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 412f4a2713aSLionel Sambuc </data> 413f4a2713aSLionel Sambuc </element> 414f4a2713aSLionel Sambuc <optional> 415f4a2713aSLionel Sambuc <choice> 416f4a2713aSLionel Sambuc <element name="Index"> 417f4a2713aSLionel Sambuc <data type="nonNegativeInteger" /> 418f4a2713aSLionel Sambuc </element> 419f4a2713aSLionel Sambuc <element name="IsVarArg"> 420f4a2713aSLionel Sambuc <empty /> 421f4a2713aSLionel Sambuc </element> 422f4a2713aSLionel Sambuc </choice> 423f4a2713aSLionel Sambuc </optional> 424f4a2713aSLionel Sambuc <element name="Direction"> 425f4a2713aSLionel Sambuc <attribute name="isExplicit"> 426f4a2713aSLionel Sambuc <data type="boolean" /> 427f4a2713aSLionel Sambuc </attribute> 428f4a2713aSLionel Sambuc <choice> 429f4a2713aSLionel Sambuc <value>in</value> 430f4a2713aSLionel Sambuc <value>out</value> 431f4a2713aSLionel Sambuc <value>in,out</value> 432f4a2713aSLionel Sambuc </choice> 433f4a2713aSLionel Sambuc </element> 434f4a2713aSLionel Sambuc <!-- In general, template parameters with whitespace discussion 435f4a2713aSLionel Sambuc should not be emitted, unless direction is explicitly specified. 436f4a2713aSLionel Sambuc Schema might be more strict here. --> 437f4a2713aSLionel Sambuc <element name="Discussion"> 438f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 439f4a2713aSLionel Sambuc </element> 440f4a2713aSLionel Sambuc </element> 441f4a2713aSLionel Sambuc </oneOrMore> 442f4a2713aSLionel Sambuc </element> 443f4a2713aSLionel Sambuc </define> 444f4a2713aSLionel Sambuc 445f4a2713aSLionel Sambuc <define name="Exceptions"> 446f4a2713aSLionel Sambuc <element name="Exceptions"> 447f4a2713aSLionel Sambuc <oneOrMore> 448f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 449f4a2713aSLionel Sambuc </oneOrMore> 450f4a2713aSLionel Sambuc </element> 451f4a2713aSLionel Sambuc </define> 452f4a2713aSLionel Sambuc 453f4a2713aSLionel Sambuc <define name="Availability"> 454f4a2713aSLionel Sambuc <element name="Availability"> 455f4a2713aSLionel Sambuc <attribute name="distribution"> 456f4a2713aSLionel Sambuc <data type="string" /> 457f4a2713aSLionel Sambuc </attribute> 458f4a2713aSLionel Sambuc <optional> 459f4a2713aSLionel Sambuc <element name="IntroducedInVersion"> 460f4a2713aSLionel Sambuc <data type="string"> 461f4a2713aSLionel Sambuc <param name="pattern">\d+|\d+\.\d+|\d+\.\d+.\d+</param> 462f4a2713aSLionel Sambuc </data> 463f4a2713aSLionel Sambuc </element> 464f4a2713aSLionel Sambuc </optional> 465f4a2713aSLionel Sambuc <optional> 466f4a2713aSLionel Sambuc <element name="DeprecatedInVersion"> 467f4a2713aSLionel Sambuc <data type="string"> 468f4a2713aSLionel Sambuc <param name="pattern">\d+|\d+\.\d+|\d+\.\d+.\d+</param> 469f4a2713aSLionel Sambuc </data> 470f4a2713aSLionel Sambuc </element> 471f4a2713aSLionel Sambuc </optional> 472f4a2713aSLionel Sambuc <optional> 473f4a2713aSLionel Sambuc <element name="RemovedAfterVersion"> 474f4a2713aSLionel Sambuc <data type="string"> 475f4a2713aSLionel Sambuc <param name="pattern">\d+|\d+\.\d+|\d+\.\d+.\d+</param> 476f4a2713aSLionel Sambuc </data> 477f4a2713aSLionel Sambuc </element> 478f4a2713aSLionel Sambuc </optional> 479f4a2713aSLionel Sambuc <optional> 480f4a2713aSLionel Sambuc <element name="DeprecationSummary"> 481f4a2713aSLionel Sambuc <data type="string" /> 482f4a2713aSLionel Sambuc </element> 483f4a2713aSLionel Sambuc </optional> 484f4a2713aSLionel Sambuc <optional> 485f4a2713aSLionel Sambuc <ref name="Unavailable" /> 486f4a2713aSLionel Sambuc </optional> 487f4a2713aSLionel Sambuc </element> 488f4a2713aSLionel Sambuc </define> 489f4a2713aSLionel Sambuc 490f4a2713aSLionel Sambuc <define name="Deprecated"> 491f4a2713aSLionel Sambuc <element name="Deprecated"> 492f4a2713aSLionel Sambuc <optional> 493f4a2713aSLionel Sambuc <data type="string" /> 494f4a2713aSLionel Sambuc </optional> 495f4a2713aSLionel Sambuc </element> 496f4a2713aSLionel Sambuc </define> 497f4a2713aSLionel Sambuc 498f4a2713aSLionel Sambuc <define name="Unavailable"> 499f4a2713aSLionel Sambuc <element name="Unavailable"> 500f4a2713aSLionel Sambuc <optional> 501f4a2713aSLionel Sambuc <data type="string" /> 502f4a2713aSLionel Sambuc </optional> 503f4a2713aSLionel Sambuc </element> 504f4a2713aSLionel Sambuc </define> 505f4a2713aSLionel Sambuc 506f4a2713aSLionel Sambuc <define name="ResultDiscussion"> 507f4a2713aSLionel Sambuc <element name="ResultDiscussion"> 508f4a2713aSLionel Sambuc <zeroOrMore> 509f4a2713aSLionel Sambuc <ref name="TextBlockContent" /> 510f4a2713aSLionel Sambuc </zeroOrMore> 511f4a2713aSLionel Sambuc </element> 512f4a2713aSLionel Sambuc </define> 513f4a2713aSLionel Sambuc 514f4a2713aSLionel Sambuc <define name="TextBlockContent"> 515f4a2713aSLionel Sambuc <choice> 516f4a2713aSLionel Sambuc <element name="Para"> 517f4a2713aSLionel Sambuc <optional> 518f4a2713aSLionel Sambuc <attribute name="kind"> 519f4a2713aSLionel Sambuc <choice> 520f4a2713aSLionel Sambuc <value>attention</value> 521f4a2713aSLionel Sambuc <value>author</value> 522f4a2713aSLionel Sambuc <value>authors</value> 523f4a2713aSLionel Sambuc <value>bug</value> 524f4a2713aSLionel Sambuc <value>copyright</value> 525f4a2713aSLionel Sambuc <value>date</value> 526f4a2713aSLionel Sambuc <value>invariant</value> 527f4a2713aSLionel Sambuc <value>note</value> 528f4a2713aSLionel Sambuc <value>post</value> 529f4a2713aSLionel Sambuc <value>pre</value> 530f4a2713aSLionel Sambuc <value>remark</value> 531f4a2713aSLionel Sambuc <value>remarks</value> 532f4a2713aSLionel Sambuc <value>sa</value> 533f4a2713aSLionel Sambuc <value>see</value> 534f4a2713aSLionel Sambuc <value>since</value> 535f4a2713aSLionel Sambuc <value>todo</value> 536f4a2713aSLionel Sambuc <value>version</value> 537f4a2713aSLionel Sambuc <value>warning</value> 538f4a2713aSLionel Sambuc </choice> 539f4a2713aSLionel Sambuc </attribute> 540f4a2713aSLionel Sambuc </optional> 541f4a2713aSLionel Sambuc <zeroOrMore> 542f4a2713aSLionel Sambuc <ref name="TextInlineContent" /> 543f4a2713aSLionel Sambuc </zeroOrMore> 544f4a2713aSLionel Sambuc </element> 545f4a2713aSLionel Sambuc <element name="Verbatim"> 546f4a2713aSLionel Sambuc <attribute name="xml:space"> 547f4a2713aSLionel Sambuc <value>preserve</value> 548f4a2713aSLionel Sambuc </attribute> 549f4a2713aSLionel Sambuc <attribute name="kind"> 550f4a2713aSLionel Sambuc <!-- TODO: add all Doxygen verbatim kinds --> 551f4a2713aSLionel Sambuc <choice> 552f4a2713aSLionel Sambuc <value>code</value> 553f4a2713aSLionel Sambuc <value>verbatim</value> 554f4a2713aSLionel Sambuc </choice> 555f4a2713aSLionel Sambuc </attribute> 556f4a2713aSLionel Sambuc <text /> 557f4a2713aSLionel Sambuc </element> 558f4a2713aSLionel Sambuc </choice> 559f4a2713aSLionel Sambuc </define> 560f4a2713aSLionel Sambuc 561f4a2713aSLionel Sambuc <define name="TextInlineContent"> 562f4a2713aSLionel Sambuc <choice> 563f4a2713aSLionel Sambuc <text /> 564f4a2713aSLionel Sambuc <element name="bold"> 565f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 566f4a2713aSLionel Sambuc <data type="string"> 567f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 568f4a2713aSLionel Sambuc </data> 569f4a2713aSLionel Sambuc </element> 570f4a2713aSLionel Sambuc <element name="monospaced"> 571f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 572f4a2713aSLionel Sambuc <data type="string"> 573f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 574f4a2713aSLionel Sambuc </data> 575f4a2713aSLionel Sambuc </element> 576f4a2713aSLionel Sambuc <element name="emphasized"> 577f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 578f4a2713aSLionel Sambuc <data type="string"> 579f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 580f4a2713aSLionel Sambuc </data> 581f4a2713aSLionel Sambuc </element> 582f4a2713aSLionel Sambuc <element name="rawHTML"> 583*0a6a1f1dSLionel Sambuc <optional> 584*0a6a1f1dSLionel Sambuc <!-- If not specified, the default value is 'false'. --> 585*0a6a1f1dSLionel Sambuc <!-- The value 'false' or absence of the attribute does not imply 586*0a6a1f1dSLionel Sambuc that the HTML is actually well-formed. --> 587*0a6a1f1dSLionel Sambuc <attribute name="isMalformed"> 588*0a6a1f1dSLionel Sambuc <data type="boolean" /> 589*0a6a1f1dSLionel Sambuc </attribute> 590*0a6a1f1dSLionel Sambuc </optional> 591f4a2713aSLionel Sambuc <!-- Non-empty text content. --> 592f4a2713aSLionel Sambuc <data type="string"> 593f4a2713aSLionel Sambuc <param name="pattern">.*\S.*</param> 594f4a2713aSLionel Sambuc </data> 595f4a2713aSLionel Sambuc </element> 596f4a2713aSLionel Sambuc </choice> 597f4a2713aSLionel Sambuc </define> 598f4a2713aSLionel Sambuc 599f4a2713aSLionel Sambuc</grammar> 600f4a2713aSLionel Sambuc 601