Time Card
Recommendation, 2004-08-02
This version:
TimeCard.doc
Previous version:
TimeCard.doc
Editor:
Bill Kerr, Oracle Corporation
Gail Bubsey, Kelly Services, Inc.
Kim Bartkus, HR-XML Consortium
Authors:
Andreas Bold, SAP AG
Eva Decker, SAP AG
John DeRoche, Manpower, Inc.
Bill Kerr, Oracle Corporation
Contributors:
Members of Time Expense Reporting workgroup
Copyright statement
©2004 HR-XML. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. Printed in the United States of America.
Abstract
The HR-XML Time Expense Reporting Workgroup has produced a simple, flexible definition of the elements required to express time and expense data. This document describes those elements, the expected usage, and the business processes meant to be supported.
Status of this Document
2004-Aug-2: This specification has been updated from the 2003-November release. Additionally, the version number (2004-08-02) has been updated on the document title page and the “version” attribute of the “xsd:schema” element.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.
Table of Contents
1.3.2 Items Within the Design Scope
1.3.3 Items Outside of Design Scope
2 Supported Business Processes
2.1.1 Overview Activity Diagram
2.1.2 Actor: Time Capturing Device
2.1.3 Actor: Time & Attendance Application
2.1.4 Actor: Final Consumer Application
2.2 Process: Posting of Raw Time Data
2.2.3 Business Goal and Process
2.3 Process: Posting of Processed Time Data
2.3.3 Business Goal and Process
2.3.4 Example of a Processed Timecard
4 Implementation Considerations
6 Appendix A - Document Version History
7 Appendix B – Related Documents
8 Appendix C – Reference Examples
The objective of the TimeCard specification is to provide a simple definition of the elements required to report time worked, expenses incurred, and allowances provided. TimeCard 2.1 has been enhanced as described below:
· Added Allowance at ReportedTime and TimeInterval levels to handle elements that are not an elapsed time.
· Added multiplier, toBeBilled, and toBePaid attributes to RateOrAmount to handle invoicing information.
· Replace the following groups with complex types. This was mainly to address the limitations of Turbo’s graphical representation.
o AdditionalData
o ApprovalInfo
o Person
o RateOrAmount
o Id
o Duration
· Added xml:lang attribute to TimeCard and Comment to allow for multiple languages.
· Increased allowed values for dayAssignment:
o Created type DayAssignmentEnumerationType (current, previous or next)
o Changed dayAssignment to use new DayAssignmentType. This is a union of DayAssignmentEnumerationType, LocalDateType and nonnegativeInteger.
· Added optional attribute actionCode for TimeInterval, TimeEvent, Allowance and Expense. It contains the enumerations ‘change’, ‘add’, and ‘void’.
Future versions are expected to allow for more sophisticated definition of tasks and expenses, however, this specification is flexible enough to handle typical ways that time worked is expressed, plus a simple format for the representation of expenses and allowances.
Time worked is typically expressed in the following ways
§ Time Events – Defined as a timestamp that marks the occurrence of a particular event. (ex. 8am began working)
§ Time Intervals – Defined as an expression of time to be paid or billed at a particular rate on a specific date during which a particular type of work was done. The time might be expressed as a total quantity, for example, on 7/1/01 worked 4 hours at 20.00 USD, regular, billable-hours on Project A. Or time could be expressed as an interval, for example 8am to 1pm, during which a particular activity took place.
· Expenses Incurred – Defined as a reimbursable amount incurred while working on assignment or project. Includes Date, value and currency indicator and additional data (ex. On 7/1/01 incurred 25.00 USD Non-Billable Meal Expense)
· Allowances – Defined as additional allowances or bonuses to be given for the duration of the time interval represented. These are different to Expenses Incurred as they usually represent eligibility such as meal allowance, off-site payments, dirty working bonus, etc. The allowance is made up of an amount, a quantity and allowance type.
The Internet, and companies’ desire to use it’s functionality to control outlays, achieve efficiencies, and more deeply understand their use of resources, has created an electronic timekeeping boom. Once, it was only time clock users who directly created entries into timekeeping systems. Most project workers used paper for later data entry into project management systems. Similarly, the temporary services industry was dependent on mailed or faxed paper to represent approved time for which to both pay their employees and bill their customers.
Widespread access to the Internet has provided the opportunity to eliminate the paper element of these transactions, providing data in an electronic format to be used as input to payroll or project management systems. New web-based applications specifically designed to enhance the recording and approving of time are seeing expanding use. The challenge presented is one of getting the data out of these new applications and into the existing payroll or project management systems in a timely and cost effective manner.
The main issues presented to the HR community by these new applications are:
§ Legal requirements as to the gathering of payroll data and the timing of when control leaves one organization and is assumed by another.
§ Technical issues presented by the varying elements and formats of output being presented to payroll and project management applications.
An industry standard vocabulary to describe time reporting transactions provides the means for a single company to receive such transmissions from multiple sources without having to establish, engineer, and implement many separate translation mechanisms. The ability to quickly and cost effectively accept data from new sources allows the efficiencies promised by the Internet and its applications to be realized.
The final design will be flexible enough to accept time reported in many formats and describe it in terms of projects, tasks, accounting codes, etc., to as many levels as deemed necessary by the involved parties. The design will be broad enough to be used globally, and will contain the elements required to express a simple expense reimbursement transaction.
The design supports a one-way transmission of data from an “electronic gatherer” or sender to an “electronic processor” or receiver. Naturally, a receiver of one transmission could then transform the data in some way, and transmit to another entity, becoming the sender in that second transaction.
For example: It is common practice for employees to enter Time and Expense data into automated collection systems. That data is processed and sent to another party for approval processing. The data may then be sent to 3rd party payroll and invoicing processing centers. Significant development and processing savings can be realized by each organization utilizing a standardized data exchange.
The Time and Expense Reporting specification allows for the capture and transmission of expense data of the type that typically would be reported on the timecard submitted by a temporary staffing agency employee or by an independent contractor. The specification is not intended as a generalized mechanism for the capture and reporting of business expenses, such as meal, travel, entertainment, or other similar business expenses. This type of generalized mechanism for transmitting expense data may be part of a future version of the specification.
(Please see section 3.2 for a complete description of attributes and elements defined)
§ Id – an attribute to unique identify the data grouping. An Id attribute is allowed at each level of reporting: the TimeCard (individual record), and TimeInterval, TimeEvent, Expense (line item), and Allowance levels.
§ ReportedResource – a full description of the individual or resource to which the time record applies.
§ ReportedTime – a repeatable segment for the description of time worked or expense incurred. Includes sub-elements:
§ PeriodStartDate – typically a week starting date. (Flexible to include any period of time)
§ PeriodEndDate – typically a week ending date. (Flexible to include any period of time)
§ ReportedPersonAssignment – element describing the work assignment being reported.
§ TimeInterval – Repeatable grouping to describe time worked. Includes, among others, attributes of TimeInterval and Id, and elements for StartDateTime, EndDateTime, Duration, PieceWork, RateOrAmount, AdditionalData (further describes type of work such as ‘Overtime’, ‘Vacation’, ‘lunch’, etc.), Comment, and ApprovalInfo.
§ TimeEvent – Repeatable group element describing a time event. Includes among others, elements for EventDateTime, AdditionalData (further describes the event such as project milestones, punch clock events, etc.), Comment, and ApprovalInfo.
§ Expense – Repeatable group element describing expenses incurred. Includes elements Id, , ExpenseDate, ExpenseAmount, - AdditionalData (further describes the expense such as ‘Meals’, ‘Rental Car’, ‘Parking’, etc.), Comment, and ApprovalInfo.
§ Allowance – Repeatable grouping to represent bonuses or allowances to be paid for the period recorded. Includes the attribute type and the elements amount and quantity.
§ SubmitterInfo – a description of the person or system who created the time record, may be different from the individual.
§ ApprovalInfo – a description of the person who approved the time record as a whole, as well as when that approval was given. Note: the opportunity is available to provide approval data at each level of the timecard record, ex. for each interval, for the period, and for the record as a whole.
§ AdditionalData – allows for additional information on the time card. The element type was changed to allow for extension. For example, the SIDES 1.0 schema will extend this element with the CustomerReportingRequirements and ReferenceInformation schemas.
§ HRXMLExtension – a method for extending the schema.
There are three major reporting types that are covered by the design:
1) Timestamped Event –Used to mark the occurrence of a particular event.
2) Time Intervals – Activity expressed as an amount and unit of time as taking place on a particular date(s).
· 2001-09-21Z-03, (end date)
· P4H, (ISO standard data structure conveying 4 hours) (quantity)
· Assignment=A, (assignment identifier)
· Activity=Coding, (activity identifier)
· 2001-08-15Z-09, (end date)
· P1D, (1 day) (quantity)
· Activity=Holiday, (activity identifier)
Or Activity expressed as having taken place during a time range as expressed by date and time stamps.
2001-09-20T11:00Z-03, (end date and time)
Assignment=A, (assignment identifier)
Activity=Coding, (activity identifier)
This section may also be used to express piecework or flat rate items.
§ Example 4: 2001-08-11Z-09, (start date)
2001-08-11Z-09, (end date)
150 UNIT, (quantity)
Activity=Envelop Making, (activity identifier)
§ Example 5: 2001-08-02Z-08, (start date)
2001-08-02Z-08, (end date)
50.00 USD, (quantity)
Description=Bonus, (description)
Finally, the piecework element can also be used to describe non-traditional time units.
§ Example 6: 2001-08-11Z-09, (start date)
1 MANDAY (quantity)
3) Expenses – Expression of outlays. Amount, Currency, and multiple descriptors are provided.
§ Example 1: Amount=15.10, (amount)
Currency=CAD, (currency)
Assignment=A, (assignment identifier)
Description=Mileage, (expense description)
The recording and posting of time and expense data can be modeled via 2 major business processes.
§ The first process reflects the situation that the time and expense data is recorded in a Time Capturing Device with limited time management business logic. The time capturing device mainly serves to record the actual time and expense data of an employee as it occurred in real working life. Limited business logic means that this time & expense data is not yet evaluated by all the relevant legal, union or company specific rules. We therefore talk about “raw” time data in this context and call this business process Posting of Raw Time and Expense Data. It posts the data to a more dedicated Time & Attendance Application.
§ The second process reflects the situation where the time and expense data is consolidated in a Time & Attendance Application and is posted to one or multiple Final Consumer Applications. The final consumer applications are using time & expense data as an input in order to trigger more specific and sophisticated business processes such as payroll or billing. The final consumer applications do not create themselves. The final consumer applications are often only interested in parts of the time and expense data or in condensed views of the time and expense data. Since the consumer applications do not modify the personnel time and expense data themselves they expect to receive these data in a processed and approved way. We therefore call this business process Posting of Processed Time and Expense Data.
It is an important fact of the proposed design that the data transfer in these two major business processes of posting personnel time and expense data can be covered with the same schema, the schema for the Timecard.
The three participating actors will be characterized in more detail.

