Proposal for GlassTop

This is a proposal for GlassTop, a transparency mechanism for the open
development and adoption of standards.  Comments are welcome. ^[1]

    1. Scope
    2. Use Cases
    3. Structure
    4. Function
    5. Estimate
    6. Notes and References
    7. Glossary


1. SCOPE
========

    GlassTop is a transparency mechanism for the open development and
    adoption of standards.  It implements a clearing house for the
    proposal of new standards, with facilities to track the levels of
    commitment, development and compliance among stakeholders.

    GlassTop is not:

        * Not a process for standards development.

        * Not a collaborative platform.

        * Not a standards organization.


2. USE CASES
============

    1. A client (C) has an idea for a standard S.  It is potentially
       useful to other clients.  So C posts the standard under
       GlassTop, and asserts two facts:

         - S is proposed

         - C supports S

    2. A second client (D) is looking through GlassTop, and learns of
       S.  S looks like a good idea, so D asserts:

         - D supports S

       Meanwhile, C and D are talking together, and making
       improvements to S.

    3. A third client (E) learns of S.  S looks like a *bad* idea for
       E, so E asserts:

         - E does *not* support S

       Meanwhile, E is talking with C and D, and explaining why it's a
       bad idea.

    *. And so on... for all clients, all standards, and all modes of
       support.


3. STRUCTURE
============

    GlassTop is deployed in subnets.  A subnet is the formal model of
    a particular domain, as shown in Table 1 ^[2]:


        TABLE 1.  Modelling.

        --------------------------------------------------------------
        Formal Models    Actual Objects  Examples
        -------------    --------------  --------

        subnet           domain          social software

        standards nodes  standards       standards for social software

        client nodes     stakeholders    projects, business firms and
                                         other stakeholders in the
                                         domain of social software
        --------------------------------------------------------------


    A subnet is an open database, with indeces and records distributed
    across central hubs and peripheral nodes (figure 1).  The central
    hubs are a standards hub and a client hub, both maintained in a
    public Wiki:

      SH.  Standards hub.  Contains an index of standards nodes (S),
           and access URLs.

      CH.  Client hub.  Contains an index of client nodes (S), and
           access URLs.



                 S

                   \            C
                    \
                     \        /
                             /
              S -----  SH   /

                     /   CH  ----- C
                    /
                   /        \
                             \
                 S            \

                                C

      FIG 1.  A subnet, showing central hubs
              (SH and CH), and peripheral standards
              and client nodes (S and C).



    The peripheral nodes are of two types: standards nodes and client
    nodes:

       S.  Standards nodes, one per standard.  Each node includes one
           or more documents that specify the standard.  The standard
           is maintained exclusively by its provider, at the
           provider's own location.

          (Note: S contains no GlassTop-specific content.  GlassTop
           may therefore cover all standards, regardless of provider,
           location, age and format.)

       C.  Client nodes, one per client.  Each node will publish a
           short-index of standards of interest.  For each standard of
           interest, the client will record the levels of commitment,
           compliance and other supports.

           The index is maintained exclusively by the client, at the
           client's own location.


4. FUNCTION
===========

    Clients and other users may employ a query toolset.  A query
    toolset is a set of scripts for executing queries across a subnet.
    Example queries are:

      * What new standards have been proposed in the last 2 months?

      * Which clients are currently agreeing, in principle, to
        standard S?

      * Which clients are actually compliant with S?

      * Which new clients have joined, in the last three weeks?

      * What standards are supported by client C?


5. ESTIMATE
===========

    An alpha prototype will take roughly 2 man-weeks.  The tasks are:

      1. XML and RDF design.  We need a designer to spec the details
         of data storage for the central and client nodes.  The
         designer will also spec the requirements for the central
         Wiki.

      2. Scripting of the query toolset.  We need a programmer to code
         the tools for assembling the data records from client nodes,
         and caching them for later queries.  The programmer will also
         code the UI (command line) and the query engine. ^[3]

      3. Management and/or promotion.  We may need a project manager
         to shepherd the development process, and bring in resources.
         Resources will include a few pages on a neutral Wiki (per 1).
         We may also need a promotion lift, to get off the ground.

    We aleady have one developer (myself).  We need another for 1 or
    2, and a manager/promoter for 3.  Can anyone commit?  ^[1]


6. NOTES AND REFERENCES
=======================

  [1] GlassTop was first mooted by Michael Allan in the post
      "GoogleVotes monopoly vs. JoeVotes ecosystem":
      http://metagovernment.org/pipermail/start_metagovernment.org/2009-February/001197.html

      A complete proposal was cross-posted to:
      http://groups.google.com/group/changecamp/browse_thread/thread/87914c79b38991e3
      http://groups.dowire.org/groups/consult/messages/topic/6SjazeOdWzKisKY4bTgzsw

      Comments are welcome, and may be posted to mailing lists above,
      or to Michael Allan <mike@reluk.ca>

  [2] Where two domains overlap, their subnets may also overlap. In
      that case, some of the peripheral nodes of one would be included
      in the other.

      Where two domains nest, their subnets may also nest.  In that
      case, all of the peripheral nodes of one would be included in
      the other.

     (In this early proposal, however, we assume a single subnet.)

  [3] My thinking now is, there won't be any custom software at the
      user end.  The query toolset will be off-shelf - user's choice.
      This may require some scripting at the back end, where the
      indeces on the central Wiki are converted to RDF, readable by
      the tool (or we just use a semantic Wiki, for that).


7. GLOSSARY
===========

    central hub

      - A node maintained on a central Wiki, and publishing an open
        index of periphal nodes.

      - The client hub, or the standards hub.

    central Wiki

      - The Wiki that hosts the central hubs.

    client hub

      - The central hub that publishes the index of client nodes.

    client node

      - A peripheral node corresponding to an actual project, business
        firm, organization or other stakeholder.

    peripheral node

      - A node indexed by a central hub.

      - A client node, or a standards node.

    query toolset

      - A scripted toolset for executing queries across a subnet. ^[3]

    standards hub

      - The central hub that publishes the index of standards nodes.

    standards node

      - A peripheral node corresponding to an actual, proposed
        standard.

    subnet

      - An interlinked network of central and peripheral nodes,
        corresponding to a particular domain.

    support

      - (of a client for a standard) Such as agreement in principle
        with the standard, participation in its development, or
        compliance.


                                        Michael Allan <mike@reluk.ca>