Skip to main content

OrgService_XSD

XSD:

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema 
xmlns:pref="http://common.types.raiffeisen.hu/common" 
xmlns:tns="http://organization.types.raiffeisen.hu/OrganizationData" 
targetNamespace="http://organization.types.raiffeisen.hu/OrganizationData" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
  <xsd:import namespace="http://common.types.raiffeisen.hu/common" schemaLocation="../common/common.xsd">
  </xsd:import>

  <!-- ......................................................... -->
  <!-- ................ GetOUInfo operation .................... -->
  <!-- ......................................................... -->  
  <xsd:complexType name="GetOUInfoRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="orgHierarchyCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="GetOUInfoResponse">
    <xsd:sequence>
  <!--xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="orgHierarchyCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouHunName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouEngName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="costCenter" type="pref:costCenterType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouVipCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="eqCode" type="pref:branchCodeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="eqMnemonic" type="pref:branchMnemonicType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="location" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="validFrom" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="validTo" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouManager" type="pref:orgPersonIdType"/>
<xsd:element maxOccurs="1" minOccurs="1" name="ouManagerUserId" type="pref:orgPersonIdType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouDeputyManager" type="pref:orgPersonIdType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="ouDeputyManagerUserId" type="pref:orgPersonIdType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouAssistant1" type="pref:orgPersonIdType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="ouAssistantUserId" type="pref:orgPersonIdType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="parentOu" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="openDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="branchType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="attributes" type="tns:Attribute"/>
    </xsd:sequence>
  </xsd:complexType>
    
  <xsd:element name="GetOUInfoRequest" type="tns:GetOUInfoRequest"/>
  <xsd:element name="GetOUInfoResponse" type="tns:GetOUInfoResponse"/>
  
  <!-- ......................................................... -->
  <!-- ................ searchOU operation .................... -->
  <!-- ......................................................... -->  
  <xsd:complexType name="SearchOURequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="eqMnemonic" type="pref:branchMnemonicType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="eqCode" type="pref:branchCodeType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouManagerUserId" type="pref:orgPersonIdType"/>
  </xsd:sequence>
  </xsd:complexType>
  
   <xsd:complexType name="OUInfo">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouHunName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="eqMnemonic" type="pref:branchMnemonicType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="eqCode" type="pref:branchCodeType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouManager" type="pref:orgPersonIdType"/>
<xsd:element maxOccurs="1" minOccurs="1" name="ouManagerUserId" type="pref:orgPersonIdType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="attributes" type="tns:Attribute"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="SearchOUResponse">
    <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="ous" type="tns:OUInfo"/>
  </xsd:sequence>
  </xsd:complexType>
    
  <xsd:element name="SearchOURequest" type="tns:SearchOURequest"/>
  <xsd:element name="SearchOUResponse" type="tns:SearchOUResponse"/>
  
  <!-- ......................................................... -->
  <!-- ................ GetOUHierarchy operation ............... -->
  <!-- ......................................................... -->
  <xsd:complexType name="GetOUHierarchyRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="orgHierarchyCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="maxLevel" type="xsd:int"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="ouTypes" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="OrganizationUnitNode">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouType" type="xsd:string"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="subOUs" type="tns:OrganizationUnitNode"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="GetOUHierarchyResponse">
  <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="orgHierarchyCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouTree" type="tns:OrganizationUnitNode"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:element name="GetOUHierarchyRequest" type="tns:GetOUHierarchyRequest"/>
  <xsd:element name="GetOUHierarchyResponse" type="tns:GetOUHierarchyResponse"/>

  <!-- ......................................................... -->
  <!-- ................ GetOUMembers operation ................. -->
  <!-- ......................................................... -->
  <xsd:complexType name="GetOUMembersRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="orgHierarchyCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personType" type="pref:twoCharsType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personStatus" type="pref:twoCharsType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="listRecursively" type="xsd:boolean"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="requiredIds" type="tns:RequiredIds"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="Person">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="0" name="personId" type="pref:personIdType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="fullName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="role" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouShortName" type="xsd:string"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="GetOUMembersResponse">
  <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="orgHierarchyCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="persons" type="tns:Person"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:element name="GetOUMembersRequest" type="tns:GetOUMembersRequest"/>
  <xsd:element name="GetOUMembersResponse" type="tns:GetOUMembersResponse"/>


  <!-- ......................................................... -->
  <!-- ................ GetPersonInfo operation ................ -->
  <!-- ......................................................... -->
  <xsd:complexType name="RequiredIds">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="0" name="needKapitiUserMnemonic" type="xsd:boolean"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="needNDSUserId" type="xsd:boolean"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="needVipPersonId" type="xsd:boolean"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="needOrgPersonId" type="xsd:boolean"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="needSFECode" type="xsd:boolean"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="GetPersonInfoRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personId" type="pref:personIdType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="dataGroup" type="pref:twoCharsType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="requiredIds" type="tns:RequiredIds"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="Attribute">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="key" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="value" type="xsd:string"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="GetPersonInfoResponse">
  <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenTime" type="pref:timestampType"/>
 
  <xsd:element maxOccurs="1" minOccurs="0" name="email" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="alias" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="fullName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="displayName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="prefix" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="firstName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="lastName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="middleName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="birthName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="birthDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="motherName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="taxNumber" type="pref:personalTaxNumberType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="idNumber" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="idType" type="xsd:string"/> 
  <xsd:element maxOccurs="1" minOccurs="0" name="homeZIP" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="homeAddress" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="photoId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personStatus" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personType" type="xsd:string"/> 
  <xsd:element maxOccurs="1" minOccurs="0" name="company" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="ouType" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="defaultOU" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="businessUnit" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="defaultBranchMnemonic" type="pref:branchMnemonicType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="defaultRegionMnemonic" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="costCenter" type="pref:costCenterType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="defaultLocation" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="role" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="title" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="contractId" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="conctractEntryDate" type="pref:dateType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="contractEndDate" type="pref:dateType"/>