The actor Time Capturing Device represents the different realizations of electronic time sheets with only limited time management business logic.
Typical technical realizations of such electronic time sheets may be Excel sheets, browser based time sheets, PDA time capturing applications, but also the long known clock-in/clock-out time clock terminals.
These time sheet applications are the electronic analogues to the formerly used paper sheets. They have their own database(s) but only limited time management business logic. This means that we do not expect that these smaller applications can do the complete validations and calculations of all legal, union or company specific rules that are related to personnel time data. We therefore call this actor Time Capturing Device in order to differentiate clearly from the second actor, a dedicated Time & Attendance Application.
It is very typical that such time sheet solutions are developed in-house with company specific user interfaces and very specific validations but of course there are also time sheet applications included in product suites of time management vendors.
The major characteristic of a dedicated Time & Attendance Application is that such an application covers the complete functionality in order to do the full validations and calculations of all legal, union or company specific rules that are related to personnel time data. We summarize this validation and calculation functionality as Time Evaluation functionality.
It is also typical that such a Time & Attendance Application offers time recording applications, too. In comparison to the Time Capturing Devices mentioned above, the user interfaces are more sophisticated and are designed in order to guarantee a complete and efficient Time Administration for the different departments of a company.
Of course, this Time & Attendance Application has its own database(s). It is very common that Time & Attendance Applications support external interfaces for importing time data out of external databases.
Time & Attendance Application may
Thus this actor creates, updates and reads time card data.
The Consumer Application represents all categories of applications that base (parts of) their business processes on personnel time data. It reads a timecard but does not create a timecard.
Typical examples are:
The Business Process “posting of raw time data” is a process between the actor “Time Capturing Device” (sender of the timecard) and the actor “Time & Attendance Application” (receiver of the timecard).

