<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>Payroll In</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"></head>
<body>
Incoming Payroll XML Document<br>
<br>
<payroll type="raw" version="1.1" date="" period="" genSysId="" startPeriod="" endPeriod=""><br>
<person id="" name="" marital="single"><br>
<country name="" gross="" allow=""
withHold="" grossYTD="" federalYTD="" method=""><br>
<state name=""
gross="" allow="" withHold="" method=""><br>
<local name="" gross="" allow="" withHold="" method=""/><br>
</state><br>
<mileage>value</mileage><br> </country><br> <adjustment name="" value=""
comment=""/><br>
</person><br>
</payroll><br>
<br>
specify a <location> for each country, state, local combination
that applies to the person's payroll entry.<br>
local does not have to be defined.<br>
<br>
state does not have to be defined.<br>
<br>
mileage does not have to be defined, but can only be defined once per country.<br>
<br>
adjustment does not have to be defined, but can be defined more than once.<br>
<br>
Ex.<br>
<br>
<payroll type="raw" version="1.1" date="20020415" period="semimonthly"
genSysId="12345" startPeriod="20020401" endPeriod="20020415"><br>
<person id="123456789" name="John Doe" marital="single"><br>
<country name="US" gross="1000.00"
allow="1" withHold="1.00" grossYTD="3000.00" federalYTD="100.00" method=""><br>
<state name="MO"
gross="400.00" allow="0" withHold="5.00" method=""><br>
<local name="St. Louis" gross="0.00" allow="0" withHold="1.00" method=""/><br>
</state><br>
<state name="IL"
gross="600.00" allow="0" withHold="5.00" method=""><br>
<local name="E. St. Louis" gross="10.00" allow="1" withHold="0.00" method=""/><br>
</state><br>
<mileage>30</mileage><br>
</country><br>
<adjustment name="Reimbursement" value="5.25"
comment="Sharpees"/><br>
<adjustment name="Correction" value="-15.75"
comment="Overpay for 20020915"/><br>
</person><br>
</payroll><br>
<br>
Perl data structure:<br>
<br>
data = { version, date, persons, period, genSysId, startPeriod, endPeriod }<br>
where persons = array of persons.<br>
genSysId is an identifier that the generating system associated with this
payroll.<br>
startPeriod and endPeriod are dates that define the start and end date of the payroll period being processed.<br>
<br>
In each person, { id, name, countries, marital, adjustments }<br>
where countries = array of country entries.<br>
where adjustments = array of adjustment entries.<br>
<br>
In each country , {name, states, gross, allow, withHold,
grossYTD, federalYTD, method, mileage }<br>
In each state , {name, locals, gross, allow, withHold, method}<br>
<br>
In each local, { name, gross, allow, withHold, method }<br>
<br>
In each adjustment, { name, value, comment }<br>
The comment does not have to have a value and will only be output if a value
is specified.<br>
<br>
Changes from 1.0 -> 1.1:<br>
<ul>
<li>Added startPeriod, endPeriod attributes to the <payroll> tag.</li>
</ul>
<br>
</body></html>