blob: a0853e8160f6b391db26169292c28762d6dc9b27 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
elementFormDefault="qualified"
attributeFormDefault="unqualified"
targetNamespace="http://www.swissdec.ch/schema/sd/20050902/SalaryDeclarationServiceTypes"
xmlns:tns="http://www.swissdec.ch/schema/sd/20050902/SalaryDeclarationServiceTypes"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:sd="http://www.swissdec.ch/schema/sd/20050902/SalaryDeclaration"
xmlns:ct="http://www.swissdec.ch/schema/sd/20050902/SalaryDeclarationContainer">
<!-- last modified $Date: 2005/09/05 14:15:30 $Author: boehm $ -->
<!-- imports -->
<xs:import
namespace="http://www.swissdec.ch/schema/sd/20050902/SalaryDeclaration"
schemaLocation="SalaryDeclaration.xsd"/>
<xs:import
namespace="http://www.swissdec.ch/schema/sd/20050902/SalaryDeclarationContainer"
schemaLocation="SalaryDeclarationContainer.xsd"/>
<!-- definitions Ping -->
<xs:element name="Ping" type="tns:PingType"/>
<xs:element name="PingResponse" type="tns:PingType"/>
<xs:complexType name="PingType">
<xs:sequence>
<xs:element name="Echo" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<!-- definitions CheckInteroperability -->
<xs:element name="CheckInteroperability" type="tns:CheckInteroperabilityType"/>
<xs:element name="CheckInteroperabilityResponse" type="tns:CheckInteroperabilityResponseType"/>
<xs:complexType name="CheckInteroperabilityType">
<xs:sequence>
<!-- use following UmlautString: ÄËÖÜÁÉÓÚÀÈÒÙÂÊÔÛ -->
<xs:element name="UmlautString" type="xs:string"/>
<!-- use following value for the FirstOperand: 999000000000.00 (999 milliards)-->
<!-- verwende folgenden Wert als FirstOperand: 999000000000.00 (999 Milliarden)-->
<xs:element name="FirstOperand" type="sd:SalaryAmountType"/>
<xs:element name="SecondOperand" type="sd:SalaryAmountType"/>
<xs:element name="SystemDateTime" type="xs:dateTime"/>
<!-- MonitoringID: acts as identyfier for writing and accessing
monitoring informations in/from a reference application
(related to testing and certification) -->
<xs:element name="MonitoringID" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="CheckInteroperabilityResponseType">
<xs:sequence>
<!-- we expect following string as value of UmlautString: äëöüáéóúàèòùâêôû -->
<xs:element name="UmlautStringIsCorrect" type="sd:SimpleBooleanType"/>
<!-- expected are 999000000000.00 (999 billions) -->
<!-- erwartet werden 999000000000.00 (999 Milliarden) -->
<xs:element name="FirstOperandIsCorrect" type="sd:SimpleBooleanType"/>
<xs:element name="UmlautString" type="xs:string"/>
<xs:element name="AdditionResult" type="sd:SalaryAmountType"/>
<xs:element name="SubtractionResult" type="sd:SalaryAmountType"/>
<xs:element name="SystemDateTime" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
<!-- definitions DeclareSalary -->
<xs:element name="DeclareSalary" type="ct:SalaryDeclarationRequestType">
<xs:annotation>
<xs:documentation>SalaryDeclarationRequest</xs:documentation>
</xs:annotation>
<xs:unique name="UVG-LAA-ID-Key2">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:UVG-LAA/sd:Suva | ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:UVG-LAA/sd:Other"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="UVG-LAA-ID-Ref2" refer="tns:UVG-LAA-ID-Key2">
<xs:selector xpath="ct:Job/ct:Addressees/ct:UVG-LAA"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="UVGZ-LAAC-ID-Key2">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:UVGZ-LAAC"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="UVGZ-LAAC-ID-Ref2" refer="tns:UVGZ-LAAC-ID-Key2">
<xs:selector xpath="ct:Job/ct:Addressees/ct:UVGZ-LAAC"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="KTG-AMC-ID-Key2">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:KTG-AMC"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="KTG-AMC-ID-Ref2" refer="tns:KTG-AMC-ID-Key2">
<xs:selector xpath="ct:Job/ct:Addressees/ct:KTG-AMC"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="BVG-LPP-ID-Key2">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:BVG-LPP"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="BVG-LPP-ID-Ref2" refer="tns:BVG-LPP-ID-Key2">
<xs:selector xpath="ct:Job/ct:Addressees/ct:BVG-LPP"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="FAK-CAF-ID-Key2">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:FAK-CAF"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="FAK-CAF-ID-Ref2" refer="tns:FAK-CAF-ID-Key2">
<xs:selector xpath="ct:Job/ct:Addressees/ct:FAK-CAF"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
</xs:element>
<xs:element name="DeclareSalaryResponse" type="ct:SalaryDeclarationStatusResponseType">
<xs:annotation>
<xs:documentation>GetSalaryDeclarationResponse</xs:documentation>
</xs:annotation>
</xs:element>
<!-- definitions DeclareSalaryDeferred -->
<xs:element name="DeclareSalaryDeferred" type="ct:SalaryDeclarationRequestType">
<xs:annotation>
<xs:documentation>SalaryDeclarationRequest</xs:documentation>
</xs:annotation>
<xs:unique name="UVG-LAA-ID-Key3">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:UVG-LAA/sd:Suva | ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:UVG-LAA/sd:Other"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="UVG-LAA-ID-Ref3" refer="tns:UVG-LAA-ID-Key3">
<xs:selector xpath="ct:Job/ct:Addressees/ct:UVG-LAA"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="UVGZ-LAAC-ID-Key3">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:UVGZ-LAAC"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="UVGZ-LAAC-ID-Ref3" refer="tns:UVGZ-LAAC-ID-Key3">
<xs:selector xpath="ct:Job/ct:Addressees/ct:UVGZ-LAAC"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="KTG-AMC-ID-Key3">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:KTG-AMC"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="KTG-AMC-ID-Ref3" refer="tns:KTG-AMC-ID-Key3">
<xs:selector xpath="ct:Job/ct:Addressees/ct:KTG-AMC"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="BVG-LPP-ID-Key3">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:BVG-LPP"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="BVG-LPP-ID-Ref3" refer="tns:BVG-LPP-ID-Key3">
<xs:selector xpath="ct:Job/ct:Addressees/ct:BVG-LPP"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
<xs:unique name="FAK-CAF-ID-Key3">
<xs:selector xpath="ct:SalaryDeclaration/sd:Company/sd:Insurances/sd:FAK-CAF"/>
<xs:field xpath="@InstitutionID"/>
</xs:unique>
<xs:keyref name="FAK-CAF-ID-Ref3" refer="tns:FAK-CAF-ID-Key3">
<xs:selector xpath="ct:Job/ct:Addressees/ct:FAK-CAF"/>
<xs:field xpath="@InstitutionIDRef"/>
</xs:keyref>
</xs:element>
<xs:element name="DeclareSalaryDeferredResponse" type="ct:DeclareSalaryDeferredResponseType">
<xs:annotation>
<xs:documentation>SalaryDeclarationResponse</xs:documentation>
</xs:annotation>
</xs:element>
<!-- definitions GetStatusFromDeferredDeclaration -->
<xs:element name="GetStatusFromDeferredDeclaration" type="ct:GetStatusFromDeferredDeclarationType">
<xs:annotation>
<xs:documentation>GetSalaryDeclarationRequest</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="GetStatusFromDeferredDeclarationResponse" type="ct:SalaryDeclarationStatusResponseType">
<xs:annotation>
<xs:documentation>GetSalaryDeclarationResponse</xs:documentation>
</xs:annotation>
</xs:element>
<!-- definition SalaryDeclarationFault -->
<xs:element name="SalaryDeclarationFault" type="ct:SalaryDeclarationFaultType">
<xs:annotation>
<xs:documentation>SalaryDeclarationFault</xs:documentation>
</xs:annotation>
</xs:element>
</xs:schema>