The typical users who trigger the business process are
Business goal: the user should specify for a specific period of time when, how long, what type, what task he worked or when he or she was absent.
Depending on the industry or the specific business requirements of the company, it may also be necessary to record where the work has been performed, what cost distribution is valid, which expenses occurred, whether the work is billable or not, etc. Even information on piece work may be needed.
Depending on the industry or the specific business processes of the company, the task may be described as a job code, a project number, or an order number.
Depending on the business practices of the company, the time recording may be done in a positive or negative way (recording all actuals or recording only the deviations from the schedule).
At this process level, the time data recorded are “raw” in the sense that they contain just the pure real facts. In this level, no automatically evaluated times or derived classifications such as night shift bonus are included.
The time specification itself can be done in different fashions, depending on the business processes in the company:
In the case of time event based recording, the duration of the work is only calculated in the time & attendance application after forming time pairs out of the single time events. In the case of time intervals, the duration may be recorded by the user directly or may also be calculated in the time & attendance application by comparing the work schedule, calculating breaks etc.
It is characteristic that the time & expense recording in this business process is performed close in time to the actual performance of the work. For example, the transfer of data to the Time & Attendance system is done once per day or once per week. But it also may happen, that it makes sense to transfer the time data multiple times per day. Especially in the case of time events, the Time & Attendance application may need this data immediately after recording.
An approval step on the Time Capturing Device is not a very typical scenario, but it can be supported if needed. It is more common that the approval step is done in the receiving Time & Attendance application.
Here the typical users would be Time Administrators (Clerks), Team Leads, Project Leads or Line Managers. The Time & Attendance application offers a more sophisticated user interface to let these user types efficiently check, approve, add and enrich the employee’s time data.
Example Timecard 1: This is an example where begin and end times are not needed, but where the elapsed time (the duration) is recorded directly.
Start |
End |
Type |
Duration (hrs) |
Amount + Currency |
Task |
Project or Order |
Cost Center |
Billable
|
Comment… |
|
May 07 |
May 07 |
Regular |
8 |
|
Repair |
1212 |
700 |
x |
Aaabbbccc.. |
|
May 07 |
May 07 |
Meal |
|
$ 10 |
|
1212 |
700 |
x |
|
|
May 08 |
May 11 |
Vacation |
|
|
|
|
|
|
|
|
May 14 |
May 14 |
Regular |
4 |
|
Production |
|
800 |
|
|
|
May 14 |
May 14 |
Sickness |
4 |
|
|
|
|
|
|
|
May 15 |
May 18 |
Sickness |
|
|
|
|
|
|
|
|
… |
|
|
|
|
|
|
|
|
|
Example Timecard 2: This is an example where begin and end times are required for all time data lasting less than one working day. In this example it is expected that the receiving Time & Attendance application would calculate the duration automatically based on the work schedule and break information.
|
Start |
End |
Type |
Amount + Currency |
Quantity+ uom |
Task |
Project or Order |
Billable
|
Comment… |
||
|
May 07 |
08:00 |
May 07 |
19:00 |
Prod. hrs |
|
|
Repair |
1212 |
x |
Aaab.. |
|
May 07 |
|
May 07 |
|
Meal |
$ 10 |
|
|
1212 |
x |
|
|
May 08 |
|
May 11 |
|
Vacation |
|
|
|
|
|
|
|
May 14 |
08:00 |
May 14 |
12:00 |
Regular |
|
40 Piec. |
Production |
|
|
|
|
May 14 |
13:00 |
May 14 |
17:00 |
Sickness |
|
|
|
|
|
|
|
May 15 |
08:00 |
May 18 |
12:00 |
Sickness |
|
|
|
|
|
|
|
… |
… |
|
|
|
|
|
|
|
|
|
Example Timecard 3: This is an example where the work performed is recorded as clock-in / clock-out information and where absences or other time data that is not recorded at a time clock device is directly recorded in the Time & Attendance application, thus not included in this timecard.
|
TimeEvent Time |
Type |
Order
|
|
|
May 07 |
08:01 |
Clock-in |
1212 |
|
May 07 |
12:03 |
Clock-out |
|
|
May 07 |
12:32 |
Clock-in |
1213 |
|
May 07 |
17:05 |
Clock-out |
|
|
May 08 |
07:59 |
Clock-in |
1213 |
|
May 08 |
10:04 |
Clock-out |
|
|
|
… |
|
|
The Business Process “posting of processed time data” is a process between the actor “Time & Attendance application” (sender of the timecard) and the actor “Final Consumer Application” (receiver of the timecard).

