h-resume: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(Category:Draft Specifications)
(s/<source>/<syntaxhighlight>/)
 
(22 intermediate revisions by 8 users not shown)
Line 1: Line 1:
<entry-title>h-resume</entry-title>
{{DISPLAYTITLE:h-resume}}
<span class="h-card vcard"><span class="p-name fn">[[User:Tantek|Tantek Çelik]]</span> (<span class="p-role role">Editor</span>)</span>
<span class="h-card vcard"><span class="p-name fn">[[User:Tantek|Tantek Çelik]]</span> (<span class="p-role role">Editor</span>)</span>
----
----
<dfn style="font-style:normal;font-weight:bold">h-resume</dfn> is a simple, open format for publishing resumes and CVs on on the web. h-resume is one of several open [[microformats|microformat]] draft standards suitable for embedding data in HTML/HTML5.
<dfn style="font-style:normal;font-weight:bold">h-resume</dfn> is a simple, open format for publishing resumes and CVs on on the web. h-resume is one of several open [[microformats|microformat]] draft standards suitable for embedding data in HTML.


h-resume is the [[microformats2]] update to [[hResume]].
h-resume is the [[microformats2]] update to [[hResume]].
{{cc0-owfa-license}}


== Example ==
== Example ==
Here is a simple resume example:
Here is a simple resume example:


<source lang=html4strict>
<syntaxhighlight lang="html">
<div class="h-resume">
<div class="h-resume">
   <a class="p-contact h-card" href="http://example.org">
   <span class="p-name">
  <a class="p-contact h-card" href="http://example.org">
     <img src="http://example.org/photo.png" alt="" />
     <img src="http://example.org/photo.png" alt="" />
     Joe Bloggs
     Joe Bloggs
   </a>
  </a>
  resume
   </span>
    
    
   <p class="p-summary">Joe is a top-notch llama farmer with a degree in <span class="p-skill">Llama husbandry</span> and a thirst to produce the finest wool known to man</p>
   <p class="p-summary">Joe is a top-notch llama farmer with a degree in <span class="p-skill">Llama husbandry</span> and a thirst to produce the finest wool known to man</p>
</div>
</div>
</source>
</syntaxhighlight>
 
Parsed JSON:
<syntaxhighlight lang="javascript">
{
  "items": [
    {
      "type": [
        "h-resume"
      ],
      "properties": {
        "name": [
          "Joe Bloggs resume"
        ],
        "contact": [
          {
            "value": "Joe Bloggs",
            "type": [
              "h-card"
            ],
            "properties": {
              "name": [
                "Joe Bloggs"
              ],
              "photo": [
                "http://example.org/photo.png"
              ],
              "url": [
                "http://example.org"
              ]
            }
          }
        ],
        "summary": [
          "Joe is a top-notch llama farmer with a degree in Llama husbandry and a thirst to produce the finest wool known to man"
        ],
        "skill": [
          "Llama husbandry"
        ]
      }
    }
  ]
}
</syntaxhighlight>


=== Get started ===
=== Get started ===
The class '''<code>h-resume</code>''' is a ''root class name'' that indicates the presence of an h-resume.
The class '''<code>h-resume</code>''' is a ''root class name'' that indicates the presence of an h-resume.


See [[microformats-2-parsing]] to learn more about property classnames.
See [[microformats2-parsing]] to learn more about property classnames.


== Properties ==
== Properties ==
 
h-resume properties, inside an element with class '''h-resume''':
* '''<code>p-name</code>''' - brief name of the resume
* '''<code>p-summary</code>''' - overview of qualifications and objectives
* '''<code>p-summary</code>''' - overview of qualifications and objectives
* '''<code>p-contact</code>''' - current contact info in an <code>[[h-card]]</code>
* '''<code>p-contact</code>''' - current contact info in an <code>[[h-card]]</code>
* '''<code>p-education</code>''' - an education <code>[[h-event]]</code> event, years, nested <code>[[h-card]]</code> of the school, location.
* '''<code>p-education</code>''' - an education <code>[[h-event]]</code> event, years, embedded <code>[[h-card]]</code> of the school, location. {{main|h-event}} {{main|h-card}}
* '''<code>p-experience</code>''' - a job or other professional experience <code>[[h-event]]</code> event, years, nested <code>[[h-card]]</code> of the organization, location, job-title.
* '''<code>p-experience</code>''' - a job or other professional experience <code>[[h-event]]</code> event, years, embedded <code>[[h-card]]</code> of the organization, location, job-title. {{main|h-event}} {{main|h-card}}
* '''<code>p-skill</code>''' - a skill or ability, optionally including level and/or duration of experience
* '''<code>p-skill</code>''' - a skill or ability, optionally including level and/or duration of experience
* '''<code>p-affiliation</code>''' - an affiliation with an <code>[[h-card]]</code> organization
* '''<code>p-affiliation</code>''' - an affiliation with an <code>[[h-card]]</code> organization


