Slots

The Slot object is an incredibly useful mechanism that allows metadata extensibility at both RegistryPackage and ExtrinsicObject (Document) level. There are several reserved slots but beyond these, there is no limit to the number of slots that you can define. Any custom slots need to be documented within the associated registry package or document classification.

A Slot must have a unique name and can have 1..n values of type xsd:string, reflected by the ValueList element.

<ns1:Slot name="urn:refnet:timestamp" xmlns:ns1="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
   <ns1:ValueList>
      <ns1:Value>2009-01-20T13:17:41.247+09:00</ns1:Value>
   </ns1:ValueList>
</ns1:Slot>

An example of a custom slot with multiple values.

<ns1:Slot name="My-Pet-Cats" xmlns:ns1="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
   <ns1:ValueList>
      <ns1:Value>Bessie</ns1:Value>
      <ns1:Value>Snowy</ns1:Value>
      <ns1:Value>Jessie</ns1:Value>
   </ns1:ValueList>
</ns1:Slot>

Reserved Slots

There are several reserved slots and these are denoted by the refnet namespace of the Slot name.

NameDescriptionOperationOptionalityContext
urn:refnet:recipientThe user identifier (URN) of the intended message recipient.ProvideAndRegisterDocumentSetB R SubmitObjectsRequest
urn:refnet:timestampThe time that the message was received and registered by the ReferralNet service.RetrieveDocumentSet R SubmitObjectsRequest
urn:refnet:sourceThe ReferralNet user identifier of the message sender.RetrieveDocumentSet R SubmitObjectsRequest
urn:refnet:source_network The secure messaging network that the payload(s) originated from.RetrieveDocumentSet R SubmitObjectsRequest
urn:refnet:source_name This is the display name of the ultimate sender. (e.g. Dr Michelle Depasquale)ProvideAndRegisterDocumentSetB O SubmitObjectsRequest
urn:refnet:in_reply_toThe UID of the message that is being replied to.ProvideAndRegisterDocumentSetB O SubmitObjectsRequest
urn:refnet:encapsulation_schemeThe payload encapsulation scheme employed, default is Enveloped Signed CMS/PKS#7ProvideAndRegisterDocumentSetB O ExtrinsicObject
urn:refnet:sending_applicationUsed to supply an identifier of the sending application.ProvideAndRegisterDocumentSetB O ExtrinsicObject
NameDescriptionOperationOptionalityContext
urn:refnet:source_uid This is the unique message identifier from the 3rd party network, this is used for correlation purposes.ProvideAndRegisterDocumentSetB R SubmitObjectsRequest

3rd Party Messaging Provider Interoperability

If connecting as a 3rd party messaging provider, three additional reserved slots and their associated values are required;

  1. urn:refnet:source
  2. urn:refnet:source_name
  3. urn:refnet:source_uid

Sample c# code

 // if you are connecting as a 3rd party network for interop, you need to provide additional slots.
 Messaging.SlotType1 sourceUserIdSlot = createSlot("urn:refnet:source", new string[] { "urn:sharemed:Michelle DePasquale :4649729888" });
 Messaging.SlotType1 sourceName = createSlot("urn:refnet:source_name", new string[] { "Dr Michelle Depasquale" });
 // The below slot value should represent the unique message identifier (UID) of the originating network, this is used for correlation between both parties.
 Messaging.SlotType1 sourceUID = createSlot("urn:refnet:source_uid", new string[] { System.Guid.NewGuid().ToString() });
 
dev/slot.txt · Last modified: 2009/10/12 02:23 by timc