1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 X-road EU namespace: http://x-road.eu/xsd/x-road.xsd 4 03.04.2012: added xml:lang attributes to <xrd:title> elements 5 28.03.2013: improved language usage 6--> 7<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xrd="http://x-road.eu/xsd/x-road.xsd" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://x-road.eu/xsd/x-road.xsd"> 8 <!-- prefiks xml --> 9 <import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2009/01/xml.xsd" /> 10 <!-- header elements an types --> 11 <complexType name="hdrstd"> 12 <sequence> 13 <element ref="xrd:consumer" /> 14 <element ref="xrd:producer" /> 15 <element ref="xrd:userId" /> 16 <element ref="xrd:id" /> 17 <element ref="xrd:service" /> 18 <element ref="xrd:issue" /> 19 </sequence> 20 </complexType> 21 <element name="consumer" type="string"> 22 <annotation> 23 <documentation>Service consumer code</documentation> 24 </annotation> 25 </element> 26 <element name="producer" type="string"> 27 <annotation> 28 <documentation>Service producer code</documentation> 29 </annotation> 30 </element> 31 <element name="userId" type="string"> 32 <annotation> 33 <documentation>Service user identification code with country code prefix (2-characters)</documentation> 34 </annotation> 35 </element> 36 <element name="id" type="string"> 37 <annotation> 38 <documentation>Query id</documentation> 39 </annotation> 40 </element> 41 <element name="service" type="string"> 42 <annotation> 43 <documentation>Query name</documentation> 44 </annotation> 45 </element> 46 <element name="issue" type="string"> 47 <annotation> 48 <documentation>Query issue</documentation> 49 </annotation> 50 </element> 51 <element name="unit" type="string"> 52 <annotation> 53 <documentation>Service user's unit code</documentation> 54 </annotation> 55 </element> 56 <element name="position" type="string"> 57 <annotation> 58 <documentation>Service user postition name</documentation> 59 </annotation> 60 </element> 61 <element name="authenticator" type="string"> 62 <annotation> 63 <documentation>Service user's authenticator</documentation> 64 </annotation> 65 </element> 66 <element name="userName" type="string"> 67 <annotation> 68 <documentation>Service user full name</documentation> 69 </annotation> 70 </element> 71 <element name="async" type="boolean"> 72 <annotation> 73 <documentation>Asynchroneous service flag</documentation> 74 </annotation> 75 </element> 76 <element name="encode" type="string"> 77 <annotation> 78 <documentation>Name of encoder-db</documentation> 79 </annotation> 80 </element> 81 <!-- Elements describing other elements and operations--> 82 <element name="title"> 83 <annotation> 84 <documentation>Title</documentation> 85 </annotation> 86 <complexType> 87 <simpleContent> 88 <extension base="string"> 89 <attribute ref="xml:lang" default="en" /> 90 </extension> 91 </simpleContent> 92 </complexType> 93 </element> 94 <element name="notes"> 95 <annotation> 96 <documentation>Notes for user</documentation> 97 </annotation> 98 <complexType> 99 <simpleContent> 100 <extension base="string"> 101 <attribute ref="xml:lang" default="en" /> 102 </extension> 103 </simpleContent> 104 </complexType> 105 </element> 106 <element name="technotes"> 107 <annotation> 108 <documentation>Notes for technical stuff</documentation> 109 </annotation> 110 <complexType> 111 <simpleContent> 112 <extension base="string"> 113 <attribute ref="xml:lang" default="en" /> 114 </extension> 115 </simpleContent> 116 </complexType> 117 </element> 118 <element name="ref" type="string"> 119 <annotation> 120 <documentation>The element name of the element is associated</documentation> 121 </annotation> 122 </element> 123 <element name="wildcard"> 124 <annotation> 125 <documentation>List of permitted wildcards</documentation> 126 </annotation> 127 <simpleType> 128 <restriction base="string"> 129 <pattern value="[*?-PS]+" /> 130 </restriction> 131 </simpleType> 132 </element> 133 <element name="version"> 134 <annotation> 135 <documentation>Version</documentation> 136 </annotation> 137 <simpleType> 138 <restriction base="string"> 139 <pattern value="v\d+" /> 140 </restriction> 141 </simpleType> 142 </element> 143 <element name="nocontent" type="string"> 144 <annotation> 145 <documentation>Meaning of empty fields</documentation> 146 </annotation> 147 </element> 148 <element name="requirecontent" type="string"> 149 <annotation> 150 <documentation>Meaning of empty fields</documentation> 151 </annotation> 152 </element> 153 <element name="address"> 154 <annotation> 155 <documentation>Port address</documentation> 156 </annotation> 157 <complexType> 158 <attribute name="producer" type="string" /> 159 </complexType> 160 </element> 161 <complexType name="legacy_response"> 162 <sequence> 163 <element name="url" type="xrd:url"> 164 <annotation> 165 <appinfo> 166 <xrd:title xml:lang="et">Infosüsteemi sissepääsu URL</xrd:title> 167 <xrd:title xml:lang="en">URL for entering external portal</xrd:title> 168 </appinfo> 169 </annotation> 170 </element> 171 </sequence> 172 </complexType> 173 <!-- Mittetehniline veateade --> 174 <complexType name="invalidInput"> 175 <sequence> 176 <element name="faultCode" type="string"> 177 <annotation> 178 <appinfo> 179 <xrd:title xml:lang="et">Kood</xrd:title> 180 <xrd:title xml:lang="en">Code</xrd:title> 181 </appinfo> 182 </annotation> 183 </element> 184 <element name="faultString" type="string"> 185 <annotation> 186 <appinfo> 187 <xrd:title xml:lang="et">Teade</xrd:title> 188 <xrd:title xml:lang="en">Error message</xrd:title> 189 </appinfo> 190 </annotation> 191 </element> 192 </sequence> 193 </complexType> 194 <!-- Tüübid --> 195 <simpleType name="jpg"> 196 <annotation> 197 <appinfo> 198 <xrd:title xml:lang="et">Pilt (JPEG)</xrd:title> 199 <xrd:title xml:lang="en">JPEG picture</xrd:title> 200 </appinfo> 201 </annotation> 202 <restriction base="base64Binary" /> 203 </simpleType> 204 <simpleType name="gif"> 205 <annotation> 206 <appinfo> 207 <xrd:title xml:lang="et">Pilt (GIF)</xrd:title> 208 <xrd:title xml:lang="en">GIF picture</xrd:title> 209 </appinfo> 210 </annotation> 211 <restriction base="base64Binary" /> 212 </simpleType> 213 <simpleType name="xml"> 214 <annotation> 215 <appinfo> 216 <xrd:title xml:lang="et">XMLina kasutatav tekst</xrd:title> 217 <xrd:title xml:lang="en">Text as XML</xrd:title> 218 </appinfo> 219 </annotation> 220 <restriction base="string" /> 221 </simpleType> 222 <simpleType name="txt"> 223 <annotation> 224 <appinfo> 225 <xrd:title xml:lang="et">Tekstifail</xrd:title> 226 <xrd:title xml:lang="en">Text file</xrd:title> 227 </appinfo> 228 </annotation> 229 <restriction base="string" /> 230 </simpleType> 231 <simpleType name="csv"> 232 <annotation> 233 <appinfo> 234 <xrd:title xml:lang="et">CSV-vormingus fail</xrd:title> 235 <xrd:title xml:lang="en">CSV file</xrd:title> 236 </appinfo> 237 </annotation> 238 <restriction base="string" /> 239 </simpleType> 240 <simpleType name="maakond"> 241 <annotation> 242 <appinfo> 243 <xrd:title xml:lang="et">Maakond</xrd:title> 244 <xrd:title xml:lang="en">County</xrd:title> 245 <xrd:technotes>County code in Estonian Administrative and Settlement Classification (EHAK)</xrd:technotes> 246 </appinfo> 247 </annotation> 248 <restriction base="string"> 249 <pattern value="\d{4}" /> 250 </restriction> 251 </simpleType> 252 <simpleType name="vald"> 253 <annotation> 254 <appinfo> 255 <xrd:title xml:lang="et">Vald</xrd:title> 256 <xrd:title xml:lang="en">Parish</xrd:title> 257 <xrd:technotes>Parish code in Estonian Administrative and Settlement Classification (EHAK)</xrd:technotes> 258 </appinfo> 259 </annotation> 260 <restriction base="string"> 261 <pattern value="\d{4}" /> 262 </restriction> 263 </simpleType> 264 <simpleType name="asula"> 265 <annotation> 266 <appinfo> 267 <xrd:title xml:lang="et">Asula</xrd:title> 268 <xrd:title xml:lang="en">Village</xrd:title> 269 <xrd:technotes>Village code in Estonian Administrative and Settlement Classification (EHAK)</xrd:technotes> 270 </appinfo> 271 </annotation> 272 <restriction base="string"> 273 <pattern value="\d{4}" /> 274 </restriction> 275 </simpleType> 276 <simpleType name="ehak"> 277 <annotation> 278 <appinfo> 279 <xrd:title xml:lang="et">Haldusüksus</xrd:title> 280 <xrd:title xml:lang="en">Unit</xrd:title> 281 <xrd:technotes>Unit code in Estonian Administrative and Settlement Classification (EHAK). Could be County, Parish or Village</xrd:technotes> 282 </appinfo> 283 </annotation> 284 <restriction base="string"> 285 <pattern value="\d{4}" /> 286 </restriction> 287 </simpleType> 288 <simpleType name="url"> 289 <annotation> 290 <appinfo> 291 <xrd:title xml:lang="et">Link</xrd:title> 292 <xrd:title xml:lang="en">Link</xrd:title> 293 <xrd:technotes>WWW URL</xrd:technotes> 294 </appinfo> 295 </annotation> 296 <restriction base="anyURI" /> 297 </simpleType> 298 <complexType name="ArrayOfString"> 299 <sequence> 300 <element name="item" type="string" minOccurs="0" maxOccurs="unbounded" /> 301 </sequence> 302 </complexType> 303 <attribute name="sensitive" type="boolean" /> 304 <!--listMethods - meta-service for db adapter: returns list of all implemented queries--> 305 <element name="listMethods" nillable="true" /> 306 <element name="listMethodsResponse"> 307 <complexType> 308 <sequence> 309 <element name="response"> 310 <complexType> 311 <sequence> 312 <element name="item" type="string" minOccurs="0" maxOccurs="unbounded" /> 313 </sequence> 314 </complexType> 315 </element> 316 </sequence> 317 </complexType> 318 </element> 319 <!--testSystem - meta-service for db adapter: checks system status --> 320 <element name="testSystem" nillable="true" /> 321 <element name="testSystemResponse" nillable="true" /> 322 <!-- unitValid (service for xroad portal), checks if the unit is valid at the current moment--> 323 <complexType name="unitValid"> 324 <sequence> 325 <element name="request"> 326 <complexType> 327 <sequence> 328 <element name="unitCode" type="string"> 329 <annotation> 330 <appinfo> 331 <xrd:title xml:lang="et">Üksuse kood</xrd:title> 332 <xrd:title xml:lang="en">Unit code</xrd:title> 333 </appinfo> 334 </annotation> 335 </element> 336 </sequence> 337 </complexType> 338 </element> 339 </sequence> 340 </complexType> 341 <complexType name="unitValidResponse"> 342 <sequence> 343 <element name="request"> 344 <complexType> 345 <sequence> 346 <element name="unitCode" type="string" /> 347 </sequence> 348 </complexType> 349 </element> 350 <element name="response"> 351 <complexType> 352 <all> 353 <element name="isValid" type="boolean"> 354 <annotation> 355 <appinfo> 356 <xrd:title xml:lang="et">Kas üksus kehtib</xrd:title> 357 <xrd:title xml:lang="en">Is unit valid at the moment</xrd:title> 358 </appinfo> 359 </annotation> 360 </element> 361 <element name="name" type="string"> 362 <annotation> 363 <appinfo> 364 <xrd:title xml:lang="et">Üksuse nimi</xrd:title> 365 <xrd:title xml:lang="en">Unit name</xrd:title> 366 </appinfo> 367 </annotation> 368 </element> 369 </all> 370 </complexType> 371 </element> 372 </sequence> 373 </complexType> 374 <!--unitRepresent (service for xroad portal) returns units, the person is allowed to represent --> 375 <complexType name="unitRepresent"> 376 <sequence> 377 <element name="request"> 378 <complexType> 379 <sequence> 380 <element name="personCode" type="string"> 381 <annotation> 382 <appinfo> 383 <xrd:title xml:lang="et">Isikukood</xrd:title> 384 <xrd:title xml:lang="en">Person SSN</xrd:title> 385 </appinfo> 386 </annotation> 387 </element> 388 </sequence> 389 </complexType> 390 </element> 391 </sequence> 392 </complexType> 393 <complexType name="unitRepresentResponse"> 394 <sequence> 395 <element name="request"> 396 <complexType> 397 <sequence> 398 <element name="personCode" type="string" /> 399 </sequence> 400 </complexType> 401 </element> 402 <element name="response"> 403 <complexType> 404 <sequence> 405 <element name="item" minOccurs="0" maxOccurs="unbounded"> 406 <complexType> 407 <all> 408 <element name="unitCode" type="string"> 409 <annotation> 410 <appinfo> 411 <xrd:title xml:lang="et">Üksuse kood</xrd:title> 412 <xrd:title xml:lang="en">Unit code</xrd:title> 413 </appinfo> 414 </annotation> 415 </element> 416 <element name="name" type="string"> 417 <annotation> 418 <appinfo> 419 <xrd:title xml:lang="et">Üksuse nimi</xrd:title> 420 <xrd:title xml:lang="en">Unit name</xrd:title> 421 </appinfo> 422 </annotation> 423 </element> 424 </all> 425 </complexType> 426 </element> 427 </sequence> 428 </complexType> 429 </element> 430 </sequence> 431 </complexType> 432 <!-- query for loading classifications to X-road portal--> 433 <element name="loadClassification"> 434 <complexType> 435 <sequence> 436 <element name="request" nillable="true"> 437 <complexType> 438 <sequence> 439 <element name="name" type="string" nillable="true"> 440 <annotation> 441 <appinfo> 442 <xrd:title xml:lang="et">Nimi</xrd:title> 443 <xrd:title xml:lang="en">Name</xrd:title> 444 </appinfo> 445 </annotation> 446 </element> 447 <element name="subset" type="string" nillable="true"> 448 <annotation> 449 <appinfo> 450 <xrd:title xml:lang="et">Alamhulk</xrd:title> 451 <xrd:title xml:lang="en">Subset</xrd:title> 452 </appinfo> 453 </annotation> 454 </element> 455 <element name="from" type="date" nillable="true"> 456 <annotation> 457 <appinfo> 458 <xrd:title xml:lang="et">Alates</xrd:title> 459 <xrd:title xml:lang="en">From</xrd:title> 460 </appinfo> 461 </annotation> 462 </element> 463 <element name="max" type="string" nillable="true"> 464 <annotation> 465 <appinfo> 466 <xrd:title xml:lang="et">Maksimaalne arv</xrd:title> 467 <xrd:title xml:lang="en">Max count</xrd:title> 468 </appinfo> 469 </annotation> 470 </element> 471 </sequence> 472 </complexType> 473 </element> 474 </sequence> 475 </complexType> 476 </element> 477 <element name="loadClassificationResponse"> 478 <complexType> 479 <sequence> 480 <element name="request" nillable="true"> 481 <complexType> 482 <sequence> 483 <element name="name" type="string" nillable="true" /> 484 <element name="subset" type="string" nillable="true" /> 485 <element name="from" type="date" nillable="true" /> 486 <element name="max" type="string" nillable="true" /> 487 </sequence> 488 </complexType> 489 </element> 490 <element name="response"> 491 <complexType> 492 <sequence> 493 <element name="classificationNames" nillable="true"> 494 <complexType> 495 <sequence> 496 <element name="item" type="string" minOccurs="0" maxOccurs="unbounded"> 497 <annotation> 498 <appinfo> 499 <xrd:title xml:lang="et">Nimi</xrd:title> 500 <xrd:title xml:lang="en">Name</xrd:title> 501 </appinfo> 502 </annotation> 503 </element> 504 </sequence> 505 </complexType> 506 </element> 507 <element name="classifications" nillable="true"> 508 <complexType> 509 <sequence> 510 <any minOccurs="0" maxOccurs="unbounded" /> 511 </sequence> 512 </complexType> 513 </element> 514 <element name="faultCode" type="xrd:faultCode" nillable="true" /> 515 <element name="faultString" type="xrd:faultString" nillable="true" /> 516 </sequence> 517 </complexType> 518 </element> 519 </sequence> 520 </complexType> 521 </element> 522 <!-- userAllowedMethods service returns user permissions from X-road portal --> 523 <element name="userAllowedMethods"> 524 <complexType> 525 <sequence> 526 <element name="request"> 527 <complexType> 528 <sequence> 529 <element name="personCode" type="string" nillable="true"> 530 <annotation> 531 <appinfo> 532 <xrd:title xml:lang="et">Isikukood</xrd:title> 533 <xrd:title xml:lang="en">Person SSN</xrd:title> 534 </appinfo> 535 </annotation> 536 </element> 537 </sequence> 538 </complexType> 539 </element> 540 </sequence> 541 </complexType> 542 </element> 543 <element name="userAllowedMethodsResponse"> 544 <complexType> 545 <sequence> 546 <element name="request" nillable="true"> 547 <complexType> 548 <sequence> 549 <element name="personCode" type="string" nillable="true" /> 550 </sequence> 551 </complexType> 552 </element> 553 <element name="response"> 554 <complexType> 555 <sequence> 556 <element name="person" nillable="true" maxOccurs="unbounded"> 557 <complexType> 558 <sequence> 559 <element name="personCode" type="string"> 560 <annotation> 561 <appinfo> 562 <xrd:title xml:lang="et">Isikukood</xrd:title> 563 <xrd:title xml:lang="en">Person identification code</xrd:title> 564 </appinfo> 565 </annotation> 566 </element> 567 <element name="orgQuery" nillable="true" maxOccurs="unbounded"> 568 <complexType> 569 <sequence> 570 <element name="orgCode" type="string"> 571 <annotation> 572 <appinfo> 573 <xrd:title xml:lang="et">Asutuse kood</xrd:title> 574 <xrd:title xml:lang="en">Organization code</xrd:title> 575 </appinfo> 576 </annotation> 577 </element> 578 <element name="orgName" type="string"> 579 <annotation> 580 <appinfo> 581 <xrd:title xml:lang="et">Asutuse nimi</xrd:title> 582 <xrd:title xml:lang="en">Organization name</xrd:title> 583 </appinfo> 584 </annotation> 585 </element> 586 <element name="query" minOccurs="0" maxOccurs="unbounded"> 587 <complexType> 588 <sequence> 589 <element name="queryName" type="string"> 590 <annotation> 591 <appinfo> 592 <xrd:title xml:lang="et">Päringu nimi</xrd:title> 593 <xrd:title xml:lang="en">Query name</xrd:title> 594 </appinfo> 595 </annotation> 596 </element> 597 <element name="validUntil" type="date" nillable="true"> 598 <annotation> 599 <appinfo> 600 <xrd:title xml:lang="et">Kehtib kuupäevani</xrd:title> 601 <xrd:title xml:lang="en">Permission valid until date</xrd:title> 602 </appinfo> 603 </annotation> 604 </element> 605 </sequence> 606 </complexType> 607 </element> 608 </sequence> 609 </complexType> 610 </element> 611 </sequence> 612 </complexType> 613 </element> 614 <element name="faultCode" type="xrd:faultCode" nillable="true" /> 615 <element name="faultString" type="xrd:faultString" nillable="true" /> 616 </sequence> 617 </complexType> 618 </element> 619 </sequence> 620 </complexType> 621 </element> 622 <!-- Non-technical error --> 623 <simpleType name="faultCode"> 624 <annotation> 625 <appinfo> 626 <xrd:title xml:lang="et">Kood</xrd:title> 627 <xrd:title xml:lang="en">Code</xrd:title> 628 </appinfo> 629 </annotation> 630 <restriction base="string" /> 631 </simpleType> 632 <simpleType name="faultString"> 633 <annotation> 634 <appinfo> 635 <xrd:title xml:lang="et">Teade</xrd:title> 636 <xrd:title xml:lang="en">Error message</xrd:title> 637 </appinfo> 638 </annotation> 639 <restriction base="string" /> 640 </simpleType> 641</schema> 642