hCalendar (short for HTML iCalendar) is a microformat standard for displaying a semantic (X)HTML representation of iCalendar-format calendar information about an event, on web pages, using HTML classes and rel attributes.
It allows parsing tools (for example other websites, or browser add-ons [1] like Firefox's Operator extension) to extract the details of the event, and display them using some other website, index or search them, or to load them into a calendar or diary program, for instance. Multiple instances can be displayed as timelines.
Consider this semi-fictional example:
The English Wikipedia was launched on 15 January 2001 with a party from 2-4pm at Jimmy Wales' house (more information).
The HTML mark-up might be:
<p> The English Wikipedia was launched on 15 January 2001 with a party from 2-4pm at Jimmy Wales' house (<ahref="http://en.wikipedia.org/wiki/History_of_Wikipedia">more information</a>) </p>
hCalendar mark-up may be added using span
HTML elements and the classes vevent
, summary
, dtstart
(start date), dtend
(end date), location
and url
:
<pclass="vevent"> The <spanclass="summary">English Wikipedia was launched</span> on 15 January 2001 with a party from <abbrclass="dtstart"title="2001-01-15T14:00:00+06:00">2pm</abbr>- <abbrclass="dtend"title="2001-01-15T16:00:00+06:00">4pm</abbr> at <spanclass="location">Jimmy Wales' house</span> (<aclass="url"href="http://en.wikipedia.org/wiki/History_of_Wikipedia">more information</a>) </p>
Note the use of the abbr
element to contain the machine readable, ISO8601, date-time format for the start and end times.
Concerns have been expressed [2] that, where it occurs, the use of the abbr
element (using the so-called abbr-design-pattern) in the above manner causes accessibility problems, not least for users of screen readers and aural browsers. [3] The newer h-event microformat therefore uses the HTML5 element time
instead:
<timeclass="dt-start"datetime="2013-06-30 12:00">30<sup>th</sup>June2013,12:00</time>
The Geo microformat is a part of the hCalendar specification, and is often used to include the coordinates of the event's location within an hCalendar.
For a full list of attributes, see the hCalendar cheat-sheet.
Notable organisations and other websites using hCalendar include:
The Document Object Model (DOM) is a cross-platform and language-independent interface that treats an HTML or XML document as a tree structure wherein each node is an object representing a part of the document. The DOM represents a document with a logical tree. Each branch of the tree ends in a node, and each node contains objects. DOM methods allow programmatic access to the tree; with them one can change the structure, style or content of a document. Nodes can have event handlers attached to them. Once an event is triggered, the event handlers get executed.
HyperText Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.
In computing, a hyperlink, or simply a link, is a digital reference to data that the user can follow or be guided to by clicking or tapping. A hyperlink points to a whole document or to a specific element within a document. Hypertext is text with hyperlinks. The text that is linked from is known as anchor text. A software system that is used for viewing and creating hypertext is a hypertext system, and to create a hyperlink is to hyperlink. A user following hyperlinks is said to navigate or browse the hypertext.
A bookmarklet is a bookmark stored in a web browser that contains JavaScript commands that add new features to the browser. They are stored as the URL of a bookmark in a web browser or as a hyperlink on a web page. Bookmarklets are usually small snippets of JavaScript executed when user clicks on them. When clicked, bookmarklets can perform a wide variety of operations, such as running a search query from selected text or extracting data from a table.
An HTML element is a type of HTML document component, one of several types of HTML nodes. The first used version of HTML was written by Tim Berners-Lee in 1993 and there have since been many versions of HTML. The current de facto standard is governed by the industry group WHATWG and is known as the HTML Living Standard.
The Internet Calendaring and Scheduling Core Object Specification (iCalendar) is a media type which allows users to store and exchange calendaring and scheduling information such as events, to-dos, journal entries, and free/busy information, and together with its associated standards has been a cornerstone of the standardization and interoperability of digital calendars across different vendors. Files formatted according to the specification usually have an extension of .ics. With supporting software, such as an email reader or calendar application, recipients of an iCalendar data file can respond to the sender easily or counter-propose another meeting date/time. The file format is specified in a proposed Internet standard for calendar data exchange. The standard and file type are sometimes referred to as "iCal", which was the name of the Apple Inc. calendar program until 2012, which provides one of the implementations of the standard.
Microformats (μF) are a set of defined HTML classes created to serve as consistent and descriptive metadata about an element, designating it as representing a certain type of data. They allow software to process the information reliably by having set classes refer to a specific type of data rather than being arbitrary.
hCard is a microformat for publishing the contact details of people, companies, organizations, and places, in HTML, Atom, RSS, or arbitrary XML. The hCard microformat does this using a 1:1 representation of vCard properties and values, identified using HTML classes and rel attributes.
In HTML, the standard markup language for documents designed to be displayed in a web browser, <div>
and <span>
tags are elements used to define parts of a document, so that they are identifiable when a unique classification is necessary. Where other HTML elements such as <p>
(paragraph), <em>
(emphasis), and so on, accurately represent the semantics of the content, the additional use of <span>
and <div>
tags leads to better accessibility for readers and easier maintainability for authors. Where no existing HTML element is applicable, <span>
and <div>
can valuably represent parts of a document so that HTML attributes such as class
, id
, lang
, or dir
can be applied.
RDFa or Resource Description Framework in Attributes is a W3C Recommendation that adds a set of attribute-level extensions to HTML, XHTML and various XML-based document types for embedding rich metadata within Web documents. The Resource Description Framework (RDF) data-model mapping enables its use for embedding RDF subject-predicate-object expressions within XHTML documents. It also enables the extraction of RDF model triples by compliant user agents.
Geo is a microformat used for marking up geographical coordinates in HTML. Coordinates are expected in angular units of degrees and geodetic datum WGS84. Although termed a "draft" specification, the format is a de facto standard, stable and in widespread use; not least as a sub-set of the published hCalendar and hCard microformat specifications, neither of which is still a draft.
Semantic HTML is the use of HTML markup to reinforce the semantics, or meaning, of the information in web pages and web applications rather than merely to define its presentation or look. Semantic HTML is processed by traditional web browsers as well as by many other user agents. CSS is used to suggest its presentation to human users.
hReview is a microformat for publishing reviews of books, music, films, restaurants, businesses, holidays, etc. using (X)HTML on web pages, using HTML classes and rel attributes.
Web Slices are a web feed technology based on the hAtom Microformat that allows users to subscribe to portions of a web page. Microsoft developed the Web Slice format, and published a specification under their Open Specification Promise. The specification is not published by any independent standards body. Introduced in Internet Explorer 8 Beta 1, Web Slices can be previewed in a fly-out window. As of 2012, Internet Explorer 8 and 9 were the only browsers to support Web Slices natively, although Mozilla Firefox had support via an add-on called webchunks.
hProduct is a microformat for publishing details of products, on web pages, using (X)HTML classes and rel attributes.
hRecipe is a draft microformat for publishing details of recipes using (X)HTML on web pages, using HTML classes and rel attributes. In its simplest form, it can be used to identify individual foodstuffs, because the only required properties are fn
and an ingredient
, which can be the same:
Microdata is a WHATWG HTML specification used to nest metadata within existing content on web pages. Search engines, web crawlers, and browsers can extract and process Microdata from a web page and use it to provide a richer browsing experience for users. Search engines benefit greatly from direct access to Microdata because it allows them to understand the information on web pages and provide more relevant results to users. Microdata uses a supporting vocabulary to describe an item and name-value pairs to assign values to its properties. Microdata is an attempt to provide a simpler way of annotating HTML elements with machine-readable tags than the similar approaches of using RDFa and microformats.
HTML attributes are special words used inside the opening tag to control the element's behaviour. HTML attributes are a modifier of a HTML element type. An attribute either modifies the default functionality of an element type or provides functionality to certain element types unable to function correctly without them. In HTML syntax, an attribute is added to a HTML start tag.
XHTML+RDFa is an extended version of the XHTML markup language for supporting RDF through a collection of attributes and processing rules in the form of well-formed XML documents. XHTML+RDFa is one of the techniques used to develop Semantic Web content by embedding rich semantic markup. Version 1.1 of the language is a superset of XHTML 1.1, integrating the attributes according to RDFa Core 1.1. In other words, it is an RDFa support through XHTML Modularization.
Schema.org is a reference website that publishes documentation and guidelines for using structured data mark-up on web-pages. Its main objective is to standardize HTML tags to be used by webmasters for creating rich results about a certain topic of interest. It is a part of the semantic web project, which aims to make document mark-up codes more readable and meaningful to both humans and machines.