<xsd:element maxOccurs="1" minOccurs="0" name="personId" type="pref:personIdType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="superiorId" type="pref:orgPersonIdType"/>

<xsd:element maxOccurs="1" minOccurs="0" name="workforceId" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="ACOCode" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="ADUserId" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="NotesUserId" type="xsd:string"/>

<xsd:element maxOccurs="1" minOccurs="0" name="basicNumber" type="xsd:string"/>

<xsd:element maxOccurs="1" minOccurs="0" name="postalZIP" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="postalAddress" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="telephone" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="mobile" type="xsd:string"/>

  <xsd:element maxOccurs="unbounded" minOccurs="0" name="attributes" type="tns:Attribute"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:element name="GetPersonInfoRequest" type="tns:GetPersonInfoRequest"/>
  <xsd:element name="GetPersonInfoResponse" type="tns:GetPersonInfoResponse"/>

  <!-- ......................................................... -->
  <!-- ................ GetPersonRoles operation ............... -->
  <!-- ......................................................... -->
  <xsd:complexType name="GetPersonGroupsRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personId" type="pref:personIdType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="listOptions" type="pref:listOptionsType"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="Group">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="groupShortName" type="xsd:string"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="GetPersonGroupsResponse">
  <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personId" type="pref:personIdType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="roles" type="tns:Group"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:element name="GetPersonGroupsRequest" type="tns:GetPersonGroupsRequest"/>
  <xsd:element name="GetPersonGroupsResponse" type="tns:GetPersonGroupsResponse"/>

  <!-- ......................................................... -->
  <!-- ................ SearchPerson operation ................. -->
  <!-- ......................................................... -->
  <xsd:complexType name="SearchPersonRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context"
  type="pref:contextType" />
  <xsd:element maxOccurs="1" minOccurs="0" name="listOptions"
  type="pref:listOptionsType" />
  <xsd:element maxOccurs="1" minOccurs="0" name="firstName"
  type="xsd:string" />
  <xsd:element maxOccurs="1" minOccurs="0" name="lastName"
  type="xsd:string" />
  <xsd:element maxOccurs="1" minOccurs="0" name="birthName"
  type="xsd:string" />
  <xsd:element maxOccurs="1" minOccurs="0" name="birthDate"
  type="pref:dateType" />
  <xsd:element maxOccurs="1" minOccurs="0" name="motherName"
  type="xsd:string" />
  <xsd:element maxOccurs="1" minOccurs="1"
  name="orgHierarchyCode" type="xsd:string" />
  <xsd:element maxOccurs="1" minOccurs="0" name="ouShortName"
  type="xsd:string" />
  <xsd:element maxOccurs="1" minOccurs="0"
  name="recursiveSearch" type="xsd:boolean" />
  <xsd:element maxOccurs="1" minOccurs="0" name="personStatus"
  type="pref:twoCharsType" />
  <xsd:element maxOccurs="1" minOccurs="0" name="personType"
  type="pref:twoCharsType" />
  <!-- xsd:element maxOccurs="1" minOccurs="0" name="role" type="tns:Role"/> -->
  <xsd:element maxOccurs="1" minOccurs="0" name="CIGR"
  type="pref:cigrType" />
  <xsd:element maxOccurs="1" minOccurs="0" name="givenTime"
  type="pref:timestampType" />
  <xsd:element name="location" type="xsd:string" maxOccurs="1" minOccurs="0"></xsd:element>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="SearchPersonResponse">
  <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenTime" type="pref:timestampType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="persons" type="tns:Person"/>
  </xsd:sequence>
  </xsd:complexType>

  <xsd:element name="SearchPersonRequest" type="tns:SearchPersonRequest"/>
  <xsd:element name="SearchPersonResponse" type="tns:SearchPersonResponse"/>

 <!-- ......................................................... -->
  <!-- ................ GetPeopleInfo operation ................ -->
  <!-- ......................................................... -->

  <xsd:complexType name="GetPeopleInfoRequest">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="personIdType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="dataGroup" type="pref:twoCharsType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="1" name="personIds" type="xsd:string"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="OrgUnit">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ouShortName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="parentOu" type="xsd:string"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="Address">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="0" name="addressType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="country" type="pref:twoCharsType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="zip" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="city" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="street" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="houseNumber" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="floor" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="poBox" type="xsd:string"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="PersonDetails">
  <xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="0" name="fullName" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="displayName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="prefix" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="firstName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="lastName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="middleName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="birthName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="motherName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="birthDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="birthPlace" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="nationality" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="homeAddress" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="idType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="taxNumber" type="pref:personalTaxNumberType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="idNumber" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="photoId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personStatus" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personType" type="xsd:string"/> 
  <xsd:element maxOccurs="1" minOccurs="0" name="company" type="xsd:string"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="orgUnit" type="tns:OrgUnit"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="businessUnit" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="defaultBranchMnemonic" type="pref:branchMnemonicType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="defaultRegionMnemonic" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="costCenter" type="pref:costCenterType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="defaultLocation" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="role" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="title" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="superiorName" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="superiorPersonId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="contractId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="conctractEntryDate" type="pref:dateType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="contractEndDate" type="pref:dateType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="VipId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="customerId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="basicNumber" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="SFECode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="NDSuserId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="OS400userId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="NotesUserId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ADUserId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="ACOCode" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="workforceId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="email" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="LNMail" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="office" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="phone" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="phoneExt" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="mobile" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="fax" type="xsd:string"/>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="address" type="tns:Address"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="People">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="0" name="personId" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="notFound" type="xsd:boolean"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="personDetails" type="tns:PersonDetails"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="GetPeopleInfoResponse">
  <xsd:sequence>
  <!-- >xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:contextType"/-->
    <xsd:element maxOccurs="1" minOccurs="1" name="resultCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenTime" type="pref:timestampType"/>
    <xsd:element maxOccurs="unbounded" minOccurs="1" name="people" type="tns:People"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:element name="GetPeopleInfoRequest" type="tns:GetPeopleInfoRequest"/>
  <xsd:element name="GetPeopleInfoResponse" type="tns:GetPeopleInfoResponse"/>

  <!-- ......................................................... -->
  <!-- .............. GetPeopleInfo_v2 operation ............. -->
  <!-- ......................................................... -->

  <xsd:complexType name="GetPeopleInfo_v2Request">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:serviceContextType"/>
  <xsd:element maxOccurs="1" minOccurs="1" name="personIdType" type="xsd:string"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="dataGroup" type="pref:twoCharsType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenDate" type="pref:dateType"/>
  <xsd:element maxOccurs="unbounded" minOccurs="1" name="personIds" type="xsd:string"/>
  </xsd:sequence>
  <xsd:attribute name="operationVersion" type="pref:operationVersionType"/>
  </xsd:complexType>
  
  <xsd:complexType name="AddressList">
  <xsd:sequence>
  <xsd:element name="addressItem" type="tns:addressType" minOccurs="0" maxOccurs="unbounded"/>
  </xsd:sequence>
  </xsd:complexType>
    
  <xsd:complexType name="personalData">
  <xsd:sequence>
  <xsd:element name="fullName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="displayName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="prefix" type="xsd:string" minOccurs="0"/>
  <xsd:element name="firstName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="lastName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="middleName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="birthName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="motherName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="birthDate" type="pref:dateType" minOccurs="0"/>
  <xsd:element name="birthPlace" type="xsd:string" minOccurs="0"/>
  <xsd:element name="nationality" type="xsd:string" minOccurs="0"/>
  <xsd:element name="idType" type="xsd:string" minOccurs="0"/>
  <xsd:element name="idNumber" type="xsd:string" minOccurs="0"/>
  <xsd:element name="taxNumber" type="pref:personalTaxNumberType" minOccurs="0"/>
  <xsd:element name="addresses" type="tns:AddressList" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="addressType">
  <xsd:sequence>
  <xsd:element name="addressType" type="xsd:int" minOccurs="0"/>
  <xsd:element name="validityStartDate" type="pref:dateType" minOccurs="0"/>
  <xsd:element name="country" type="xsd:string" minOccurs="0"/>
  <xsd:element name="countryIsoCode" type="xsd:string" minOccurs="0"/>
  <xsd:element name="postalCode" type="xsd:string" minOccurs="0"/>
  <xsd:element name="district" type="xsd:string" minOccurs="0"/>
  <xsd:element name="administrativeArea" type="xsd:string" minOccurs="0"/>
  <xsd:element name="locality" type="xsd:string" minOccurs="0"/>
  <xsd:element name="thoroughfare" type="xsd:string" minOccurs="0"/>
  <xsd:element name="thoroughfareType" type="xsd:string" minOccurs="0"/>
  <xsd:element name="houseNumber" type="xsd:string" minOccurs="0"/>
  <xsd:element name="building" type="xsd:string" minOccurs="0"/>
  <xsd:element name="staircase" type="xsd:string" minOccurs="0"/>
  <xsd:element name="floor" type="xsd:string" minOccurs="0"/>
  <xsd:element name="door" type="xsd:string" minOccurs="0"/>
  <xsd:element name="postOfficeBox" type="xsd:string" minOccurs="0"/>
  <xsd:element name="landRegisterReference" type="xsd:string" minOccurs="0"/>
  <xsd:element name="supplementaryAddress" type="xsd:string" minOccurs="0"/>
  <xsd:element name="gpsLongitude" type="xsd:decimal" minOccurs="0"/>
  <xsd:element name="gpsLatitude" type="xsd:decimal" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="LocationInfo">
  <xsd:sequence>
  <xsd:element name="locationId" type="xsd:string"/>
  <xsd:element name="address" type="tns:addressType"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="OrgUnitList">
  <xsd:sequence>
  <xsd:element name="orgUnitItem" type="tns:OrgUnit" minOccurs="0" maxOccurs="unbounded"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="organizationalData">
  <xsd:sequence>
  <xsd:element name="employeeStatus" type="xsd:string" minOccurs="0"/>
  <xsd:element name="employeeType" type="xsd:string" minOccurs="0"/>
  <xsd:element name="company" type="xsd:string" minOccurs="0"/>
  <xsd:element name="orgUnits" type="tns:OrgUnitList" minOccurs="0"/>
  <xsd:element name="businessUnit" type="xsd:string" minOccurs="0"/>
  <xsd:element name="equationCode" type="pref:branchCodeType" minOccurs="0"/>
  <xsd:element name="equationMnemonic" type="pref:branchMnemonicType" minOccurs="0"/>
  <xsd:element name="branchCode" type="pref:branchMnemonicType" minOccurs="0"/>
  <xsd:element name="branchNumber" type="pref:branchCodeType" minOccurs="0"/>
  <xsd:element name="branchName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="regionCode" type="pref:regionMnemonicType" minOccurs="0"/>
  <xsd:element name="regionNumber" type="pref:branchCodeType" minOccurs="0"/>
  <xsd:element name="regionName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="costCenter" type="pref:costCenterType" minOccurs="0"/>
  <xsd:element name="location" type="tns:LocationInfo" minOccurs="0"/>
  <xsd:element name="role" type="xsd:string" minOccurs="0"/>
  <xsd:element name="title" type="xsd:string" minOccurs="0"/>
  <xsd:element name="superiorName" type="xsd:string" minOccurs="0"/>
  <xsd:element name="superiorPersonId" type="xsd:string" minOccurs="0"/>
  <xsd:element name="contractId" type="xsd:string" minOccurs="0"/>
  <xsd:element name="conctractEntryDate" type="pref:dateType" minOccurs="0"/>
  <xsd:element name="contractEndDate" type="pref:dateType" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="identifiers">
  <xsd:sequence>
  <xsd:element name="personId" type="pref:orgPersonIdType" minOccurs="0"/>
  <xsd:element name="vipId" type="pref:vipPersonIdType" minOccurs="0"/>
  <xsd:element name="customerId" type="pref:customerIdType" minOccurs="0"/>
  <xsd:element name="basicNumber" type="pref:basicNumberType" minOccurs="0"/>
  <xsd:element name="SFECode" type="pref:SFEcodeType" minOccurs="0"/>
  <xsd:element name="NDSUserId" type="pref:NDSUserIdType" minOccurs="0"/>
  <xsd:element name="OS400userId" type="xsd:string" minOccurs="0"/>
  <xsd:element name="NotesUserId" type="xsd:string" minOccurs="0"/>
  <xsd:element name="ADUserId" type="xsd:string" minOccurs="0"/>
  <xsd:element name="ACOCode" type="xsd:string" minOccurs="0"/>
  <xsd:element name="workforceId" type="xsd:string" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="contactInfo">
  <xsd:sequence>
  <xsd:element name="email" type="xsd:string" minOccurs="0"/>
  <xsd:element name="notesDN" type="pref:notesEmailAddressType" minOccurs="0"/>
  <xsd:element name="phone" type="xsd:string" minOccurs="0"/>
  <xsd:element name="phoneExt" type="xsd:string" minOccurs="0"/>
  <xsd:element name="mobile" type="xsd:string" minOccurs="0"/>
  <xsd:element name="fax" type="xsd:string" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
   
  <xsd:complexType name="personDetails_v2">
  <xsd:sequence>
  <xsd:element name="personalData" type="tns:personalData" maxOccurs="1" minOccurs="0"/>
  <xsd:element name="organizationalData" type="tns:organizationalData" maxOccurs="1" minOccurs="0"/>
  <xsd:element name="identifiers" type="tns:identifiers" maxOccurs="1" minOccurs="0"/>
  <xsd:element name="contactInfo" type="tns:contactInfo" maxOccurs="1" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
   
  <xsd:complexType name="people_v2">
  <xsd:sequence>
  <xsd:element name="itemReturnCode" type="pref:return-codeType" maxOccurs="1" minOccurs="0"/>
  <xsd:element name="personId" type="xsd:string" maxOccurs="1" minOccurs="0"/>
  <xsd:element name="personDetails" type="tns:personDetails_v2" minOccurs="0"/>
  </xsd:sequence>
  </xsd:complexType>
  
  <xsd:complexType name="peopleListType">
  <xsd:sequence>
  <xsd:element maxOccurs="unbounded" minOccurs="0" name="peopleItem" type="tns:people_v2"/>
  </xsd:sequence>
  </xsd:complexType>
    
  <xsd:complexType name="GetPeopleInfo_v2Response">
  <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="context" type="pref:serviceContextType"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="returnCode" type="pref:return-codeType"/>
  <xsd:element maxOccurs="1" minOccurs="0" name="givenTime" type="pref:timestampType"/>
    <xsd:element maxOccurs="1" minOccurs="1" name="people" type="tns:peopleListType"/>
  </xsd:sequence>
  <xsd:attribute name="serviceRelease" type="pref:serviceReleaseType" use="required"/>
  <xsd:attribute name="operationVersion" type="pref:operationVersionType" use="required"/>
  </xsd:complexType>
  
  <xsd:element name="GetPeopleInfo_v2Request" type="tns:GetPeopleInfo_v2Request"/>
  <xsd:element name="GetPeopleInfo_v2Response" type="tns:GetPeopleInfo_v2Response"/>
