project-brainstorming

From Microformats Wiki
Jump to navigation Jump to search

Projecta

Even though there are existing project formats, the projecta format MUST be developed because there is no established project format and it will enable decentralized development of projects.

Format

In General

The projecta format is based on a set of fields common to numerous project sites and formats in use today on the web. Where possible field names have been chosen based on those defined by the related hCard, hCalendar, and hReview standards.

Schema

The projecta schema consists of the following:

  • Projecta (projecta)
    • version. optional. text.
    • summary. optional. text.
    • project-info required. (url || photo )
    • author. optional. hCard.
    • description. optional. text with optional valid HTML markup.
    • requirements. optional. text with optional url to products or other projects.
    • steps. optional. text with valid HTML ol (li) elements.
    • tags. optional. keywords or phrases, using rel-tag, each with optional rating.
    • permalink. optional, using rel-bookmark and rel-self.

Field details

The fields of the projecta schema represent the following:

version:: This optional field permits projecta publishers to specify a particular version of projecta that their content uses. This field is syntax compatible with, and thus reuses the semantics of "VERSION" as defined in vCard RFC2426 section "3.6.9 VERSION Type Definition". The value of this field for this specification is "0.1".

summary:: This optional field serves as a title for the project itself.

project info:: This required field MUST have at a minimum the name However, when using item info subproperties ("fn", "url", "photo"), they MUST be nested inside the item element.

author:: The optional field specifies the person who authored the project. If the author is specified, an hCard representing the author MUST be provided. The projecta format is intended to be used in conjunction with MediaWiki which will require a username to submit a new project. The username will be represented with an hCard.

description:: This optional field contains the full text representing the written opinion of the author. The field MAY include valid HTML markup (e.g. paragraphs). User agents SHOULD preserve any markup.

requirements:: This optional field contains the requirements of the project. The field MAY include links to products or other projects.

steps:: Steps are represented using an ordered list of tasks required to complete the project. Represented as an ordered list with list elements.

tags:: Tags are represented using a list of keywords or phrases (using the rel-tag microformat for each individual keyword or phrase tag) that the author associates with the project.

permalink:: This optional field is a URL for the projecta. In addition to using the <a href> tag for this field, the attribute rel="self bookmark" MUST be used to indicate that the hyperlink is a permalink for the project itself. If the hyperlink already contains a rel attribute, then the values self and bookmark MUST be included among the space-separated set of values in the attribute. Indexers MAY treat the permalink of a project as a unique ID in order to identify and collate the same project from multiple sources (such as indexing a page multiple times). The permalink MAY also be used to indicate or imply the origin of the project. Authors MAY use the classname of "permalink" on the element representing the permalink.

The following field names have been reused from the hCard, hCalendar, and hReview microformats: version, summary, fn, url, photo, description, tags, permalink. In addition, items and authors described by hCards MAY contain any hCard field. The rel value "self" has been reused from the Atom 1.0 specification.