The Moseycode barcode system is based on storing information in chambers that are accessible through portals. The chamber information is stored in an open, platform independent, XML format. This document lays-out some of the details of its schema. A fuller specification will be published once the format has been developed more fully.
Note that this document assumes a good degree of familiarity with xml.
The key aim of this markup language is to provide an effective way for authors to control the appearance, content and operation of Moseycode portals. In addition to this, the language has been designed to:
<chamber>
<authorship>
<name>
</name>
<title>
</title>
<created timestamp="">
</created>
<modified timestamp="">
</modified>
<location lon="" lat="" ele="">
</location>
<comments>
</comments>
<agents>
<agent namespace="">
</agent>
</agents>
</authorship>
<data>
<tokens>
<token name="" from="" to="" encoding=""/>
</tokens>
<lookups>
<url name="" source=""/>
</lookups>
</data>
<flavors>
<direct/>
<communicate/>
<present/>
<authenticate/>
<interact/>
</flavors>
<content>
<media rel="">
<title>
</title>
<description>
</description>
<image|movie|audio|model url="" width="" height="" size="" rate=""/>
</media>
<contact>
<role organization="">
<fixed-tel>
</fixed-tel>
<mobile-tel>
</mobile-tel>
<email>
</email>
<webpage>
</webpage>
<job-title>
</job-title>
<address>
</address>
</role>
</contact>
<document url="" type="">
</document>
</content>
<display>
<erasure type="" color="">
<loading type="">
<present-style type="">
</display>
</chamber>
A documents authored in the markup language described in below is typically referred to as a chamber document. All elements in a chamber document reside in the namespace:
http://www.moseycode.com/SCHEMA/chamber
At present this is a purely symbolic URL. In what follows, the namespace will be implicit in the stated element names. Though all elements reside in this namespace, no attributes names are namespaced.
The root element of all chamber documents is chamber. This
element may contain at most one of any of the following elements in any order:
authorshipdataflavorscontentdisplayThe contents of these basic elements is detailed in the sections below.
authorshipIn general, all of the information in this section of the document is at the complete discretion of the author. All of the information is optional and need only be as accurate as the author wishes it to be.
The authorship element may contain at most one of each of the following elements in any order:
nametitlecreatedtimestamp attribute provides a machine interpretable timestamp for
the date. There is no requirement that these two representations are consistent
and they are both optional. modifiedtimestamp attribute provides a machine interpretable timestamp for
the date. There is no requirement that these two representations are consistent
and they are both optional. locationlat attribute in degrees in the range -90 to +90 (an optional S or N suffix may be used).
The longitude is specified by the lon attribute in degrees in the range -180 to +180 (an optional E or W suffix may be used).
The elevation is specified by the ele attribute in meters above sea level.
commentsdataThe data element defines how the data associated with the portal
modifies it. The element may have a revision attribute that specifies
the URL of a second chamber document that augments the first. The augmenting
document is not permitted to have a data element.
The data element contains two types of element, tokens
which are grouped into a tokens element, and lookups which
are grouped into a lookups element.
Each token converts a subset of the portal's data bits into a number. They are declared
using a token element. The attributes of which are:
Lookups convert portal data into textual data by performing requesting data
from a remote server. A number of lookups are possible, but at present only one
is supported: the url element converts the data associated with the
portal into a URL obtained from the Moseycode lookup service (or an equivalently functioning service).
The url element supports the following attributes:
flavorsThe flavors element contains the flavors of interaction that
the portal supports; these are contained as sub-elements, the order of these
elements is potentially significant since some devices may not be capable of
supporting multiple flavors and will only support the first declared flavor
whereas other devices may choose to promote the first flavor. The possible
flavor elements are:
contentThe content element contains the references to the resources that support the portal's operation. In the case of contacts and documents, it may contain the resources directly. There are three types of resources, that are supported by the following elements:
All of the content elements listed above may feature a rel attribute
which specifies how the content relates to the barcode. The valid relationships
for an element vary depending on the type of the element. More details about each
content type are given below.
mediaA media element can have one of the following relationships to the portal:
logo – provides a general purpose image (or other media) for the barcode.download – provides a resource intended for download, not display.author – provides a media representation of the author.background – provides imagery to be displayed in the background (or in the case of audio, played in the background).present – provides media for presentation to the user.Each media element may contain a title element which provides
a short title for the media, and a description element which provides longer
description. The element also contains one or more resource elements. These
are links to resources that can be loaded over the network. In the case where
more than one may be listed, the device will pick just one resource to load for
that media. The choice will be based on the capabilities of the device; a memory
constrained device might choose a smaller resource; a device on which audio has
been muted might choose an audio resource to replace an image resource. The available
resource elements are:
imagevideoaudiomodelEach type of resource element can support a number of the following attributes. All of which are optional with the exception of the url.
urlwidthheightsizedocumentThe document element has an optional url attribute that links
to the location of a document on the network. It also has an optional type
attribute that specifies the content type of the document. In the absence of the document
url (or if document is being presented and cannot be loaded), the textual content of the
document element is used as the content of the document.
A document element can have one of the following relationships to the portal:
direct – specifies a network location to which the user should be directed.present – specifies that the document should be directly displayed to the user. Not fully supported at present.contactA contact element stores the contact details of an individual.
The element has a name attribute that gives the name of the contact.
All other details are separated into role elements contained within
the contact element. These role elements have an attribute
called organization that records an organization with which the person
is associated. Absence of an organization is taken to imply that the contact details
are personal 'home' details. Each role can contain at most one of following elements:
fixed-telmobile-telemailwebpagejob-titleaddressA contact element can have one of the following relationships to the portal:
author – indicates that the contact details relate to the author of the portal.communicate – specifies that the user should be given the option of making direct contact.display