2.2.14 Bookmark

The bookmark type specifies the cursor position in the event query or subscription result set. Note that bookmarks are passed from the client to the server by using the XML representation that is specified in this section. In contrast, the server passes a binary representation of bookmarks to the client as specified in section 2.2.16.

The bookmark type is specified to be well-formed XML fragments as specified in [XML10] and that conforms to the following XML schema as specified in [XMLSCHEMA2/2].

 <?xml version="1.0" encoding="UTF-8"?>
 <xs:schema elementFormDefault="qualified" 
 xmlns:xs="http://www.w3.org/2001/XMLSchema">
 <xs:complexType name="BookmarkType">
 <xs:attribute name="Channel" type="xs:anyURI" use="required"/>
 <xs:attribute name="RecordId" type="xs:long" use="required"/>
 <xs:attribute name="IsCurrent" type="xs:boolean" use="optional" 
 default="false"/>
 </xs:complexType>
 <xs:complexType name="BookmarkListType">
 <xs:sequence>
 <xs:element name="Bookmark" type="BookmarkType" 
 maxOccurs="unbounded"/>
 </xs:sequence>
 </xs:complexType>
 <xs:element name="BookmarkList" type="BookmarkListType"/>
 </xs:schema>
  
  
 <!-- Example bookmark for the Application Log: -->
  
 <BookmarkList>
    <Bookmark Channel="Application" RecordId="2004" IsCurrent="True"/>
 </BookmarkList>
           

Elements

BookmarkList

The top-level element that contains a list of bookmarks for the individual event logs.

Bookmark

Defines the cursor position in an event log specified by the Channel attribute.

Attributes

Channel

The name of the channel. If the channel contains events from a container, then the container identifier will be appended to the name of the channel.

RecordId

The logical event record number in the event log specified by the Channel attribute.

IsCurrent

Specifies if the event at the cursor position corresponds to the channel corresponding to the element. A subscription or query can apply to several channels. In this case, there is a Bookmark element for each channel. However, only one channel can be the one with the last event, and its IsCurrent attribute MUST be set to true.