Mobile Web Best Practices: mobileOK Vocabulary

WG Editor's Draft 18 October 2007

This version
Latest version
Phil Archer, Family Online Safety Institute

This document is also available as a non-normative RDF vocabulary.


This is the namespace document for the mobileOK vocabulary. It provides a formal definition for each of the two POWDER Descriptors classes: mobileOK Basic and mobileOK Pro. An example of how to claim mobileOK conformance using this vocabulary is also provided.

Status of this document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.

This document was developed by the Mobile Web Best Practices Working Group. Please send comments to public-bpwg@w3.org (with public archive).

Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

Table of Contents

1 Introduction
1.1 Namespaces
2 The mobileOK Basic and mobileOK Pro Classes
3 Claiming mobileOK conformance (informative)
4 Acknowledgements
5 References
Appendix: The mobileOK RDF Vocabulary

1 Introduction

This is the namespace document for the mobileOK vocabulary, that is, the vocabulary that can be used to claim that a resource or a group of resources has passed all the tests that define either of the two levels of mobileOK conformance. Those tests are described separately [mobileOK Basic, mobileOK Pro]. Claims of mobileOK conformance SHOULD be made using the Protocol for Web Description Resources [POWDER]. An example of this is provided as a non-normative section of this document.

1.1 Namespaces

The following prefixes and namespaces are used in this document


In this document, the words MUST, MUST NOT, SHOULD, SHOULD NOT and MAY are to be interpreted as described in RFC2119.

2 The mobileOK Basic and mobileOK Pro Classes

Type: wdr:Descriptors

ID: mok:Basic

See also W3C mobileOK Basic Tests 1.0

See also Mobile Web Best Practices 1.0

This class represents the claim that any resources that it describes have passed all the mobileOK Basic Tests and that the content provider has taken basic steps to provide a functional experience for mobile users. As is emphasized in the mobile OK test documentation, this is not an assessment of usability, rather, it is an assertion that the content can be provided in a way that is likely to achieve a basic level of interoperability with mobile devices.

Type: wdr:Descriptors

ID: mok:Basic

Sub class of: mok:Basic

See also W3C mobileOK Pro Tests 1.0

See also Mobile Web Best Practices 1.0

This class represents the claim that any resources that it describes have passed all the mobileOK Pro Tests and therefore that the content provider has taken significant steps to provide a functional experience for mobile users. It is a sub class of mok:Basic since any resource that conforms to mobileOK Pro MUST also conform to mobileOK Basic.

3 Claiming mobileOK conformance (informative)

3.1 Creating a Description Resource

Claims of mobileOK conformance are made using the Protocol for Web Description Resources [POWDER]. A typical example of a Description Resource in which mobileOK Basic conformance is claimed by the content provider is shown in Example 1 below.

Example 1: Typical example of a Description Resource claiming mobileOK Basic conformance across a Web site (Graphed)

 1 <?xml version="1.0"?>
 2 <rdf:RDF
 3   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 4   xmlns:dc="http://purl.org/dc/elements/1.1/"
 5   xmlns:foaf="http://xmlns.com/foaf/0.1/"
 6   xmlns:dcterms="http://purl.org/dc/terms/"
 7   xmlns:wdr="http://www.w3.org/2007/05/powder#">

 8   <wdr:DR rdf:about="http://www.example.org/mokbasic.rdf">

 9     <foaf:maker>
10       <foaf:Organization>
11         <foaf:name>The Exemplary Mobile Content Company</foaf:name>
12         <foaf:homepage rdf:resource="http://www.example.org/" />
13       </foaf:Organization>
14     </foaf:maker>

15     <dcterms:issued>2007-07-17</dcterms:issued>
16     <wdr:validUntil>2008-05-21</wdr:validUntil> 

17     <wdr:hasScope>
18       <wdr:ResourceSet>
19         <wdr:includeHosts>example.org</wdr:includeHosts>
20       </wdr:ResourceSet>
21     </wdr:hasScope>

22     <wdr:hasDescriptors rdf:resource="http://www.w3.org/2007/07/mobileOK#Basic" />
23     <dc:description>example.org conforms to the mobileOK Basic standard, meaning that basic steps have been taken to provide a functional user experience for users of basic mobile devices</dc:description>
24     <foaf:depiction rdf:resource="http://www.w3.org/ICONS/mobileOKPro.png" />

25   </wdr:DR>

26 </rdf:RDF>

In natural language, Example 1 states that on 17th October 2007, the Exemplary Mobile Content Company claimed that all content on the example.org domain, and all its subdomains, conformed to mobileOK Basic. It will stand by that claim until 21st May 2008.

