From W3C Wiki
< WebSchemas
Revision as of 09:42, 18 February 2013 by Jmynarz (Talk | contribs)

Jump to: navigation, search

A collection of extending Schema.org to cover the domain of job market.

There's an associated repository for this extension proposal, which contains:

There's a Czech project about applying semantic web technologies for the "long-tail" of job market, for which this extension will be used. The main goal of the extension is to clean some of the issues with original Schema.org and provide data structure that is:

  •  easy to use for web developers to embed in HTML
  • provides sufficiently detailed structure for "intelligent" match-making between job postings and job seekers to be feasible

The initial proposal was made by Jindřich Mynarz, Richard Cyganiak, Eliška Hutníková, Josef Šlerka, Vojtěch Hýža and Jakub Fiala.

The extension proposal is licensed with the Creative Commons Attribution-ShareAlike 3.0 Czech Republic License, in order to comply with the Schema.org's licence.

Thing > Intangible > QuantitativeValue > Compensation

Properties from QuantitativeValue:

  • minValue
  • maxValue
  • value

Properties from Compensation:

  • currency: Text (The currency (in 3-letter ISO 4217 format) of the compensation.)
  • type: Text (The type of compensation. Recommended values are: annual, hourly, fixed.)


  • PriceSpecification is close (a monetary value with a range), but the naming strongly implies its use as a price or charge for something, which seems inappropriate here.

Thing > Intangible > JobPosting

Properties from JobPosting:

  • contact: ContactPoint
  • experienceRequirements: WorkExperience
  • industry: (Amend the original description to include also private employment etc. Labelling this property industry is too restrictive. A possible option to broaden its range is to use a label like category.)
  • compensation: Compensation
  • isRemoteWork: Boolean
  • startDate: Date (Property reused from Event)


  • JobPosting has hiringOrganization, but we also want to allow individual-to-individual job postings.
  • Elsewhere, a property contactPoint exists. Calling it “contact” seems a bit more accurate than “contactPoint” here, but “contactPoint” could still be better to avoid a new property.
  • experienceRequirements would be either Text (current situation) or a structured value (our proposal).
  • The current JobPosting assumes salaried positions, which works poorly for fixed-payment contract employments or hourly pay.

Thing > Intangible > StructuredValue > WorkExperience

Properties from Thing:

  • description

Properties from WorkExperience:

  • duration: Duration
  • references: Boolean (Applicant must be able to provide references for this experience.)

Modelling issues

Handling of localities and street addresses

When adding a locality and/or street address to job postings, schema.org requires adding two intermediate resources, a Place and a Postal Address. This can result in awkward markup. There can be a markup guidance document that will state that the intermediate <span itemprop=”jobLocation”> and <span itemprop=”address”> can be omitted, so that <span itemprop=”addressLocality”> or <span itemprop=”streetAddress”> would be used directly on a JobPosting. However, this is considered a non-standard implementation detail and is not part of this extension proposal.

Handling of Boolean values

There is an issue against schema.org regarding the representation of booleans: http://www.w3.org/2011/webschema/track/issues/14

We should recommend the solution: <meta itemprop=”...” content=”true”> or simply <span itemprop=”...”>true</span> because the option with href is unnecessarily complicated.