</xsd:schema>

 

 

GetPeopleInfo_v2 a modernebb és szigorúbb változata a lekérdezésnek. Ahhoz, hogy tudd, mit kell megadnod, az XSD-ben a minOccurs és use="required" jelzéseket kell figyelned.

Hogyan olvassuk az XSD-t a kötelező mezőkhöz?

  1. minOccurs="1": Ez azt jelenti, hogy az elemnek legalább egyszer szerepelnie kell. Ha nincs odaírva semmi, az alapértelmezett érték szintén 1.

  2. minOccurs="0": Ez azt jelenti, hogy a mező opcionális (elhagyható).

  3. use="required": Ez az attribútumokra vonatkozik (amik a kezdő tag-en belül vannak). Ha ezt látod, az attribútum kötelező.


1. GetPeopleInfo_v2 REQUEST (A kérés)

Az XSD-ben a GetPeopleInfo_v2Request típusnál ezeket látjuk:

  • context: minOccurs="1"KÖTELEZŐ

  • personIdType: minOccurs="1"KÖTELEZŐ

  • personIds: minOccurs="1" és maxOccurs="unbounded"KÖTELEZŐ (legalább egyet meg kell adni)

  • operationVersion (attribútum): type="pref:operationVersionType" (itt nincs explicit required, de a v2 logikája miatt elvárt).