A more machine-oriented interpretation is that the Description Resource (DR) spans lines 8 to 25 and has three essential components:

In more detail:

Lines 9 to 14 identify who is making the claim of mobileOK conformance. In this case, it's the organization providing the content itself that is making the claim. More precisely, it's the organization called 'The Exemplary Mobile Content Company' which has its homepage at http://www.example.org. Use of foaf:maker is mandatory and this has a defined range of foaf:Agent of which foaf:Organization and foaf:Person are sub classes. POWDER does not prescribe what information a Description Resource publisher must give about themselves but the intention is that they should be unambiguously identified.

Lines 15 and 16 provide information about when the DR was created and the date after which the claim of mobileOK conformance will expire.

Lines 17 - 21 define the scope of the Description Resource - that is, what is being described. In this case, the scope is defined as 'all resources on example.org and any of its subdomains.' The definition of the group of resources to which a DR applies can be simple, as in this case, but much more detailed and, if necessary, sophisticated Resource Set definitions are possible. Although part of the Protocol for Web Description Resources, this is the subject of a separate Recommendation [GROUP].

Line 22 provides the actual description. In this case, the only description is that example.org conforms to mobileOK Basic and therefore a link to the mok:Basic defined above is sufficient.

Lines 23 and 24 provide text and a link to an image that may be displayed in user agents where appropriate.

The above example assumes the structure we're currently working with. However, there is a good chance - I'd say 70% - that what for this group is a minor change will be made. If so, it will be done at or before the Boston meetings.

3.2 Linking content to the Description Resource

Description Resources exist in their own right and, as shown above, are explicit about what they describe. Therefore, linkage from a resource to a DR that describes it is not always necessary if the DR is discoverable by some other means. For example, an organization may publish a substantial number of DRs and become a source of data about mobileOK content. The creators of the actual mobileOK content may or may not have a relationship with the DR publisher.

However, if a content creator has taken the trouble to follow Mobile Web Best Practice and publish content that is mobileOK, it is clearly in their interests to advertise the fact in a machine processable way. Other methods are discussed in the POWDER documentation but the simplest way is to include a link element in HTML documents thus:

Example 2: Using an HTML link element to relate to a DR

   <head profile="http://www.w3.org/2007/10/powder-profile">
      <link rel="powder" href="http://www.example.org/mokbasic.rdf" />
      <title>Welcome to example.org </title>
      <p>Today's content is ....</p>

Note that the relationship type 'powder' is defined in the profile document at http://www.w3.org/2007/10/powder-profile.

The profile document should be in place v. soon.

3.3 Further Options with POWDER

The POWDER documentation provides more information than is appropriate here on issues such as:

The reader is invited to consult the POWDER Primer for a full overview and pointers to more detailed information.

4 Acknowledgements

This is a joint effort by the Mobile Web Best Practices and POWDER Working Groups and thanks is due to members of both.

5 References

mobileOK Basic
W3C mobileOK Basic Tests 1.0
mobileOK Pro
W3C mobileOK Pro Tests 1.0 TBA
Protocol for Web Description Resources (POWDER): Description Resources, K Smith, P Archer, A Perego.
Protocol for Web Description Resources (POWDER): Grouping of Resources, P Archer, A Perego.
Protocol for Web Description Resources (POWDER): Primer, TBA
Key words for use in RFCs to Indicate Requirement Levels, S. Bradner. IETF, March 1997.

Appendix: The mobileOK RDF vocabulary

The RDF vocabulary is serialized in XML below and is also available as a graph.

<?xml version="1.0"?>
  <!ENTITY mobileOK "http://www.w3.org/2007/07/mobileOK#">
  <!ENTITY xsd      "http://www.w3.org/2001/XMLSchema#">
  <!ENTITY bp       "http://www.w3.org/TR/mobile-bp/">
  <!ENTITY basicTests "http://www.w3.org/TR/mobileOK-basic10-tests/">
  <!ENTITY proTests "http://www.w3.org/TR/mobileOK-pro10-tests/">

  <rdf:Description rdf:about="&mobileOK;">
    <dc:creator>W3C Mobile Web Best Practices Working Group</dc:creator>
    <dc:description rdf:resource="&bp;" />

  <wdr:Descriptors rdf:about="&mobileOK;Basic">
    <rdfs:seeAlso rdf:resource="&basicTests;" />
    <rdfs:seeAlso rdf:resource="&bp;" />

  <wdr:Descriptors rdf:about="&mobileOK;Pro">
    <rdfs:subClassOf rdfs:resource="&mobileOK;Basic" />
    <rdfs:seeAlso rdf:resource="&proTests;" />
    <rdfs:seeAlso rdf:resource="&bp;" />