For backward compatibility, microformats 2 parsers {{should}} detect the following root class name and property names. A microformats 2 parser may use existing microformats [[parsers]] to extract these properties. If an "h-resume" is found, don't look for an "hresume" on the same element.
All properties are optional.
 
compat root class name: <code id="hresume">hresume</code><br/>
properties: (parsed as '''p-''' plain text unless otherwise specified)
* <code>summary</code>
* <code>contact</code> - including compat root <code>vcard</code> in the absence of <code>h-card</code>
* <code>education</code> - including compat root <code>vevent</code> in the absence of <code>h-event</code>
* <code>experience</code> - including compat root <code>vevent</code> in the absence of <code>h-event</code>
* <code>skill</code>
* <code>affiliation</code> - including compat root <code>vcard</code> in the absence of <code>h-card</code>


== Status ==
== Status ==


'''h-resume''' is a microformats.org draft specification. Public discussion on h-resume takes place on [[h-resume-feedback]], the #microformats [[irc]] channel on irc.freenode.net, and [http://microformats.org/discuss/mail/microformats-new/ microformats-new mailing list].
'''h-resume''' is a microformats.org draft specification. Public discussion on h-resume takes place on [[h-resume-feedback]] and the #microformats [[irc]] channel on irc.freenode.net.


h-resume is ready to use and implemented in the wild, but for backwards compatibility you should also mark h-resumes up with classic [[hResume]] classnames.
h-resume is ready to use and implemented in the wild, but for backwards compatibility you should also mark h-resumes up with classic [[hResume]] classnames.
Line 55: Line 95:
(stub, add any property explanations here)
(stub, add any property explanations here)


'''p-skill''' has a [[hresume-skill-brainstorm|proposed expansion into competency]] with explicit summary, rating and/or duration components. Based on existing real world adoption, we should consider an h-competency vocabulary with p-summary, p-rating, and dt-duration properties.
'''p-skill''' has a [[hresume-skill-brainstorm|proposed expansion into competency]] with explicit summary, rating and/or duration components. Based on existing real world adoption, we should consider an h-skill vocabulary with p-name, p-rating, and dt-duration properties.