The typical users who trigger the business process are:
Business goal: Depending on the variations of their role (Administrator versus Manager) the users would:
In this sense, the time data of these time cards are processed (they are enriched by more classifications than just the raw input data). They are final, in the sense that the consumer applications do not create new time cards.
The data format of the time & expense records in the final timecard is the same as in the process of posting raw time data. Typically, final time cards would not contain time events since it is unusual that the consumer application offers functionality that can form time pairs and time durations out of time events. However, this format could be used to portray events such as the achievement of a goal in a project plan.
Depending on the design of the business processes at a specific company it may occur that the time administrators or line managers only approve the time cards received from the employee via time capturing device and then post it to the receiving consumer applications without adding new time data.
But also the opposite situation may occur: Some T&A applications offer employee self service user interfaces that store the recorded time data directly on the database of the T&A application or the Time Administrator has the job to records all time data of organizational unit. In this situation the raw time data would not be imported from a previous time capturing device but created directly in the T&A application.
The business rules of the company may define that only approved data should be posted to the final consumer applications.
Example Timecard 4: A processed timecard: overtime and net durations have been calculated automatically.
|
Start |
End |
Type |
Duration (hrs) |
Amount+ Curr |
Task |
Projector Order |
Cost Center |
Bill |
Comment |
||
|
May 07 |
08:00 |
May 07 |
17:00 |
Regular |
8 |
|
Repair |
1212 |
700 |
x |
|
|
May 07 |
17:00 |
May 07 |
19:00 |
Overtime |
2 |
|
Repair |
1212 |
700 |
x |
Aaabbbccc.. |
|
May 07 |
|
May 07 |
|
Dirty W. |
|
$ 20 |
Repair |
1212 |
700 |
|
|
|
May 07 |
|
May 07 |
|
Meal |
|
$ 10 |
|
1212 |
700 |
x |
|
|
May 08 |
|
May 11 |
|
Vacation |
32 |
|
|
|
|
|
|
|
May 14 |
08:00 |
May 14 |
12:00 |
Regular |
4 |
|
Production |
|
800 |
|
|
|
May 14 |
13:00 |
May 14 |
17:00 |
Sickness |
4 |
|
|
|
|
|
|
|
May 15 |
08:00 |
May 18 |
12:00 |
Sickness |
32 |
|
|
|
|
|
|
|
… |
… |
|
|
|
|
|
|
|
|
|
|
A full diagram of the schema is available at:
http://ns.hr-xml.org/2_3/HR-XML-2_3/TimeCard/TimeCard.jpg
A high level diagram can be found below.