Példa Request:

XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:org="http://organization.types.raiffeisen.hu/OrganizationData"
                  xmlns:com="http://common.types.raiffeisen.hu/common">
   <soapenv:Header/>
   <soapenv:Body>
      <org:GetPeopleInfo_v2Request operationVersion="2.0">
         
         <org:context>
            <com:serviceID>WIKI_READER</com:serviceID>
            <com:requestID>REQ-98765</com:requestID>
         </org:context>
         
         <org:personIdType>AD_USER</org:personIdType>
         
         <org:dataGroup>02</org:dataGroup>
         
         <org:personIds>creznek</org:personIds>
         
      </org:GetPeopleInfo_v2Request>
   </soapenv:Body>
</soapenv:Envelope>


2. GetPeopleInfo_v2 RESPONSE (A válasz)

A válasznál az XSD-ben ezek a kötelező elemek:

  • context: minOccurs="1" → A válaszban is visszaküldik a hívási környezetet.

  • returnCode: minOccurs="1" → Siker/Hiba kódja.

  • people: minOccurs="1" → A lista maga (még ha üres is, a tag kell).

  • serviceRelease és operationVersion: use="required" → Ezek kötelező attribútumok a válasz fejlécében.

Példa Response:

XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:org="http://organization.types.raiffeisen.hu/OrganizationData">
   <soapenv:Body>
      <org:GetPeopleInfo_v2Response serviceRelease="1.1" operationVersion="2.0">
         
         <org:context>
            </org:context>
         
         <org:returnCode>
            <code>OK</code>
         </org:returnCode>
         
         <org:givenTime>2026-01-06T12:50:00</org:givenTime>
         
         <org:people>
            <org:peopleItem>
               <org:personId>creznek</org:personId>
               
               <org:personDetails>
                  <org:personalData>
                     <org:fullName>Creznek Gábor</org:fullName>
                     <org:firstName>Gábor</org:firstName>
                  </org:personalData>
                  
                  <org:identifiers>
                     <org:ADUserId>creznek</org:ADUserId>
                     <org:workforceId>W12345</org:workforceId>
                  </org:identifiers>
                  
                  <org:contactInfo>
                     <org:email>gabor.creznek@raiffeisen.hu</org:email>
                  </org:contactInfo>
               </org:personDetails>
               
            </org:peopleItem>
         </org:people>
         
      </org:GetPeopleInfo_v2Response>
   </soapenv:Body>
</soapenv:Envelope>

Miért fontos ez neked?

Amikor programozol vagy tesztelsz (pl. SoapUI-ban), ha kihagysz egy olyan mezőt, ahol minOccurs="1" van, a szerver egyből elutasítja a kérést egy "Schema Validation Error" üzenettel, mielőtt még egyáltalán megnézné, ki az a creznek.

A v2-es verzióban látható, hogy a personDetails_v2 belsejében lévő négy fő csoport (personalData, organizationalData, identifiers, contactInfo) mindegyike minOccurs="0". Ez azért van, mert előfordulhat, hogy egy dolgozónak csak a nevét tudjuk, de a telefonszámát vagy a főnökét nem – így a rendszer rugalmas marad.

Mehet ez az összefoglaló is a wikidbe, vagy ránézzünk a getOUMembers-re is, ami hasonló logikával működik, de osztályokra?