WebSchemas/JobPostingSchema
Overview
This page discusses JobPosting-related schemas, from the WebSchemas group. (Latest summary oct 21.) The proposal was initially regarding Schema.org vocabulary.
As of Nov 2011, schema.org includes a JobPosting class, based on the vocabulary proposed and discussed here. See blog post.
Examples in the Wild
Some example sites publishing JobPosting markup:
- http://www.1job.co.uk/town/jobs-in-willenhall
- http://jobuzu.co.uk/Currys-jobs
- http://jobblu.co.uk/Administrator-jobs-in-Nottingham
- http://www.jobmanji.co.uk/support-worker/job-vacancies-in/stevenage
- http://www.careerjet.co.uk/conveyancing-jobs/cornwall-149.html
- http://www.indeed.co.uk/Adecco-jobs-in-Colchester
- http://jobs.trovit.co.uk/physical-activity-jobs
- http://www.jobisjob.co.uk/cosmetics-manufacturing/jobs
- http://jobs.monster.co.uk/v-education-q-nvq-assessor-jobs-l-derry,-northern-ireland.aspx
Initial draft as posted to list:
JobPosting
title: Text
hiringOrganization: Organization
industry: Text
occupationalCategory: Text (use BLS O*NET-SOC taxonomy: http://www.onetcenter.org/taxonomy.html)
jobLocation: Place
baseSalary: Number
salaryCurrency: Text
employmentType: Text (eg. full-time, part-time, contract, temporary, seasonal, internship)
workHours: Text (eg. 1st shift, night shift, 8am-5pm)
qualifications: Text
skills: Text
educationRequirements: Text
experienceRequirements: Text
responsibilities: Text
benefits: Text
incentives: Text - a place for bonus and commission compensation
veteranCommitment: Text
datePosted: Date
For occupationalCategory details e.g. see pdf
Markup example
In Microdata (work-in-progress; currently un-realistic):
<div itemscope itemtype ="http://schema.org/JobPosting">
<h1 itemprop="title">Film Director vacancy</h1>
<dl>
<dt>hours:<span itemprop="workHours">5am-10pm</span></dt>
<dt><span itemprop="employmentType">full-time</span></dt>
<dt>skills: <span itemprop="skills">Film making, 3d, budget management</span></dt>
<dt>date posted: <span itemprop="datePosted">2011-10-15</span></dt>
<dt>employer: <a href="http://example.org/SomeFilmCorp" itemprop="hiringOrganization">SomeFilmCorp</a></dt>
</div>
(...can we get some better real-world examples? move the Org description inline...)
Discussion
How do BLS O*NET-SOC codes relate to ISCO codes? Are mappings available?
- should occupationalCategory contain both text of job title and numeric code? or just numeric code? Can Web URLs be used to indicate these codes?
- are mappings available?
See also Microformat job-listing-brainstorming and job-listing-examples
Comments Summary as of 20th Oct
Notes from Dan Brickley summarising initial feedback; circulated with additional commentary.
1. Comments from Aaron Bradley http://lists.w3.org/Archives/Public/public-vocabs/2011Oct/0066.html
- suggests adding a dateClosing property. [Seems reasonable and useful to me.]
- also asks about 'hiringOrganization -> employer'; presumably whether by the former, we mean the latter (although often job postings obscure the real company).
- occupationalCategory - asks about specifics and flexibility; how precise to do want this field to be?
- veteranCommitment - "I don't understand this - does this mean the job is open to veterans? Preferential treatment for veterans? It seems a bit quixotic to me - might there be a property that expressed special commitments as a text type to make it more extensible?" [ I like 'specialCommitment' or similar; it should work fine for the veteran case, but allow statements about other groups, priorities too ]
2. Comments from Peter Sefton, Jason Douglas http://lists.w3.org/Archives/Public/public-vocabs/2011Oct/0068.html
- Peter Sefton suggests it would be useful to have common notion of a Job that could be shared with CV/Resume markup (a topic that was spontaneously discussed on the list recently, with links/pointers gathered in http://www.w3.org/wiki/CVSchemas ) - "from the point of view of the person who has the job it is an event with start and end dates", with a Job Posting being a related type.
- Jason Douglas notes some common structure with Product and Offer
3. Comments from Sevastos Mastrogiorgis (http://lists.w3.org/Archives/Public/public-vocabs/2011Dec/0014.html)
- Regarding the periodic payment, it could use a max salary property for amount range and another property to define the time of payment (e.x per Hour, per Day) or a target goal the employee must achieve to be awarded with money (e.x per 1000 Sales).
- The job can be done remotely how can you indicate that using jobLocation?
- Hiring organization could be a couple of things including a single Person instead of an Organization.
- How can you mark a job position as available or filled? A `vacancy` property would be ideal.
Substantial questions seem to be:
- Do we add something like closingDate?
- Should we remodel as Job, and relate Job Posting (a kind of Offer?) to Jobs, so they can be re-used in some later Resume/CV markup. I have no strong view; I can see the appeal, but a schema of this size will always have a few custom cases, and it might be more important to move quickly than to unify everything.
- Can veteranCommitment be expressed as 'specialCommitment' instead? If this suits the motivating scenarios, I'd recommend it; but nobody objected to the original formulation.
- occupationalCategory --- how *exactly* do we want this coded text field to work? Do we expect pairs of numeric codes + labels? Are sites with alternate codings out of luck? This seems the most slippery question. There are initiatives eg. ESCO in a European context - see http://www.destree.be/esco/report.pdf - which might not be widely adopted yet in job listing sites, but which it might be damaging to casually ignore or accidentally undermine. Pragmatic suggestion: the field takes a pair of an alphanumeric code and a string label, and for now all we say is that those pairs are matched against schemes 'such as' BLS O*NET-SOC, ESCO, ...
Additional Feedback
- Justin Boyan (Google/Needlebase) in http://lists.w3.org/Archives/Public/public-vocabs/2011Oct/0088.html "The job listing schema looks good to me"; suggests possibly adding email contact. Also notes 'description' and 'URL' general properties from Thing class will be useful, especially when descriptive fields are mixed up in a single line of text.
- Tantek notes via #schema IRC that "http://bestsecurityjobs.co.uk/ has repurposed hCard to post a job listing - not something I would have expected but perhaps something we can learn from"
Related Work
EU initiatives:
- EURES, including work an RDF/LOD representation