diff --git a/inbox/pubsub-filter.xml b/inbox/pubsub-filter.xml new file mode 100644 index 00000000..acc4a494 --- /dev/null +++ b/inbox/pubsub-filter.xml @@ -0,0 +1,147 @@ + + +%ents; +]> + + +
+ PubSub Type Filtering + This specification provides a way to filter PubSub nodes in a disco query. + &LEGALNOTICE; + xxxx + ProtoXEP + Standards Track + Standards + Council + + XEP-0004 + XEP-0030 + XEP-0060 + + + + NOT_YET_ASSIGNED + + Timothée + Jaussoin + edhelas@movim.eu + edhelas@movim.eu + + + Maxime + Buquet + pep@bouah.net + pep@bouah.net + + + 0.0.1 + 2022-02-01 + edhelas, pep +

First draft.

+
+
+ + + +

Implementations have been able to declare a pubsub#type attribute on PubSub nodes for about as long as &xep0060; has existed. This attribute doesn’t seem to be widely used in the community though, maybe due to the vagueness of its description, that has recently changed, or the lack of features associated with it.

+ +

This specification provides a way for implementations to allow filtering on this attribute when discovering items on a PubSub service.

+ +

Filtering is particularly useful for example combined with &xep0277; and comment nodes that are created on the same service. When listing content nodes of a service, one may want to filter out comment nodes.

+ +
+ + + + + + + + +

A service implementing this specification MUST advertize through &xep0030; a urn:xmpp:pubsub-filter:0 feature.

+ +
+ + +

While requesting disco#items on a PubSub service, an entity might want to only get nodes of certain pubsub#type. To do so, it may add a filter child of namespace urn:xmpp:pubsub-filter:0 to the query element, containing a &xep0004; form with FORM_TYPE set to urn:xmpp:pubsub-filter:0 and an included-types or excluded-types list-multi type field containing the various types it wants to filter.

+ +

When included-types is specified, a PubSub service MUST return nodes of matching pubsub#type in its response.

+ +

When excluded-types is specified, a PubSub service MUST return every node but those of matching pubsub#types in its response.

+ +

Both included and excluded fields MAY contain an empty value to designate nodes with an empty pubsub#type.

+ + + + + + urn:xmpp:pubsub-filter:0 + + + urn:xmpp:microblog:0 + + + + + +]]> + +

If both the included and excluded fields are specified, a service MUST return an error of type modify containing a bad-request element in the urn:ietf:params:xml:ns:xmpp-stanzas namespace.

+ + + + + +]]> + +
+
+ + +

None.

+ +
+ + +

None.

+ +
+ + + + + + + + The protocol documented by this schema is defined in + XEP-XXXX: http://xmpp.org/extensions/xep-xxxx.html + + + + + + + + + + +]]> + + + +