A user account is required in order to edit this wiki, but we've had to disable public user registrations due to spam.

To request an account, ask an autoconfirmed user on Chat (such as one of these permanent autoconfirmed members).

Generic Metadata Mechanisms: Difference between revisions

From WHATWG Wiki
Jump to navigation Jump to search
Line 13: Line 13:
== Who faces this problem? ==
== Who faces this problem? ==


=== Nobody ===
Currently a few groups. In the future metadata may become necessary for the average "web consumer" (human or machine) to sort actual information from presentation and structural cruft. In other words, a useful tool for determining the meaning, terms of use, quality and/or authority of a piece of data inside (X)HTML.
 
...
 
=== A few people ===
 
...
 
=== Everybody ===
 
...


= Requirements: If we assume that we are going to address this need, what do we need to provide? =
= Requirements: If we assume that we are going to address this need, what do we need to provide? =

Revision as of 12:14, 1 September 2008

There have been some requests for introducing generic metadata mechanisms into HTML5.

To help determine what we would need to add, and whether it is worth adding anything, we have to come to an understanding of what the goals and requirements are of such a proposal.

Please document arguments with links to supporting research or links to other wiki pages detailing the anecdotal evidence for or against particular aspects of the goals and requirements.

Goals

What is the problem we are trying to solve?

A machine-readable and standardized way to apply semantic properties (metadata) to DOM elements in HTML5 and probably XHTML. These properties are capable of being disambiguated between multiple definitions of the property name. We should be able to find or define an "authoritive" meaning for an abstract concept like "title" (eg. book title, job title, person's title, land deed, etc...). The metadata could be read by UA's and other tools to perform actions that would not be possible without "knowing" what type of thing, quantity, unit or quality an element represents.

Who faces this problem?

Currently a few groups. In the future metadata may become necessary for the average "web consumer" (human or machine) to sort actual information from presentation and structural cruft. In other words, a useful tool for determining the meaning, terms of use, quality and/or authority of a piece of data inside (X)HTML.

Requirements: If we assume that we are going to address this need, what do we need to provide?

Please list each requirement in its own subsection so that arguments pro and con and links to supporting research can be included.

The DOM has to be consistent between HTML and XHTML representations

  • Pro: If it isn't, then migrating between the two becomes complicated.

The syntax has to be something that Web authors can easily deploy

  • Pro: If authors can't deploy this, then it won't get critical mass and won't matter
  • Con: Tools will be used to deploy this. It'll mostly be used by big sites like Facebook. So individual authors don't matter.

It has to have both a way to abstract it from the HTML and a way to include it inline

  • Examples: Javascript and CSS
  • Pro: Inline it may be quicker for non-professional developers to use and adopt.
  • Pro: Abstracted it is more flexible for professional developers, does not clutter the HTML, and gives it more space to develop such as style did once it was abstracted from HTML.
  • Con: More complicated than having either.

Inline it should follow the conventions of CSS and Javascript

  • Javascript example: onclick="doSomething();doSomethingElse();foo();"
  • CSS example: style="width:300px;height:200px;border:1px solid #ccc;font-size:1em;"
  • Pro: The properties are grouped together and in the case of style only uses one attribute name. This keeps the markup cleaner and better organized than creating multiple attributes directly on the elements. Compare with how we added style to elements before CSS.
  • Con: Makes it harder to select individual property/value pairs through CSS or the DOM. (Might required dedicated APIs... Ugh.)


Related Proposals, Research and Discussions