<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE lire:dlf-schema PUBLIC
  "-//LogReport.ORG//DTD Lire DLF Schema Markup Language V1.1//EN"
  "http://www.logreport.org/LDSML/1.1/ldsml.dtd">
<lire:dlf-schema superservice="msgstore" timestamp="time"
 xmlns:lire="http://www.logreport.org/LDSML/">

<!-- $Id: msgstore.xml,v 1.4 2006/07/23 13:16:35 vanbaal Exp $ -->

<!--
Copyright (C) 2002 Arnaud Taddei <arnaud.taddei@sun.com>
		   Stichting LogReport Foundation <logreport@LogReport.org>

This file is part of Lire.

Lire is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program (see COPYING); if not, check with
http://www.gnu.org/copyleft/gpl.html.
-->

 <lire:title>DLF Schema for Message Store service</lire:title>

 <lire:description>
  <para>Each DLF records in the <structname>msgstore</structname>
   schema represents one command on the server. Not all fields will be
   meaningful for every type of action.
  </para>
 </lire:description>

 <lire:field name="time" type="timestamp" label="Timestamp">
  <lire:description>
   <para>The timestamp of the event.</para>
  </lire:description>
 </lire:field>

 <lire:field name="localserver" type="hostname" label="Server">
  <lire:description>
   <para>The hostname on which the message store is running. In the
    case of message store proxies, this will be the target server.
   </para>
  </lire:description>
 </lire:field>

 <lire:field name="client_name" type="hostname" label="Client Host">
  <lire:description>
   <para>The host name of the client related to the event.</para>
  </lire:description>
 </lire:field>

 <lire:field name="client_ip" type="ip" label="Client IP">
  <lire:description>
   <para>The ip address of the client related to the event.</para>
  </lire:description>
 </lire:field>

 <lire:field name="user" type="string" label="User">
  <lire:description>
   <para>The user name of the authenticated user associated with the
    connection. 
   </para>
  </lire:description>
 </lire:field>

 <lire:field name="protocol" type="string" label="Protocol">
  <lire:description>
   <para>The protocol used to access the message store. This will be
    usually one of <constant>pop</constant> or
    <constant>imap</constant>.
   </para>
  </lire:description>
 </lire:field>

 <lire:field name="prot_cmd" type="string" label="Command">
  <lire:description>
   <para>The command executed by the client. Defined commands are
    <constant>login</constant>, <constant>badlogin</constant>,
    <constant>select</constant>, <constant>create</constant>, etc.</para>
  </lire:description>
 </lire:field>

 <lire:field name="session" type="string" label="Session ID">
  <lire:description>
   <para>A session identifier used to relate the different records to
    one sesssion. Session identifier can be reused. 
   </para>
  </lire:description>
 </lire:field>


 <lire:field name="messages_downloaded" type="int" label="Msg Downloaded">
  <lire:description>
   <para>Number of messages downloaded.</para>
  </lire:description>
 </lire:field>

 <lire:field name="bytes_downloaded" type="bytes" label="Bytes Downloaded">
  <lire:description>
   <para>Number of bytes downloaded messages.</para>
  </lire:description>
 </lire:field>

 <lire:field name="stored_messages" type="int" label="Stored Msg">
  <lire:description>
   <para>Number of messages stored on the server.</para>
  </lire:description>
 </lire:field>

 <lire:field name="stored_size" type="bytes" label="Stored Msg's Size">
  <lire:description>
   <para>Size of the messages stored on the server.</para>
  </lire:description>
 </lire:field>

 <lire:field name="session_duration" type="duration" label="Duration">
  <lire:description>
   <para>The length of the session. 
    <note>
     <para>FIXME: When this field should be defined. On all events or
      only on the quit event?
     </para>
    </note>
   </para>
  </lire:description>
 </lire:field>

 <lire:field name="status" type="string" label="Status">
  <lire:description>
   <para>The status of the event. This includes the error messages or
    other success information (like an MMP redirection).
   </para>
  </lire:description>
 </lire:field>

</lire:dlf-schema>

