UserPreferences

UseElementsForAppCollectionTitles


Abstract

Status

Rationale

allow i18n of workspace and collection titles

Proposal

1. Replace in 09

7.2.2.1 The "title" Attribute

The app:workspace element MUST contain a "title" attribute, 
which gives a human-readable name for the workspace. 
This attribute is Language-Sensitive.
7.2.3.1 The "title" Attribute

The app:collection element MUST contain a "title" attribute, 
whose value gives a human-readable name for the collection. 
This attribute is Language-Sensitive.

with

7.2.2.1 The "app:title" Element

The app:workspace element MUST contain an "app:title" element, 
which gives a human-readable name for the workspace. 
This element is Language-Sensitive.
7.2.3.1 The "app:title" Element

The app:collection element MUST contain an "app:title" element, 
which gives a human-readable name for the collection. 
This element is Language-Sensitive.

2. Update the examples and rnc, eg:

<?xml version="1.0" encoding='utf-8'?>
<service xmlns="http://purl.org/atom/app#">
  <workspace title="Main Site" > 
    <collection 
      title="My Blog Entries" 
      href="http://example.org/reilly/main" />
    <collection 
      title="Pictures" 
      href="http://example.org/reilly/pic" >
      <accept>image/*</accept>
    </collection>
  </workspace>
  <workspace title="Side Bar Blog">
    <collection title="Remaindered Links" 
      href="http://example.org/reilly/list" />
  </workspace>
</service>

would be replaced with:

<?xml version="1.0" encoding='utf-8'?>
<service xmlns="http://purl.org/atom/app#">
  <workspace> 
    <title>Main Site</title>
    <collection 
      href="http://example.org/reilly/main" >
      <title>My Blog Entries</title>
   </collection>
    <collection 
      href="http://example.org/reilly/pic" >
      <accept>image/*</accept>
      <title>Pictures</title>
    </collection>
  </workspace>
  <workspace>
    <title>Side Bar Blog</title>
    <collection 
      href="http://example.org/reilly/list" />
     <title>Remaindered Links</title>
   </collection>
  </workspace>
</service>
   appWorkspace =
      element app:workspace {
         appCommonAttributes,
         attribute title { text },
         ( appCollection+
           & extensionElement* )
      }

would be replaced by

   appWorkspace =
      element app:workspace {
         appCommonAttributes,
         ( appTitle+
           & appCollection+
           & extensionElement* )
      }
   appCollection =
      element app:collection {
         appCommonAttributes,
         attribute title { text },
         attribute href { atomUri  },
         ( appAccept?
           & extensionElement* )
      }

would be replaced by

   appCollection =
      element app:collection {
         appCommonAttributes,
         attribute href { atomUri  },
         ( appTitle+
           & appAccept?
           & extensionElement* )
      }

appTitle is defined as

   appTitle = 
     element app:title {
       attribute xml:lang { atomLanguageTag }?,
       undefinedAttribute*,
       ( text )
     }

Impacts

apps deployed against the markup defined up as far as draft09 will have to serialize/marshall the XML differently.

Notes

Idea by Elias Torres.


CategoryProposals