Public:BWmeta format

From YaddaWiki

Jump to: navigation, search
Service details
NameBWmeta
Code location
(relative to SVN root)
projects/dir/bwmeta-core
Javadoc
Contact personJakub Jurkiewicz

BWmeta is a general-purpose metadata format capable of describing entities such as: academic articles, books, audio recordings, laws, or molecular sequences. Originally, the format was designed from a need of a single, flexible, publisher-independent metadata format for documents hosted by the YADDA platform. BWMeta is xml based format.

Presentation about metadata (in polish)


Basic tags

What follows is a brief summary of the most crucial tags in BWmeta format. A sample document described using the format is shown in the next section.

  • element contains metadata related to a given document or object.
  • name covers titles, subtitles, names, surnames, name alternatives, abbreviations, while description covers abstracts, comments. As a rule of the thumb: name tends to represent one-line texts while description ­– multi-line texts. Optional attributes: lang (ISO 639-1 or ISO 639-2), type (such as: surname, forenames, title) and sort-key.
  • attribute is a general-purpose tag. It is a tree with key-value pairs in each node. It is used to store information which does not map well to existing tags.
  • contents tag contains a tree of directory and file tags which describe content files (eg. type, size, checksums). Each file contains one or more location tags which contain URL of a copy of the described file.
  • contributor with a required attribute role (such as: author, editor, composer, translator) represents a person or institution that has contributed to the creation of the document/entity. Child tags include any number of name and description tags with different types, as well as references to affiliations (the affiliation tags are located directly under the element tag).
  • id tag consists of scheme (eg. DOI, PMID) and the actual value of the id.
  • structure tag contains references to all the parent elements (stored in the ancestor tag). For example, in the case of a journal article, these might be: the journal, the volume, and the issue containing the article.
  • relation tags contain references to other documents, for example bibliographic references.

Rich text support

Starting with BWmeta 2.0.0, support for rich text is introduced for certain fields. By rich text we mean a mixed content of text and tags from namespaces other than bwmeta. For example, the following should be a valid fragment of BWmeta 2.2.1 (assuming that suitable declarations of xhtml and mathml are present):

 <description lang="eng" type="abstract">
     <xhtml:em>Lorem ipsum</xhtml:em> dolor sit amet <mathml:math>[...]</mathml:math>
 </description>

The following fields support rich text:

  • name
  • description
  • tag
  • attribute

The change in attribute renders BWmeta 2.0.0 incompatible with BWmeta 1.2.0: The following in BWmeta 1.2.0:

 <attribute key="foo" value="bar"/>

becomes the following in BWmeta 2.0.0:

 <attribute key="foo">
     <value>bar</value>
 </attribute>

Rich text in BWmeta1 (proposal)

In BWmeta1, rich text can be inserted to certain fields. It should be marked by [[bwmeta-rich-text-start]] and [[bwmeta-rich-text-end]] markers. Characters like > will be escaped, but mentioned markers ensure that we can reconstruct rich text.

During conversion to BWmeta2, fields that support rich text and contain these markers will be converted to rich text.

Personal tools