[standards-jig] JEP-0060 PubSub: 5.1.1 Create new node

Bob Wyman bobwyman at earthlink.net
Fri Feb 14 00:07:36 UTC 2003


The JEP says:
> Implementations of pubsub SHOULD (and most will) allow users and 
> services to create new nodes...
    I suggest that the use of "SHOULD" in this context is inappropriate.
While the author (and I) may believe that the most common case is one
that allows users to create new nodes, there are many instances where
supporting user creation of nodes is not appropriate. 

On node creation:
    It appears that the only information that can be communicated during
a request to create a node is the node-id. However, the creation of a
properly configured node can involve much more. Completing the
configuration of a node (i.e. specifying things like max_payload_size,
subscription_model, pubsub_persist_items, etc) requires use of
configuration forms. Given that creating and configuring a node is a two
step process, this means that there exists a period of time during which
the node exists in an "unconfigured" state. Depending on network
bandwidth, latency, or reliability, the period during which the node is
unconfigured could be arbitrarily long. During the period that a node is
incompletely configured, it is possible that some user might discover
it, subscribe to it, be confused by it, etc.  Not good.
    I suggest that you allow the node creator to pass configuration
information in the base request to create the node. This will allow the
creating/configuring process to become atomic and will simplify this
part of node maintenance.  A combined "create & configure" packet might
then look like the following:

<iq type="set" from="pgm at jabber.org" to="pubsub.jabber.org"
id="create1">
    <pubsub xmlns="http://jabber.org/protocol/pubsub">
        <create node="generic/pgm-mp3-player"/>
        <configure node="generic/pgm-mp3-player">
           <x xmlns="jabber:x:data" type="submit">
             <field
var="pubsub_deliver_payloads"><value>1</value></field>
             <field var="pubsub_persist_items"><value>1</value></field>
             <field var="description"><value>An MP3 Player
Node</value></field>
           </x>
        </configure>
    </pubsub>
</iq>

	I would very much like to be able to define attributes like
"Description", "PICS rating", "P3P information" for a node, etc. and
suggest that a basic set of these attributes be defined and registered
in JEP-0060's first release.

		bob wyman




More information about the Standards mailing list