<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://ns.hr-xml.org/2007-04-15" targetNamespace="http://ns.hr-xml.org/2007-04-15" elementFormDefault="qualified" version="2007-04-15">
<xsd:annotation>
<xsd:documentation>
"Copyright The HR-XML Consortium. All Rights Reserved. http://www.hr-xml.org"
Name: PayrollBenefitContributions.xsd
Status: Recommendation
Date this version: 2007-04-15
Purpose: Defines XSD for PayrollBenefitContributions
Author(s): Penni Kessler - Ultimate Software, Payroll Workgroup
Documentation: PayrollBenefitContributions.html
Terms of license can be found in license.txt.
2004-07-06: An optional attribute xml:lang was added to the root element.
</xsd:documentation>
</xsd:annotation>
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="../../W3C/xml.xsd"/>
<xsd:include schemaLocation="../CPO/PersonName.xsd"/>
<xsd:include schemaLocation="../CPO/PostalAddress.xsd"/>
<xsd:include schemaLocation="../CPO/xStringPatternExtensionType.xsd"/>
<xsd:include schemaLocation="../CPO/DateTimeDataTypes.xsd"/>
<xsd:include schemaLocation="../CPO/ISOUtilities.xsd"/>
<xsd:complexType name="PayrollBenefitContributionsIdentifierType">
<xsd:sequence>
<xsd:element name="Id" type="xsd:string"/>
<xsd:element name="Domain" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="IdIssuer" type="xsd:string" minOccurs="0"/>
<xsd:element name="IdType" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="primaryIdentifier" type="xsd:boolean"/>
<xsd:attribute name="validFrom" type="AnyDateTimeNaType"/>
<xsd:attribute name="validTo" type="AnyDateTimeNaType"/>
</xsd:complexType>
<xsd:element name="Identifier" type="PayrollBenefitContributionsIdentifierType"/>
<xsd:element name="PayrollBenefitContributions">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="TransmittalDate"/>
<xsd:element ref="CreateDate"/>
<xsd:element name="VendorPlan" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="PlanId" type="PayrollBenefitContributionsIdentifierType"/>
<xsd:element ref="Participant" maxOccurs="unbounded"/>
<xsd:element ref="OrganizationInformation" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element ref="ControlTotals" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute ref="xml:lang"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="TransmittalDate" type="LocalDateType"/>
<xsd:element name="CreateDate" type="LocalDateType"/>
<xsd:element name="GovernmentId" type="PayrollBenefitContributionsIdentifierType"/>
<xsd:element name="PersonId" type="PayrollBenefitContributionsIdentifierType"/>
<xsd:element name="MaritalStatus">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="MaritalStatusCode"/>
<xsd:element name="StartDate" type="LocalDateType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="OrganizationInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="GovernmentId"/>
<xsd:element ref="Name" minOccurs="0"/>
<xsd:element ref="Level" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="LocationSummary" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="effectiveDate" type="LocalDateType"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="LocationSummary">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Municipality" type="xsd:string" minOccurs="0"/>
<xsd:element name="Region" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="CountryCode" type="CountryCodeType" minOccurs="0"/>
<xsd:element name="PostalCode" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Level" type="xsd:string"/>
<xsd:element name="DatesInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="StartDate" type="LocalDateType" minOccurs="0"/>
<xsd:element name="EndDate" type="LocalDateType" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="dateType" type="dateTypePatternExtensionType"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="PayrollInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="PayDate" minOccurs="0"/>
<xsd:element ref="PayEndDate" minOccurs="0"/>
<xsd:element ref="EligibleEarnings" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="Contribution" maxOccurs="unbounded"/>
<xsd:element ref="PayFrequency" minOccurs="0"/>
<xsd:element ref="CompensationType" minOccurs="0"/>
<xsd:element ref="EmployeeSchedule" minOccurs="0"/>
<xsd:element ref="PayRate" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="OvertimeStatus" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="PayDate" type="LocalDateType"/>
<xsd:element name="PayEndDate" type="LocalDateType"/>
<xsd:element name="Contribution">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ContributionAmount" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="ToDateAmount" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="Loan" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="typeContribution" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="ER"/>
<xsd:enumeration value="Person"/>
<xsd:enumeration value="Qual"/>
<xsd:enumeration value="QualNonElective"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="currencyCode" type="CurrencyCodeType"/>
<xsd:attribute name="planType" type="planTypePatternExtensionType" use="required"/>
<xsd:attribute name="contributionType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Pretax"/>
<xsd:enumeration value="Posttax"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="CompensationType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Hourly"/>
<xsd:enumeration value="Salaried"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PayFrequency" type="PayFrequencyType"/>
<xsd:simpleType name="PayFrequencyType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Daily"/>
<xsd:enumeration value="TwiceWeekly"/>
<xsd:enumeration value="Biweekly"/>
<xsd:enumeration value="FourWeeks"/>
<xsd:enumeration value="Monthly"/>
<xsd:enumeration value="SemiMonthly"/>
<xsd:enumeration value="Quarterly"/>
<xsd:enumeration value="Annually"/>
<xsd:enumeration value="Weekly"/>
</xsd:restriction>
</xsd:simpleType>
<!-- old
<xsd:element name="PayFrequency">
<xsd:simpleType>
<xsd:restriction base="PayFrequencyType">
<xsd:enumeration value="Daily"/>
<xsd:enumeration value="TwiceWeekly"/>
<xsd:enumeration value="Biweekly"/>
<xsd:enumeration value="FourWeeks"/>
<xsd:enumeration value="Monthly"/>
<xsd:enumeration value="SemiMonthly"/>
<xsd:enumeration value="Quarterly"/>
<xsd:enumeration value="Annually"/>
<xsd:enumeration value="Weekly"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:simpleType name="PayFrequencyType">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
-->
<xsd:element name="EmployeeSchedule" type="xsd:string"/>
<xsd:element name="ContributionAmount">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="planId" type="xsd:string"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="ToDateAmount">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="toDateType" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="InceptionToDate"/>
<xsd:enumeration value="FiscalYTD"/>
<xsd:enumeration value="LifetimeToDate"/>
<xsd:enumeration value="YTD"/>
<xsd:enumeration value="Period"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="PlanInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="Loan" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="PersonContributionInformation" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="PlanStatus" minOccurs="0"/>
<xsd:element ref="PlanDates" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="PlanYearsService" minOccurs="0"/>
<xsd:element ref="EmployerMatch" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="planType" type="planTypePatternExtensionType" use="required"/>
<xsd:attribute name="currencyCode" type="CurrencyCodeType"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="PlanStatus">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="LocalDateType">
<xsd:attribute name="planStatusType" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Active"/>
<xsd:enumeration value="EligibleNotContributing"/>
<xsd:enumeration value="NotEligible"/>
<xsd:enumeration value="Suspended"/>
<xsd:enumeration value="Terminated"/>
<xsd:enumeration value="RetiredReceivingInstallments"/>
<xsd:enumeration value="TerminatedAwaitingPayment"/>
<xsd:enumeration value="TerminatedPaidOut"/>
<xsd:enumeration value="TerminatedDeferringPayment"/>
<xsd:enumeration value="EligibleNotParticipating"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="PlanYearsService" type="xsd:integer"/>
<xsd:element name="Id" type="xsd:string"/>
<xsd:element name="LoanPaymentAmount">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="toDateType" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="InceptionToDate"/>
<xsd:enumeration value="FiscalYTD"/>
<xsd:enumeration value="LifetimeToDate"/>
<xsd:enumeration value="YTD"/>
<xsd:enumeration value="Period"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="ServiceHours">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="periodType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Period"/>
<xsd:enumeration value="YTD"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="PersonContributionInformation">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="contributionPctAmt">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Percent"/>
<xsd:enumeration value="Amount"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="contributionType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Pretax"/>
<xsd:enumeration value="Posttax"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="goalOrPeriod" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Goal"/>
<xsd:enumeration value="Period"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="PlanDates">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="LocalDateType">
<xsd:attribute name="planDateType" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Eligible"/>
<xsd:enumeration value="Participate"/>
<xsd:enumeration value="Vesting"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Flags">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="flagType" type="flagTypePatternExtensionType"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="EligibleEarnings">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="periodType">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Period"/>
<xsd:enumeration value="YTD"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="currencyCode" type="CurrencyCodeType"/>
<xsd:attribute name="planType" type="planTypePatternExtensionType" use="required"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Name" type="xsd:string"/>
<xsd:element name="PlanSummaryInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="PlanInformation" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="Flags" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="ServiceHours" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Loan">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="Id" minOccurs="0"/>
<xsd:element ref="LoanPaymentAmount"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Participant">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="DatesInformation" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="PayrollInformation" minOccurs="0"/>
<xsd:element ref="PlanSummaryInformation" minOccurs="0"/>
<xsd:element ref="PersonInformation" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="EmployerMatch" type="xsd:decimal"/>
<xsd:element name="PayRate">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="payRateType" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Hourly"/>
<xsd:enumeration value="Daily"/>
<xsd:enumeration value="Weekly"/>
<xsd:enumeration value="BiWeekly"/>
<xsd:enumeration value="Monthly"/>
<xsd:enumeration value="Quarterly"/>
<xsd:enumeration value="Annually"/>
<xsd:enumeration value="SemiMonthly"/>
<xsd:enumeration value="4Week"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="currencyCode" type="CurrencyCodeType"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="OvertimeStatus">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Exempt"/>
<xsd:enumeration value="NonExempt"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ControlTotals">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:decimal">
<xsd:attribute name="planId" type="xsd:string" use="required"/>
<xsd:attribute name="type" type="xsd:string"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="PersonInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="PersonId" maxOccurs="unbounded"/>
<xsd:element ref="PersonName" minOccurs="0"/>
<xsd:element name="DateOfBirth" type="LocalDateType" minOccurs="0"/>
<xsd:element ref="PostalAddress" minOccurs="0"/>
<xsd:element ref="MaritalStatus" minOccurs="0"/>
<xsd:element name="Gender" type="GenderCodeType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="MaritalStatusCode">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Registered Domestic Partner"/>
<xsd:enumeration value="Divorced"/>
<xsd:enumeration value="Single"/>
<xsd:enumeration value="Married"/>
<xsd:enumeration value="Unreported"/>
<xsd:enumeration value="Separated"/>
<xsd:enumeration value="Unmarried"/>
<xsd:enumeration value="Widowed"/>
<xsd:enumeration value="Legally Separated"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:simpleType name="planTypes">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="401k"/>
<xsd:enumeration value="403b"/>
<xsd:enumeration value="408k"/>
<xsd:enumeration value="419"/>
<xsd:enumeration value="457"/>
<xsd:enumeration value="457f"/>
<xsd:enumeration value="501c"/>
<xsd:enumeration value="Simple"/>
<xsd:enumeration value="Loan"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="dateTypes">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Hire"/>
<xsd:enumeration value="Rehire"/>
<xsd:enumeration value="Termination"/>
<xsd:enumeration value="Disability"/>
<xsd:enumeration value="Inactive"/>
<xsd:enumeration value="Retirement"/>
<xsd:enumeration value="Suspension"/>
<xsd:enumeration value="AdjustedServiceDate"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="flagTypes">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Union"/>
<xsd:enumeration value="HCE"/>
<xsd:enumeration value="TopTenOfficer"/>
<xsd:enumeration value="EEOfficer"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="planTypePatternExtensionType">
<xsd:union memberTypes="planTypes xStringPatternExtensionType"/>
</xsd:simpleType>
<xsd:simpleType name="dateTypePatternExtensionType">
<xsd:union memberTypes="dateTypes xStringPatternExtensionType"/>
</xsd:simpleType>
<xsd:simpleType name="flagTypePatternExtensionType">
<xsd:union memberTypes="flagTypes xStringPatternExtensionType"/>
</xsd:simpleType>
</xsd:schema>
|