<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: HumanResource.xsd
Status: Recommendation
Date this version: 2007-04-15
Purpose: Defines the HumanResource Schema
Author(s): SIDES Workgroup
Documentation: HumanResource.html
2006-July:
- Added Reference Id's to match other SIDES schema: MasterOrderId, TimeCardId, InvoiceId, and BillToEntityId.
- Added staffing information to PositionHeader.
- Added Social Insurance structure.
2004-June: The AvailabilityDate was corrected to remove an ambiguous content model. The unbounded xsd:choice was replaced with a simple xsd:sequence. In order to allow for multiple AvailabilityStartDate and AvailabilityEndDate, the parent element itself, AvailabilityDate, was made repeatable.
This is a technically non-backwards compatible bug fix. However, if all three elements are used with no more than a single occurrence, then it is backwardly compatible. It is only with multiple occurrences that compatibility becomes a problem.
Previous structure with ambiguous content model:
xsd:element name="AvailabilityDate" minOccurs="0"
xsd:complexType
xsd:choice maxOccurs="unbounded"
xsd:element name="AvailabilityStartDate" type="AnyDateTimeNkType"/
xsd:element name="AvailabilityEndDate" type="AnyDateTimeNkType"/
/xsd:choice
/xsd:complexType
/xsd:element
New structure:
xsd:element name="AvailabilityDate" minOccurs="0" maxOccurs="unbounded"
xsd:complexType
xsd:sequence
xsd:element name="AvailabilityStartDate" type="AnyDateTimeNkType"/
xsd:element name="AvailabilityEndDate" type="AnyDateTimeNkType" minOccurs="0"/
/xsd:sequence
/xsd:complexType
/xsd:element
2004-May: Made changes and additions based on global SIDES feedback. See scope section in HumanResource.doc for details.
Terms of license can be found in license.txt.
</xsd:documentation>
</xsd:annotation>
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="../../W3C/xml.xsd"/>
<xsd:include schemaLocation="../SEP/Resume.xsd"/>
<xsd:include schemaLocation="../SIDES/Rates.xsd"/>
<xsd:include schemaLocation="../SIDES/ContactInfo.xsd"/>
<xsd:include schemaLocation="../SIDES/ResourceScreening.xsd"/>
<xsd:include schemaLocation="../SIDES/StaffingPositionHeader.xsd"/>
<xsd:include schemaLocation="../SIDES/Localizations.xsd"/>
<xsd:complexType name="HumanResourceType">
<xsd:sequence>
<xsd:element name="HumanResourceId" type="EntityIdType" maxOccurs="unbounded"/>
<xsd:element name="HumanResourceStatus">
<xsd:complexType>
<xsd:attribute name="status" type="StatusType" use="required"/>
<xsd:attribute name="statusChangeReason" type="xsd:string" use="optional"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="ReferenceInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="StaffingSupplierId" type="EntityIdType" maxOccurs="unbounded"/>
<xsd:element name="StaffingCustomerId" type="EntityIdType" maxOccurs="unbounded"/>
<xsd:element name="IntermediaryId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="OrderId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="PositionId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="AssignmentId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="StaffingSupplierOrgUnitId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="StaffingCustomerOrgUnitId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="MasterOrderId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="TimeCardId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="InvoiceId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="BillToEntityId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="StaffingOrganizationId" type="EntityIdType" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="UserArea" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ResourceInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ResourceType" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="independentContractor" type="xsd:boolean" use="required"/>
<xsd:attribute name="payrolledEmployee" type="xsd:boolean" use="required"/>
</xsd:complexType>
</xsd:element>
<xsd:element ref="PersonName"/>
<xsd:element ref="EntityContactInfo"/>
<xsd:element ref="PostalAddress" minOccurs="0"/>
<xsd:element name="AvailabilityDate" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="AvailabilityStartDate" type="AnyDateTimeNkType"/>
<xsd:element name="AvailabilityEndDate" type="AnyDateTimeNkType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element ref="Rates" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="Profile">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="Competency" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element ref="Resume" minOccurs="0"/>
<xsd:element name="PositionHeader" type="StaffingPositionHeaderType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element ref="ResourceScreening" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="Preferences">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="DesiredShift" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ShiftName" type="xsd:string" minOccurs="0"/>
<xsd:element name="ShiftHours" type="xsd:decimal" minOccurs="0"/>
<xsd:element name="ShiftStartTime" type="LocalTimeNkNaType" minOccurs="0"/>
<xsd:element name="ShiftEndTime" type="LocalTimeNkNaType" minOccurs="0"/>
<xsd:element name="ShiftComments" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Travel" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="PercentageTravel" type="xsd:string" minOccurs="0"/>
<xsd:element name="TravelConsiderations" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="willingToTravel" type="xsd:boolean" use="required"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="Commute" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="TimeMax" type="xsd:string" minOccurs="0"/>
<xsd:element name="DistanceMax" type="xsd:string" minOccurs="0"/>
<xsd:element name="CommuteComments" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Relocation" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="RelocationComments" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="willingToRelocate" type="xsd:boolean" use="required"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="DistributionRestrictions" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="DoNotDistributeTo" type="xsd:string" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="DesiredCompensation" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="CompensationAmount">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="currency" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="[A-Z][A-Z][A-Z]"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="amountPeriod" type="AmountPeriodType" use="optional"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="CompensationComments" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="HumanResourceComments" type="xsd:string" minOccurs="0"/>
<xsd:element name="SocialInsurance" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Type" type="SocialInsuranceTypeType"/>
<xsd:element name="IsParticipating" type="xsd:boolean"/>
<xsd:element name="ReasonForNotParticipating" type="xsd:string" minOccurs="0"/>
<xsd:element name="LegalDescription" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element ref="UserArea" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute ref="xml:lang"/>
</xsd:complexType>
<xsd:element name="HumanResource" type="HumanResourceType"/>
<xsd:simpleType name="KnownStatusType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="new"/>
<xsd:enumeration value="revised"/>
<xsd:enumeration value="rejected"/>
<xsd:enumeration value="accepted"/>
<xsd:enumeration value="withdrawn"/>
<xsd:enumeration value="suspended"/>
<xsd:enumeration value="pending"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="SocialInsuranceTypeType">
<xsd:choice>
<xsd:element name="StandardValue" type="SocialInsuranceEnumType" minOccurs="0"/>
<xsd:element name="NonStandardValue" type="xsd:string" minOccurs="0"/>
</xsd:choice>
</xsd:complexType>
<xsd:simpleType name="SocialInsuranceEnumType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Health"/>
<xsd:enumeration value="WelfarePension"/>
<xsd:enumeration value="UnemploymentInsurance"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StatusType">
<xsd:union memberTypes="KnownStatusType xStringPatternExtensionType"/>
</xsd:simpleType>
</xsd:schema>
|