Presentation is loading. Please wait.

Presentation is loading. Please wait.

WS-Topics Peter Niblett OASIS TC Face/Face meeting

Similar presentations


Presentation on theme: "WS-Topics Peter Niblett OASIS TC Face/Face meeting"— Presentation transcript:

1 WS-Topics Peter Niblett OASIS TC Face/Face meeting
11/27/2018

2 Information space taxonomy
WS-Topics Information space taxonomy Mechanism to organize and categorize things which can subscribed to Topics have metadata, and a naming scheme. They are grouped into TopicSpaces Three TopicExpressions used to identify topic(s) Simple ConcreteTopicPath FullTopicPath XML document for describing topic metadata 11/27/2018

3 What are topics for? Used by a subscriber to identify the subject area it wishes to cover in a subscription A Producer/Broker delivers only delivers if notification if the list of topics associated with the subscription intersects with the list of topics associated with the message Used to identify the set of subjects that a given Producer/Broker deals in Useful information for a prospective publisher or subscriber A producer may support only one topic Can be associated with metadata, e.g. Notification message schema Semantic information Could be used as part of an access control scheme 11/27/2018

4 Topic Naming In order to avoid name collisions between different users, each Topic is assigned to an XML Namespace. The set of Topics in a given Namespace is called a TopicSpace. A producer can use its own unique TopicSpace (essentially its topic names are scoped to it), or it can share a TopicSpace with other producers E.g. a TopicSpace containing topics specific to a particular application domain A TopicSpace could be defined by a third party, such as a standards organisation. Topics can be named using simple QNames, or can have structured (hierarchical) names. TopicSpace:TopicName TopicSpace:Namepart1/Namepart2 11/27/2018

5 Topic Hierarchies tns:T1 tns:T4 T2 T3 T5 T6 Topic Space: “ Topics can be organised into hierarchies – each topic can have 0+ child topics Child topic names must be unique within each parent, to allow path-like names Reasons for a hierarchy Manageability (e.g. access control) Simplifies multiple-topic selection (wildcarding) Note: A child topic is a distinct topic from its parent subscribing to a parent does not imply subscribing to its children 11/27/2018

6 Topic Sets and Topic Spaces
Producer or Broker Topics property Topic Set { ts1:T1, ts1:T1/T2, ts2:T4/T6 } TopicSpace 2 T4 T5 T6 11/27/2018

7 ConcreteTopicPathExpression
Topic Expressions Simple QName e.g. tns:MyTopic Root topics only ConcreteTopicPathExpression Path expression with a Namespace e.g. tns:/t1/t2/t3 FullTopicPathExpression Path Expression with XPATH wildcarding, e.g. tns:t1/* all children of t1 tns:t1//* all descendents of t1 tns:t1//. t1 + all its descendents 11/27/2018

8 Alias Topics tns:T1 T2 T3 tns:T4 T5 T6 is alias for Topic Space: “ The Topic Space document includes the capability to define Topic aliases This formalises the equivalence of two different topic expressions - in this example subscribing to T4/T6 is equivalent to subscribing to T1/T3 A NotificationBroker is free to perform its own topic transforms, even if the Source and target of the transforms are not formal aliases. 11/27/2018

9 TopicSpace document The TopicSpace document is a mechanism for describing topic metadata Topic names, hierarchy and aliases Message Schemas associated with the Topics Open/Closed content model A producer/broker is required to conform to the definitions in the TopicSpace documents that define its Topics WS-Notification does not specify the way that a producer/broker obtains this information It is not a ResourceProperty of a producer or broker TopicSpace1 T1 T2 T3 11/27/2018

10 Topic Space document <?xml version="1.0" encoding="UTF-8"?>
<wstop:topicSpace name="TopicSpaceExample1" targetNamespace=" xmlns:tns=" xmlns:xyz=" xmlns:wstop=" > <wstop:topic name="t1"> <wstop:topic name="t2" messageTypes="xyz:m1 tns:m2"/> <wstop:topic name="t3" messageTypes="xyz:m3"/> </wstop:topic> <wstop:topic name="t4"> <wstop:topic name="t5" messageTypes="tns:m3"/> <wstop:topic name="t6"> <wstop:AliasRef dialect=“…/concreteTopicPath" > tns:t1/t3 </wstop:AliasRef> </wstop:topicSpace> 11/27/2018

11 A Topic’s metadata can describe its content as open
Open content A Topic’s metadata can describe its content as open This means that users may, if they wish, dynamically define additional child topics of that topic For example a broker may accept publications on new child topics (but is not required to) There is no formal metadata for such topics Ad-hoc topic space This is a special TopicSpace whose content is entirely open 11/27/2018

12 Topics Summary Method of categorising Notifications
Each Topic is associated with one or more MessageSchemas Grouped into namespaces which have URIs Topics may be defined by an individual publisher, or by a 3rd party (e.g. a standards organisation) Allow a potential subscriber to understand the notification capabilities of a Publisher/Broker that is has just discovered. Facilitate interoperation with Topic-based IT pub/sub systems (e.g. JMS) Convenient attachment point for access control Subscriber provides a TopicPathExpression to indicate Topic(s) of interest Matching on a Topic name is usually more efficient than matching against general message content. Simple Topic Path Expression is just a single Topic Name A simple NotificationSource may support only one Topic More complex NotificationSources may permit wildcard expressions 11/27/2018


Download ppt "WS-Topics Peter Niblett OASIS TC Face/Face meeting"

Similar presentations


Ads by Google