|
Elements and Attributes [Global types listed alphabetically in following table.] |
ContentModel* |
Definition |
|
/ |
- TimeCardType - (1/1) |
A record describing the time and/or expense data of a person or resource for a given period. |
|
/ TimeCard/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ |
Person -
TimeCardPersonType - C (1/1) |
Container describing the person or resource for which time and/or expense is being reported. |
|
/ TimeCard/ ReportedResource/ |
- TimeCardPersonType - C (1/1) |
Contains information about a person. Context definition: Container for the person who performed the work. |
|
/ TimeCard/ ReportedResource/ Person/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ ReportedResource/ |
type - xsd:string - |
The
resource (non human) for which the time and/or expense is being reported. |
|
/ TimeCard/ ReportedResource/ Resource/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedResource/ Resource/ |
- EntityIdType - S (0/*) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ ReportedResource/ Resource/ |
- xsd:string - S (0/1) |
The name
of a resource (non human), for which times and expenses may be reported. |
|
/ TimeCard/ ReportedResource/ Resource/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ TimeCard/ |
status xsd:restriction base:
xsd:string [Enumerations]: Raw,
Processed |
A container with reported time and/or expense data for a person or resource in a given period. |
|
/ TimeCard/ ReportedTime/ |
xsd:restriction base: xsd:string [Enumerations]: Raw, Processed |
The status of the associated item. If the status isn't specified, the implementer may place the record in whatever status seems appropriate given the context of the data. |
|
/ TimeCard/ ReportedTime/ |
- AnyDateTimeType - S (1/1) |
The starting date of the reported time. [BusinessRule(s): This date is inclusive. Dates are represented in accordance with ISO 8601. ] |
|
/ TimeCard/ ReportedTime/ |
- AnyDateTimeType - S (1/1) |
The
ending date of the reported time. |
|
/ TimeCard/ ReportedTime/ |
Id - EntityIdType - S (0/1) |
Allows a work assignment identifier to be expressed that will apply to all data within the ReportedTime container. |
|
/ TimeCard/ ReportedTime/ ReportedPersonAssignment/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ ReportedTime/ |
type - xsd:string - required |
A container used to report the duration and type of a work for a specified time period. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- DayAssignmentType - |
Allows
assignment of work performed on a "physical" time interval or day
to another "logical" day. Mostly for evaluation purposes. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- xsd:boolean - |
Attribute used to indicate whether the time interval, time event, or expense is billable to a customer. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- ActionCodeType - |
A code
specifying the action to be performed on a particular record. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- AnyDateTimeType - S (1/1) |
Defines
the start date, and if applicable, start time of the interval, period, or
event being reported. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- AnyDateTimeType - S (1/1) |
Defines
the end date, and if applicable, end time of the interval, period, or event
being reported. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- TimeCardDuration - S (0/1) |
Specifies
the duration of the reported work. [2] Contains information on whether the
job/position is temporary or regular. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
Piece - [complexType] - S (1/1) |
Container for the id, description and/or quantity of the work piece. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ PieceWork/ |
Id - EntityIdType - S (0/1) |
Container for the id and description of the work piece. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ PieceWork/ Piece/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ PieceWork/ Piece/ |
- xsd:string - S (1/1) |
Describes
the type of work piece. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ PieceWork/ |
xsd:extension base: xsd:double |
A
numerical quantity that is assigned or determined by calculation or measurement.
|
|
/ TimeCard/ ReportedTime/ TimeInterval/ PieceWork/ Quantity/ |
- xsd:string - |
Unit in
which the quantity is measured. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
xsd:extension base: xsd:double |
Container for a rate or a flat amount to be applied to the reported work. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ RateOrAmount/ |
- currency - |
A
three-letter code identifying the currency of a monetary amount. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ RateOrAmount/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ RateOrAmount/ |
- xsd:string - |
Period
used to further define the rate. ] |
|
/ TimeCard/ ReportedTime/ TimeInterval/ RateOrAmount/ |
- xsd:double - |
A multiplier to be applied to the related amount, rate, or variable. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ RateOrAmount/ |
- xsd:boolean - |
Indicates if this RateOrAmount is to be billed to the supplier of the resource. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ RateOrAmount/ |
- xsd:boolean - |
Indicates if this RateOrAmount is to be paid to the resource that this timecard refers to. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
type - xsd:string - required |
Contains groups of allowances for the time period or interval. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ Allowance/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ Allowance/ |
xsd:extension base: xsd:double |
The monetary value of the associated item. [Example(s): Bill rate, invoice item, compensation, allowance. ] |
|
/ TimeCard/ ReportedTime/ TimeInterval/ Allowance/ Amount/ |
- currency - |
A
three-letter code identifying the currency of a monetary amount. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ Allowance/ |
- xsd:double - S (0/1) |
A
numerical quantity that is assigned or determined by calculation or
measurement. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- ApprovalInfoType - S (0/*) |
Container which holds information about when and by whom the entire Timecard was approved. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ ApprovalInfo/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. Context definition: Container for the person who approved the reported time interval data. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ ApprovalInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ ApprovalInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ ApprovalInfo/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ TimeInterval/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ |
type - xsd:string - required |
A container for a work time event that occurred at a specific point in time. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- DayAssignmentType - |
Allows
assignment of work performed on a "physical" time interval or day
to another "logical" day. Mostly for evaluation purposes. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- xsd:boolean - |
Attribute used to indicate whether the time interval, time event, or expense is billable to a customer. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- ActionCodeType - |
A code
specifying the action to be performed on a particular record. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- AnyDateTimeType - S (1/1) |
The timestamp for when the event occurred. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
xsd:extension base: xsd:double |
Container for a rate or a flat amount to be applied to the reported work. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ RateOrAmount/ |
- currency - |
A
three-letter code identifying the currency of a monetary amount. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ RateOrAmount/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ RateOrAmount/ |
- xsd:string - |
Period
used to further define the rate. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- ApprovalInfoType - S (0/*) |
Container which holds information about when and by whom the entire Timecard was approved. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ ApprovalInfo/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. Context definition: Container for the person who approved the reported time event data. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ ApprovalInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ ApprovalInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ ApprovalInfo/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ TimeEvent/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ |
type - xsd:string - required |
Container for individual expenses incurred. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- xsd:boolean - |
Attribute used to indicate whether the time interval, time event, or expense is billable to a customer. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- ActionCodeType - |
A code
specifying the action to be performed on a particular record. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- AnyDateTimeType - S (1/1) |
The date that the expense was incurred. |
|
/ TimeCard/ ReportedTime/ Expense/ |
xsd:extension base: xsd:double |
The monetary value of the expense. |
|
/ TimeCard/ ReportedTime/ Expense/ ExpenseAmount/ |
- currency - |
A
three-letter code identifying the currency of a monetary amount. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- ApprovalInfoType - S (0/*) |
Container which holds information about when and by whom the entire Timecard was approved. |
|
/ TimeCard/ ReportedTime/ Expense/ ApprovalInfo/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. Context definition: Container for the person who approved the reported expense data. |
|
/ TimeCard/ ReportedTime/ Expense/ ApprovalInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ Expense/ ApprovalInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/ TimeCard/ ReportedTime/ Expense/ ApprovalInfo/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ Expense/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ |
type - xsd:string - required |
Contains groups of allowances for the time period or interval. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- ActionCodeType - |
A code
specifying the action to be performed on a particular record. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- AnyDateTimeType - S (1/1) |
Contains
the (inclusive) date, period, or interval the event becomes active or begins.
|
|
/ TimeCard/ ReportedTime/ Allowance/ |
- AnyDateTimeType - S (0/1) |
Contains
the (inclusive) date, period, or interval the event becomes inactive or ends.
|
|
/ TimeCard/ ReportedTime/ Allowance/ |
xsd:extension base: xsd:double |
The monetary value of the associated item. [Example(s): Bill rate, invoice item, compensation, allowance. ] |
|
/ TimeCard/ ReportedTime/ Allowance/ Amount/ |
- currency - |
A
three-letter code identifying the currency of a monetary amount. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- xsd:double - S (0/1) |
A
numerical quantity that is assigned or determined by calculation or
measurement. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- ApprovalInfoType - S (0/*) |
Container which holds information about when and by whom the entire Timecard was approved. |
|
/ TimeCard/ ReportedTime/ Allowance/ ApprovalInfo/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. |
|
/ TimeCard/ ReportedTime/ Allowance/ ApprovalInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ Allowance/ ApprovalInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/ TimeCard/ ReportedTime/ Allowance/ ApprovalInfo/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ Allowance/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ ReportedTime/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
/ TimeCard/ ReportedTime/ |
- ApprovalInfoType - S (0/*) |
Container which holds information about when and by whom the entire Timecard was approved. |
|
/ TimeCard/ ReportedTime/ ApprovalInfo/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. |
|
/ TimeCard/ ReportedTime/ ApprovalInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ReportedTime/ ApprovalInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/ TimeCard/ ReportedTime/ ApprovalInfo/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ |
- SubmitterInfoType - S
(0/1) |
Container with information describing when and by whom the entire Timecard was submitted. |
|
/ TimeCard/ SubmitterInfo/ |
- TimeCardPersonType - S (0/1) |
Contains information about a person. |
|
/ TimeCard/ SubmitterInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ SubmitterInfo/ |
- xsd:string - S (0/1) |
The
system that submitted the timecard. |
|
/ TimeCard/ SubmitterInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp as to when the timecard was submitted. |
|
/ TimeCard/ |
- ApprovalInfoType - S (0/*) |
Container which holds information about when and by whom the entire Timecard was approved. |
|
/ TimeCard/ ApprovalInfo/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. Context definition: Container for the person who approved the time card. |
|
/ TimeCard/ ApprovalInfo/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/ TimeCard/ ApprovalInfo/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/ TimeCard/ ApprovalInfo/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ TimeCard/ |
- AdditionalDataType - S (0/*) |
Allows trading partner specific structured information or extensions. |
|
|
ContentModel* |
Definition |
|
/ |
xsd:restriction base: xsd:string [Enumerations]: Add, Change, Void |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
type - xsd:string - |
Globally scoped data type. See element or attribute declaration for definition. |
|
/
[AdditionalDataType] / |
- xsd:string - |
Further
defines the associated element in the context provided. |
|
/ |
approverType
- xsd:string - |
Globally scoped data type. See element or attribute declaration for definition. |
|
/
[ApprovalInfoType] / |
- xsd:string - |
Allows a
description of the level or role of the approver. |
|
/
[ApprovalInfoType]/ |
- TimeCardPersonType - S (1/1) |
Contains information about a person. |
|
/
[ApprovalInfoType]/ Person/ |
- EntityIdType - S (0/1) |
A unique
identifier used to reference the entity. The Id is associated with the higher
level element. |
|
/
[ApprovalInfoType]/ |
- AnyDateTimeType - S (1/1) |
The timestamp when the time card was approved. |
|
/
[ApprovalInfoType]/ |
- CommentType - S (0/*) |
Allows for textual comments. |
|
/ |
xsd:extension base: xsd:string |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
xsd:restriction base: xsd:string |
Globally scoped data type. See element or attribute declaration for definition. Annotation: Conforms to ISO 4217:1995. The currency codes represented are made up of the two-character country code (ISO 3166-1) plus a one-character currency designator. |
|
/ |
xsd:restriction base: xsd:string [Enumerations]: previous, current, next |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
- [Union]: DayAssignmentEnumerationType, LocalDateType, xsd:nonNegativeInteger |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
xsd:restriction base: xsd:string |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
- [Union]: xsd:double,EmptyString |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
Person -
TimeCardPersonType - S (0/1) |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
- [Union]: xsd:duration,xsd:decimal |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ |
Id -
EntityIdType - S (0/1) |
Globally scoped data type. See element or attribute declaration for definition. |
|
/ [TimeCardPersonType]/ |
- EntityIdType - S (0/1) |
A unique identifier used to reference the entity. The Id is associated with the higher level element. |
The workgroup has made the deliberate choice to leave the various type attributes as non-enumerated holders. A follow-up document pertaining to implementation suggestions will include anticipated values for many of these attributes, as well as further suggestions regarding the batching of records and other transmission related topics.
Human resources data, by its very nature, is personal data. The laws of many jurisdictions as well as codes of fair information practice require organizations to handle personal data in a way that protects individuals from loss of privacy.
The data exchange specifications developed by the HR-XML Consortium are designed to be useful across many jurisdictions and within a variety of business contexts. It is not feasible for the HR-XML Consortium to develop specific privacy guidance for every jurisdiction or business context in which the Consortium's specifications might be implemented. When implementing data exchanges using the HR-XML Consortium's data definitions (or, for that matter, using any other type of data exchange mechanism), organizations are advised to examine the privacy protections that may be required under applicable law and codes of fair information practice.
For information on protecting personal data, general references include: European Union Data Protection Directive (95/46/EC); the Association Computing Machinery Code of Ethics (1992); Canadian Standards Association Model Code for the Protection of Personal Information (1995 – PIPEDA); and U.S.-EU Safe Harbor Principles and FAQs (2000).
The ActionCode defines how the receiver should process the transmitted data. The following list describes the purpose of each enumerated value:
|
Issue |
Anticipated Resolution |
|
Expression of non-standard time units – in this version a make-do solution offered by understanding between the trading partners or with values fitted into the piecework framework. |
Future version |
|
Lack of sophistication in the handling of expenses – in this version a minimal attempt was made to define requirements for expense reporting in favor of concentration on time reporting. It is expected that the expense portion of the schema will become more sophisticated in the next release. |
Future version |
|
Version |
Date |
Description |
|
2.0 |
2002-Mar-11 |
Move to v2. Remove batch, add extensions mechanism. |
|
2.0 |
2002-Mar-19 |
Modified text to correctly describe the updated schema. |
|
2.0 |
2002-Mar-20 |
Added reference examples. |
|
2.0 |
2002-Mar-25 |
Added definitions table, final cleanup. |
|
2.0 |
2002-Apr-1 |
Replaced example 6. Present for membership review. |
|
2.0 |
2002-Apr-30 |
Approved Specification |
|
2.0 |
30 Jan 2002 |
Target/default namespaces changed. |
|
2.0 |
2003-Feb-26 |
Approved recommendation by HR-XML Consortium. The default and targetNamespaces of all HR-XML schemas have been standardized to "http://ns.hr-xml.org". This recommendation is available as part of the HR-XML 2_0 architecture. |
|
2.1 |
2004-May-13 |
Updated document based on schema changes. |
|
2.1 |
2004-May-19 |
Submit for CPO/TSC review. |
|
2.1 |
2004-Jun-04 |
Added guidelines for action code. |
|
2.1 |
2004-09-10 |
Changed duration to used global type. |
|
2.1 |
2004-08-02 |
Approved by membership |
|
Reference |
Link |
|
TimeCard schema |
|
|
Entity Identifier Type |
http://ns.hr-xml.org/2_3/HR-XML-2_3/CPO/EntityIdentifiers.html |
|
PersonName |
|
|
PostalAddress |
|
|
DateTimeDataTypes |
http://ns.hr-xml.org/2_3/HR-XML-2_3/CPO/DateTimeDataTypes.html http://ns.hr-xml.org/2_3/HR-XML-2_3/CPO/DateTimeDataTypes.xsd |
|
SIDES schema |
http://ns.hr-xml.org/2_3/HR-XML-2_3/SIDES/TimeCardAdditionalData.xsd |
|
TSC Extension |
Examples map to instances displayed in Sections 2.2.4 and 2.3.4.
Example 1:
<TimeCard xmlns="http://ns.hr-xml.org/2004-08-02">
<ReportedResource>
<Person>
<Id>
<IdValue>d026194</IdValue>
</Id>
</Person>
</ReportedResource>
<ReportedTime>
<PeriodStartDate>2001-05-01</PeriodStartDate>
<PeriodEndDate>2001-05-18</PeriodEndDate>
<TimeInterval type = "Regular" billable = "true">
<StartDateTime>2001-05-07</StartDateTime>
<EndDateTime>2001-05-07</EndDateTime>
<Duration>PT8H</Duration>
<AdditionalData type = "Task">Repair</AdditionalData>
<AdditionalData type = "Order">1212</AdditionalData>
<AdditionalData type = "CostCenter">700</AdditionalData>
<Comment>Aaabbbccc</Comment>
</TimeInterval>
<Expense type = "Meal" billable = "true">
<ExpenseDate>2001-05-07</ExpenseDate>
<ExpenseAmount currency = "USD">10</ExpenseAmount>
<AdditionalData type = "Order">1212</AdditionalData>
<AdditionalData type = "CostCenter">700</AdditionalData>
</Expense>
<TimeInterval type = "Vacation">
<StartDateTime>2001-05-08</StartDateTime>
<EndDateTime>2001-05-11</EndDateTime>
</TimeInterval>
<TimeInterval type = "Regular">
<StartDateTime>2001-05-14</StartDateTime>
<EndDateTime>2001-05-14</EndDateTime>
<Duration>PT4H</Duration>
<AdditionalData type = "Task">Production</AdditionalData>
<AdditionalData type = "CostCenter">800</AdditionalData>
</TimeInterval>
<TimeInterval type = "Sickness">
<StartDateTime>2001-05-14</StartDateTime>
<EndDateTime>2001-05-14</EndDateTime>
<Duration>PT4H</Duration>
</TimeInterval>
<TimeInterval type = "Sickness">
<StartDateTime>2001-05-15</StartDateTime>
<EndDateTime>2001-05-18</EndDateTime>
</TimeInterval>
</ReportedTime>
</TimeCard>
Example 2:
<TimeCard xmlns="http://ns.hr-xml.org/2004-08-02">
<ReportedResource>
<Person>
<Id>
<IdValue>d026194</IdValue>
</Id>
</Person>
</ReportedResource>
<ReportedTime>
<PeriodStartDate>2001-05-01</PeriodStartDate>
<PeriodEndDate>2001-05-18</PeriodEndDate>
<TimeInterval type = "Regular" billable = "true">
<StartDateTime>2001-05-07T08:00:00</StartDateTime>
<EndDateTime>2001-05-07T19:00:00</EndDateTime>
<AdditionalData type = "Task">Repair</AdditionalData>
<AdditionalData type = "Order">1212</AdditionalData>
<Comment>Aaabbbccc</Comment>
</TimeInterval>
<Expense type = "Meal" billable = "true">
<ExpenseDate>2001-05-07</ExpenseDate>
<ExpenseAmount currency = "USD">10</ExpenseAmount>
<AdditionalData type = "Order">1212</AdditionalData>
</Expense>
<TimeInterval type = "Vacation">
<StartDateTime>2001-05-08</StartDateTime>
<EndDateTime>2001-05-11</EndDateTime>
</TimeInterval>
<TimeInterval type = "Regular">
<StartDateTime>2001-05-14T08:00:00</StartDateTime>
<EndDateTime>2001-05-14T12:00:00</EndDateTime>
<PieceWork>
<Piece>gadget</Piece>
<Quantity>40</Quantity>
</PieceWork>
<AdditionalData type = "Task">Production</AdditionalData>
</TimeInterval>
<TimeInterval type = "Sickness">
<StartDateTime>2001-05-14T13:00:00</StartDateTime>
<EndDateTime>2001-05-14T17:00:00</EndDateTime>
</TimeInterval>
<TimeInterval type = "Sickness">
<StartDateTime>2001-05-15T08:00:00</StartDateTime>
<EndDateTime>2001-05-18T12:00:00</EndDateTime>
</TimeInterval>
</ReportedTime>
</TimeCard>
Example 3:
<TimeCard xmlns="http://ns.hr-xml.org/2004-08-02">
<ReportedResource>
<Person>
<Id>
<IdValue>d026194</IdValue>
</Id>
</Person>
</ReportedResource>
<ReportedTime>
<PeriodStartDate>2001-05-01</PeriodStartDate>
<PeriodEndDate>2001-05-18</PeriodEndDate>
<TimeEvent type = "Clock-in">
<EventDateTime>2001-05-07T08:01:00Z</EventDateTime>
<AdditionalData type = "Order">1212</AdditionalData>
</TimeEvent>
<TimeEvent type = "Clock-out">
<EventDateTime>2001-05-07T12:03:00Z</EventDateTime>
</TimeEvent>
<TimeEvent type = "Clock-in">
<EventDateTime>2001-05-07T12:32:00Z</EventDateTime>
<AdditionalData type = "Order">1213</AdditionalData>
</TimeEvent>
<TimeEvent type = "Clock-out">
<EventDateTime>2001-05-07T17:05:00Z</EventDateTime>
</TimeEvent>
<TimeEvent type = "Clock-in">
<EventDateTime>2001-05-08T07:59:00Z</EventDateTime>
<AdditionalData type = "Order">1213</AdditionalData>
</TimeEvent>
<TimeEvent type = "Clock-out">
<EventDateTime>2001-05-08T10:04:00Z</EventDateTime>
</TimeEvent>
</ReportedTime>
</TimeCard>
Example 4:
<TimeCard xmlns="http://ns.hr-xml.org/2004-08-02">
<ReportedResource>
<Person>
<Id>
<IdValue>d026194</IdValue>
</Id>
</Person>
</ReportedResource>
<ReportedTime>
<PeriodStartDate>2001-05-01</PeriodStartDate>
<PeriodEndDate>2001-05-18</PeriodEndDate>
<TimeInterval type = "Regular" billable = "true">
<StartDateTime>2001-05-07T08:00:00</StartDateTime>
<EndDateTime>2001-05-07T17:00:00</EndDateTime>
<Duration>PT8H</Duration>
<AdditionalData type = "Task">Repair</AdditionalData>
<AdditionalData type = "Order">1212</AdditionalData>
<AdditionalData type = "CostCenter">700</AdditionalData>
</TimeInterval>
<TimeInterval type = "Overtime" billable = "true">
<StartDateTime>2001-05-07T07:00:00</StartDateTime>
<EndDateTime>2001-05-07T19:00:00</EndDateTime>
<Duration>PT2H</Duration>
<AdditionalData type = "Task">Repair</AdditionalData>
<AdditionalData type = "Order">1212</AdditionalData>
<AdditionalData type = "CostCenter">700</AdditionalData>
<Comment>Aaabbbccc</Comment>
</TimeInterval>
<TimeInterval type = "Dirty Work" billable = "false">
<StartDateTime>2001-05-07</StartDateTime>
<EndDateTime>2001-05-07</EndDateTime>
<RateOrAmount currency = "USD" type = "hourly">20</RateOrAmount>
<AdditionalData type = "Task">Repair</AdditionalData>
<AdditionalData type = "Order">1212</AdditionalData>
<AdditionalData type = "CostCenter">700</AdditionalData>
</TimeInterval>
<Expense type = "Meal" billable = "true">
<ExpenseDate>2001-05-07</ExpenseDate>
<ExpenseAmount currency = "USD">10</ExpenseAmount>
<AdditionalData type = "Order">1212</AdditionalData>
<AdditionalData type = "CostCenter">700</AdditionalData>
</Expense>
<TimeInterval type = "Vacation">
<StartDateTime>2001-05-08</StartDateTime>
<EndDateTime>2001-05-11</EndDateTime>
<Duration>PT32H</Duration>
</TimeInterval>
<TimeInterval type = "Regular" billable = "true">
<StartDateTime>2001-05-14T08:00:00</StartDateTime>
<EndDateTime>2001-05-14T17:00:00</EndDateTime>
<Duration>PT4H</Duration>
<AdditionalData type = "Task">Production</AdditionalData>
<AdditionalData type = "CostCenter">800</AdditionalData>
</TimeInterval>
<TimeInterval type = "Sickness">
<StartDateTime>2001-05-14T13:00:00</StartDateTime>
<EndDateTime>2001-05-14T17:00:00</EndDateTime>
<Duration>PT4H</Duration>
</TimeInterval>
<TimeInterval type = "Sickness">
<StartDateTime>2001-05-15T08:00:00</StartDateTime>
<EndDateTime>2001-05-18T15:00:00</EndDateTime>
<Duration>PT4H</Duration>
</TimeInterval>
</ReportedTime>
</TimeCard>
Additional Examples:
Example 5:
This example shows the recording of various expenses, a meal, and the purchase of a book. Each amount is charged to the same project (DUP1899), however each is associated to different tasks within that project.
<TimeCard xmlns="http://ns.hr-xml.org/2004-08-02">
<ReportedResource>
<Person>
<Id>
<IdValue>77598</IdValue>
</Id>
<PersonName>
<FormattedName>Michelle Hartwick</FormattedName>
</PersonName>
</Person>
</ReportedResource>
<ReportedTime status = "Raw">
<PeriodStartDate>2001-07-01</PeriodStartDate>
<PeriodEndDate>2001-07-31</PeriodEndDate>
<ReportedPersonAssignment>
<Id>
<IdValue>DUP1899</IdValue>
</Id>
</ReportedPersonAssignment>
<Expense type = "Meal" billable = "true">
<Id>
<IdValue>55588</IdValue>
</Id>
<ExpenseDate>2001-07-19</ExpenseDate>
<ExpenseAmount currency = "CAD">123.95</ExpenseAmount>
<AdditionalData type = "Task">17W9</AdditionalData>
<Comment>Dinner with Consultants</Comment>
</Expense>
<Expense type = "Misc." billable = "true">
<Id>
<IdValue>55589</IdValue>
</Id>
<ExpenseDate>2001-07-20</ExpenseDate>
<ExpenseAmount currency = "CAD">77.21</ExpenseAmount>
<AdditionalData type = "Task">17W8</AdditionalData>
<Comment>Book: XML for Simpletons</Comment>
</Expense>
</ReportedTime>
<SubmitterInfo>
<Person>
<PersonName>
<FormattedName>Amanda Hardaway</FormattedName>
</PersonName>
</Person>
<SubmittedDateTime>2001-07-31T11:00:00</SubmittedDateTime>
</SubmitterInfo>
<ApprovalInfo approverType = "1st Level">
<Person/>
<ApprovedDateTime>2001-08-03</ApprovedDateTime>
</ApprovalInfo>
</TimeCard>
Example 6:
This example shows the recording of the use of a resource (limo), and its associated cost ($250 per hour), against a particular project number (19004-A17W1).
<TimeCard xmlns="http://ns.hr-xml.org/2004-08-02">
<ReportedResource>
<Resource type = "car">
<Id>
<IdValue>A4513585</IdValue>
</Id>
<ResourceName>ABC1 Corporate Limo</ResourceName>
<AdditionalData type = "owner"> Office of the president</AdditionalData>
</Resource>
</ReportedResource>
<ReportedTime status = "Raw">
<PeriodStartDate>2001-08-06</PeriodStartDate>
<PeriodEndDate>2001-08-12</PeriodEndDate>
<TimeInterval type = "Regular" dayAssignment = "current" billable = "true">
<Id>
<IdValue>4501</IdValue>
</Id>
<StartDateTime>2001-08-06</StartDateTime>
<EndDateTime>2001-08-06</EndDateTime>
<Duration>PT2H</Duration>
<RateOrAmount currency = "USD" type = "Hourly" period = "Hour">250.00</RateOrAmount>
<AdditionalData type = "Project">19004-A17W1</AdditionalData>
<ApprovalInfo approverType = "Manager">
<Person>
<Id>
<IdValue>000001</IdValue>
</Id>
<PersonName>
<FormattedName>Maxwell Short</FormattedName>
</PersonName>
</Person>
<ApprovedDateTime>2001-08-13T10:00:00</ApprovedDateTime>
<Comment>Confirmed that previous verbal approval of the limo's use was given by the CEO and should be charged against this project.</Comment>
</ApprovalInfo>
<Comment>Limo was used for this emergency with verbal approval of the CEO.</Comment>
</TimeInterval>
<ApprovalInfo approverType = "CEO">
<Person>
<Id>
<IdValue>00003</IdValue>
</Id>
<PersonName>
<FormattedName>Quinn Montgomery</FormattedName>
</PersonName>
</Person>
<ApprovedDateTime>2001-08-13T11:23:00+05:00</ApprovedDateTime>
</ApprovalInfo>
</ReportedTime>
<SubmitterInfo>
<Person>d
<Id>
<IdValue>125549</IdValue>
</Id>
<PersonName>
<FormattedName>Lucy Henderson</FormattedName>
</PersonName>
</Person>
<Source>QATimes</Source>
<SubmittedDateTime>2001-08-10T16:47:00+05:00</SubmittedDateTime>
</SubmitterInfo>
</TimeCard>