== Examples in the Wild ==
== Examples in the Wild ==
* [https://lejenome.github.io/ Moez Bouhlel] has marked up his [https://lejenome.github.io/resume résumé] using h-resume.
* [[User:Almorca|Almorca]] has marked up [http://www.almorca.es/ his personal web page (in spanish)].
* [https://petermolnar.net/ Peter Molnar] has marked up [https://petermolnar.net/about.html his resume] (on his about page) using h-resume.
* View (and add!) more examples here:
** https://indieweb.org/resum%C3%A9#IndieWeb_Examples


* … add any h-resume examples you find in the wild
'''Archived examples''' (past examples from sites that may be gone, down, or had markup changes)
* [[User:Csarven|Sarven Capadisli]] marked up his [https://web.archive.org/web/20160309095003/http://csarven.ca/cv Curriculum Vitae] as an h-resume.
* … find archive.org links for any broken examples above and move them here
 
== Validating ==
{{h-spec-section-validating}}
 
== Backward Compatibility ==
=== Publisher Compatibility ===
(stub)
=== Parser Compatibility ===
Microformats parsers {{should}} detect the following root class name and property names. A microformats2 parser may use existing microformats [[parsers]] to extract these properties. If an "h-resume" is found, don't look for an "hresume" on the same element.
 
compat root class name: <code id="hresume">hresume</code><br/>
properties: (parsed as '''p-''' plain text unless otherwise specified)
* <code>summary</code>
* <code>contact</code> - including compat root <code>vcard</code> in the absence of <code>h-card</code>
* <code>education</code> - including compat root <code>vevent</code> in the absence of <code>h-event</code>
* <code>experience</code> - including compat root <code>vevent</code> in the absence of <code>h-event</code>
* <code>skill</code>
* <code>affiliation</code> - including compat root <code>vcard</code> in the absence of <code>h-card</code>


== Background ==
== Background ==
Line 67: Line 132:
== See Also ==
== See Also ==


* [[microformats-2]]
* [[microformats2]]
* [[h-card]] and [[h-event]] are both nested in h-resume
* [[h-card]] and [[h-event]] are both embedded in h-resume
* The [[include-pattern]] is likely to be useful to avoid repeating information in any nested h-cards
* The [[include-pattern]] is likely to be useful to avoid repeating information in any embedded h-cards
* [[hResume]] is the classic microformat replaced by h-resume
* [[hResume]] is the classic microformat replaced by h-resume


[[Category:Draft Specifications]]
[[Category:Draft Specifications]]

Latest revision as of 21:53, 13 November 2022

Tantek Çelik (Editor)


h-resume is a simple, open format for publishing resumes and CVs on on the web. h-resume is one of several open microformat draft standards suitable for embedding data in HTML.

h-resume is the microformats2 update to hResume.

Per CC0, to the extent possible under law, the editors have waived all copyright and related or neighboring rights to this work. In addition, as of 2024-03-28, the editors have made this specification available under the Open Web Foundation Agreement Version 1.0.

Example

Here is a simple resume example:

<div class="h-resume">
  <span class="p-name">
   <a class="p-contact h-card" href="http://example.org">
    <img src="http://example.org/photo.png" alt="" />
    Joe Bloggs
   </a>
   resume
  </span>
  
  <p class="p-summary">Joe is a top-notch llama farmer with a degree in <span class="p-skill">Llama husbandry</span> and a thirst to produce the finest wool known to man</p>
</div>

Parsed JSON:

{
  "items": [
    {
      "type": [
        "h-resume"
      ],
      "properties": {
        "name": [
          "Joe Bloggs resume"
        ],
        "contact": [
          {
            "value": "Joe Bloggs",
            "type": [
              "h-card"
            ],
            "properties": {
              "name": [
                "Joe Bloggs"
              ],
              "photo": [
                "http://example.org/photo.png"
              ],
              "url": [
                "http://example.org"
              ]
            }
          }
        ],
        "summary": [
          "Joe is a top-notch llama farmer with a degree in Llama husbandry and a thirst to produce the finest wool known to man"
        ],
        "skill": [
          "Llama husbandry"
        ]
      }
    }
  ]
}

Get started

The class h-resume is a root class name that indicates the presence of an h-resume.

See microformats2-parsing to learn more about property classnames.

Properties

h-resume properties, inside an element with class h-resume:

  • p-name - brief name of the resume
  • p-summary - overview of qualifications and objectives
  • p-contact - current contact info in an h-card
  • p-education - an education h-event event, years, embedded h-card of the school, location.
    Main article: h-event
    Main article: h-card
  • p-experience - a job or other professional experience h-event event, years, embedded h-card of the organization, location, job-title.
    Main article: h-event
    Main article: h-card
  • p-skill - a skill or ability, optionally including level and/or duration of experience
  • p-affiliation - an affiliation with an h-card organization

All properties are optional.

Status

h-resume is a microformats.org draft specification. Public discussion on h-resume takes place on h-resume-feedback and the #microformats irc channel on irc.freenode.net.

h-resume is ready to use and implemented in the wild, but for backwards compatibility you should also mark h-resumes up with classic hResume classnames.

Property Details

(stub, add any property explanations here)

p-skill has a proposed expansion into competency with explicit summary, rating and/or duration components. Based on existing real world adoption, we should consider an h-skill vocabulary with p-name, p-rating, and dt-duration properties.

Examples in the Wild

Archived examples (past examples from sites that may be gone, down, or had markup changes)

Validating

Main article: validators

Test and validate microformats2 markup in general with:

Backward Compatibility

Publisher Compatibility

(stub)

Parser Compatibility

Microformats parsers SHOULD detect the following root class name and property names. A microformats2 parser may use existing microformats parsers to extract these properties. If an "h-resume" is found, don't look for an "hresume" on the same element.

compat root class name: hresume
properties: (parsed as p- plain text unless otherwise specified)

  • summary
  • contact - including compat root vcard in the absence of h-card
  • education - including compat root vevent in the absence of h-event
  • experience - including compat root vevent in the absence of h-event
  • skill
  • affiliation - including compat root vcard in the absence of h-card

Background

h-resume is based on the existing hResume specification.

See Also