Jabber Glossary

by Peter Saint-Andre (stpeter@jabber.org)

A glossary of terms commonly used in the Jabber project. Last updated: 2002-01-02.

A

Agent

A Component that provides a mapping between a non-Jabber service and the Jabber system by authenticating with that remote system on behalf of a Jabber User.

AIM Transport

The AIM Transport provides a bridge between Jabber and AOL Instant Messenger (AIM), an instant messaging service offered by America Online

See Also: Transport.

API

API is an acronym for Application Programming Interface. An API is a set of routines used by an application program such as the Jabber server.

Attendee

Any Jabber User who is in a Conference Room.

Audience Member

An Attendee without Voice.

Authentication

Authentication is the process that ensures a Jabber entity is a valid user of the Jabber system or some part of that system. The Jabber Server uses three kinds of authentication: plain text passwords (deprecated), digest authentication using the SHA1 algorithm, and zero-knowledge.

Availability

An indicator of whether a Jabber User or other Jabber Entity is available for communication

See Also: Availability Type.

Availability Type

An indicator of the specific state or category of availability for communication. Traditionally in Jabber there have been several availability types: "Online", "Away", "Extended Away", "Do Not Disturb", and "Chatty". Availability Type is sometimes also referred to as 'Status'.

B

Blacklist

A list of users or Internet domains banned from accessing a Conference Room or Conference Center.

C

Chat

One-to-one communication, as opposed to many-to-many communication (i.e., Conferencing).

Component

A package of code that has a trusted relationship with the core Jabber Server and provides Jabber Entities with functionality that is not part of the core server (e.g., a Service, Agent , or Gateway).

Conference Center

A defined area (often associated with an Internet domain) that hosts Conference Rooms.

Conference Room

The setting for many-to-many communication, usually perceived as a place or room. In Jabber, a Conference Room is a Jabber ID (e.g., jdev@conference.jabber.org) to which Jabber users subscribe for the duration of their participation in the discussion.

Conferencing

Many-to-many communication among Jabber Users, as opposed to Chat, which is one-to-one communication. There are several kinds of conferencing, including text conferencing, audio conferencing, and video conferencing.

Conferencing Service

The service running on the Jabber server that supports many-to-many communication.

Conferencing Service Administrator

The administrator of the Jabber Conferencing Service.

Conferencing Service Log

Information related to overall usage and performance of the Conferencing Service component on the Jabber server.

Contact

Any Jabber User to whom one is subscribed (usually a member of a Personal Group or a Shared Group).

D

Discussion

A stream of many-to-many communication within a Conference Room. A discussion may have a Subject, but one is not required.

Discussion Log

Historical information related to messages and presence changes for a Conference Room or specific discussion within a room.

Distributed Servers

Distributed servers are a system of interlinked, but independent servers each running an instance of the software. Each server can perform all the functions of the software without reliance on other servers.

DNS

DNS is the Domain Name Service (DNS), a system for translating IP addresses into human-readable FQDN.

DTD

A DTD is a Document Type Definition, which is used in XML to define the structure of documents or data.

E

Extensible Markup Language
(XML)

The Extensible Markup Language (or XML) is a universal format for structured documents and data. The Jabber protocol is based on XML and XML Namespaces. The XML standard is being developed and maintained by the W3C.

F

Flat File

A way of storing information, such as rosters, on the file system as opposed to a database.

FQDN

See: Fully Qualified Domain Name

Fully Qualified Domain Name
(FQDN)

A fully qualified domain name consists of a host and domain name, including the top-level domain. For example, www.jabber.com is a fully qualified domain name where www is the host, jabber is the second-level domain, and .com is the top-level domain. A FQDN is used to locate a machine on a network. A Jabber Server must possess a FQDN.

G

Gateway

A server-side component that provides Jabber Users with direct access to non-Jabber messaging services. A gateway may or may not involve a mapping that enables the non-Jabber service to access all of Jabber. Agents and Transports are examples of Gateways.

Groupchat

See: Conferencing

H

Handle

See: Room Nickname

HTML

Hyper Text Markup Language, a subset of SGML. HTML is used to define the structure and layout of documents on the World Wide Web.

HTTP

Hyper Text Transfer Protocol, the most common way of retrieving World Wide Web documents. HTTP operates over TCP socket connections, usually over port 80 on web servers.

I

ICQ Transport

The ICQ Transport provides a bridge between Jabber and ICQ, an instant messaging service originally developed by Mirabilis and now offered by America Online

See Also: Transport.

IETF

See: Internet Engineering Task Force

Info/Query
(IQ)

In the Jabber protocol, Info/Query is a data structure used to obtain information about a Jabber Entity or to set information for an entity.

Internet Engineering Task Force
(IETF)

This organization develops protocols for the architecture of the Internet, mainly through working groups dedicated to particular areas of interest.

IMPP

The Instant Messaging and Presence Protocol working group of the IETF. This working group was charged with developing a common standard for instant messaging and presence over the Internet.

IQ

See: Info/Query

IRC Transport

The IRC Transport provides a bridge between Jabber and Internet Relay Chat, a free and open instant messaging service mostly used for text conferencing

See Also: Transport.

J

Jabber

Jabber is an XML-based system for the near-real-time exchange of messages and presence.

Jabber Client

A software application that enables a user to communicate with Jabber servers and thereby exchange messages and presence with other Jabber Users and Jabber Entities.

Jabber Entity

Any separate and distinct item on Jabber that has a Jabber ID. Jabber Entities include Jabber Users, Jabber Servers, and Jabber Components like Transports and Services.

Jabber Client Library

A Jabber Client Library helps programmers develop new Jabber Clients by providing functions for communicating with Jabber Servers, Transports, and Services.

Jabber Commercial Server
(JCS)

The commercial version of the Jabber Server developed by Jabber.com.

Jabber Identifier
(Jabber ID or JID)

Jabber IDs are used both externally and internally to express ownership or routing information. A Jabber ID is made up of a domain, node, and resource in the following format: user@host/resource or [node@]domain[/resource].

JabberIM

JabberIM is a Jabber Client for Windows developed by Jabber.com.

Jabber Open Server

The free, open-source Jabber Server developed by Jabber.org.

Jabber Server

The Jabber Server is the software that connects and communicates with other Jabber clients and servers. All communications for a client are directed to the server and then passed to the client. All client preferences and data are stored on the server. The commercial version of the Jabber Server is called the Jabber Commercial Server, while the open-source version of the Jabber Server is called the Jabber Open Server.

Jabber Session Manager
(JSM)

The Jabber Session Manager handles all aspects of a user session on the Jabber server, such as registration, authentication, the sending of messages and presence, and the updating of the user's Roster.

Jabber User

Any Jabber Entity that uses the Jabber system for the purpose of instant messaging.

Jabber User Directory
(JUD)

An open-source component that provides the ability to set up a Jabber-searchable database of users for a particular Jabber Server.

Jabberd

Jabberd, short for Jabber Daemon, is the main process in which a Jabber Server (or specific Transport or Service) runs. It functions as the distribution hub for the Jabber server and handles the logic for routing XML packets to various components within the server, and eventually to Jabber clients.

JID

See: Jabber Identifier

JIM

See: JabberIM

JOSL

JOSL is an acronym for Jabber Open Source License. The JOSL is a modified version of the Mozilla Public License (MPL) and has been approved by the OSI. For further information, visit http://www.jabber.com/license/index.shtml.

JPolld

JPolld is the scalable socket manager component. It manages all client socket connections and multiplexes them back to the Jabber server via a single socket connection. For scalability, JPolld instances can be installed on different physical machines from the machine hosting the main Jabberd and Jabber Session Manager.

JSM

See: Jabber Session Manager

JUD

See: Jabber User Directory

L

LDAP

Lightweight Directory Access Protocol. For more information, visit http://www.umich.edu/~dirsvcs/ldap/.

M

Message Log

The history of a Jabber user's conversations with another Jabber User, usually accessible as an HTML file.

MIO

Managed Input/Output, the API in Jabber for managing sockets between Jabberd and most server components.

Moderated Room

A Conference Room where not all participants have a voice (i.e., are Participants), and where a Moderator filters messages and manages the discussion.

Moderator

The person who manages discussions and performs certain limited administrative functions related to a discussion within a Conference Room. The Moderator has fewer privileges than the Room Administrator, with regard to the room itself.

MSN Transport

The MSN Transport provides a bridge between Jabber and the MSN Messenger Service (MSN), an instant messaging service offered by the Microsoft Corporation

See Also: Transport.

N

Namespace

See: XML Namespace

Native Protocol

A native protocol is the format in which communications occur within a particular service. For example, the AIM Transport communicates with AIM by translating Jabber's native XML protocol into AIM's native protocol and vice-versa.

Nickname

A name chosen by a Jabber User as a convenient moniker for use when Chatting. A user's nickname is not necessarily the same as that their username. In the context of Conferencing, we use the term Room Nickname.

O

OOB

Out of Band, a way to send information (e.g., files) outside the context of normal Jabber communications. Out of band communications are normally used for high-bandwidth applications such as file transfers and audio/video chat.

Open Source

Open Source is a programming movement characterized by the creation of 'open' code that can be modified or distributed without paying a licensing fee. Members of the movement participate voluntarily in the development of the code and typically publish new code on the Internet for common use

See Also: OSI.

OSI

The Open Source Initiative, an organization that determines whether software licenses are compatible with Open Source principles. For more information, visit http://www.opensource.org/.

P

Participant

An Attendee with Voice.

Personal Group

A list of Jabber Users and other Jabber Entities a user has subscribed to on their own initiative. This contrasts with Shared Groups.

Presence

Presence indicates whether a Jabber Entity is available for communication. It includes basic Availability (i.e., online vs. offline), as well as status indicators that capture various Availability Types.

Priority

Priority is a user-defined setting that determines the importance of each Resource a Jabber user is using to access the Jabber server. The server will send messages and presence information to the highest-priority resource, which is known as the Primary Resource. This enables a user to connect to the server from multiple locations or devices, but only receive messages at a single device or location.

Primary Resource

The Primary Resource is the highest-priority Resource from which a Jabber User is connected to a Jabber Server. It is the resource to which the server will direct all communication intended for that user. The Priority of a resource is user-defined.

Probe

A probe is a specific type of Presence packet that seeks to discover another entity's availability.

Protocol

A protocol is a formalized set of instructions that developers follow when creating applications, including Jabber applications.

R

Resource

The resource of a Jabber ID can provide additional information about how a user is accessing a Jabber server. A Resource can be the location from which a user is connecting (e.g., home or work), the type of device a user is connecting with (e.g., notebook or handheld), or the user's specific Jabber Client (e.g., JIM or WinJab).

Room

A short-cut term for Conference Room.

Room Administrator

Someone who can manage, and determine the significant parameters of a room. However, a Room Admin cannot create or destroy the room and may have limited powers with regard to certain room parameters, unlike the Room Owner.

Room Log

Historical information related to the usage of a Conference Room.

Room Nickname

The nickname of a Jabber User within a particular Conference Room. A Room Nickname can be different from that User's actual nickname or username.

Room Owner

Someone who has control over the fundamental parameters and existence of a room.

Room Presence

A member's presence within the context of a room. Room Presence may be different from a member's presence outside the room.

Roster

A list of Jabber Users or other Jabber Entities to whom a Jabber User is subscribed. A user's roster is often the combination of a user's Personal Groups and Shared Groups.

RSS

An XML format (originally developed by Netscape) for sharing news headlines and article abstracts. It is an acronym for RDF Site Summary (formerly for "Rich Site Summary"). For more information, visit http://www.purl.org/rss/1.0/.

S

Secure Sockets Layer

A TCP/IP standard for supporting encryption at the socket communication layer.

Service

An interface or connection between the core Jabber Server and any external system (such as a database) in which communications do not take place over the Internet or a network. There is no translation by the Service of the Jabber XML Protocol into a non-Jabber protocol. Contrast with Agent, Gateway, and Transport.

SGML

Standard Generalized Markup Language, the grandfather of markup languages. Both XML and HTML are subsets of SGML.

Shared Group

A list of Jabber Users and other Jabber Entities a user is subscribed to automatically, usually by because they belong to a certain part of an organization. Contrast with Personal Group.

SMS

Short Message Service, an instant messaging protocol for sending brief messages between portable devices, like cell phones.

SMTP

Simple Mail Transfer Protocol, an Internet standard for electronic mail used by most email services.

Status

See: Availability Type

Subject

A temporary label for a Discussion within a Conference Room.

Subscription

A subscription is a request to receive presence updates from a Jabber User or other Jabber Entity. The receiving entity may refuse a subscription, preventing the requesting party from seeing presence updates. If the receiving entity approves the subscription, the requesting party will see presence updates.

SSL

See: Secure Sockets Layer

T

TCP

Transmission Control Protocol, an Internet standard for creating and managing reliable, stream-oriented connections over the Internet. Jabber uses TCP for connections between Jabber Clients and the Jabber Server, as well as between different instances of the Jabber server.

Topic

The defining purpose of a room. It differs from a Subject in that it is not changed as often (if ever) and it is not tied to a specific Discussion.

Transport

An Agent that provides access to a non-Jabber instant messaging system.

U

Uniform Resource Identifier
(URI)

A character string used to identify a resource (such as a file) from anywhere on the Internet by type and location. The term 'URL' (Uniform Resource Locator) is a specific type of URI. For more information, visit http://www.w3.org/Addressing/.

Un-Moderated Room

A room in which all participants have voice (i.e., are Audience Members) and in which there is no Moderator to filter messages and manage the discussion.

URI

See: Uniform Resource Identifier

URL

See: Uniform Resource Identifier

Username

A Jabber User's account name on a Jabber Server. The username is the first part of a valid Jabber ID. A username can be different from a Nickname.

V

vCard

vCards are information about a person or service, similar to a business card. They automate the exchange of personal information, and are widely used in a variety of internet and telephony applications. For more information, refer to the official vCard specifications at http://www.imc.org/rfc2425 and http://www.imc.org/.

Voice

The right to send messages to all Attendees in a Conference Room.

W

WAP

Wireless Application Protocol, it provides a standardized way for portable devices to access information on the Internet.

X

XDB

XBD is an acronym for XML Data Base. It is a component of the Jabber server that provides an interface to any data source used for the storage and retrieval of server-side data.

XHTML Basic

XHTML Basic is a subset of XHTML 1.1 designed for web clients such as mobile phones, PDAs, pagers and television set top boxes. The XHTML Basic specification is available at http://www.w3.org/TR/2000/REC-xhtml-basic-20001219/.

XML

See: Extensible Markup Language

XML Attribute

XML attributes are used to provide more information, often meta-information, about an XML element. They consist of a name, an equals (=) sign, and the value of the attribute, where the value is surrounded by quotes. An example from the Jabber protocol is <message to="juliet@capulet.org">.

XML Element

XML elements are the basic building blocks of an XML document or data stream. There are three basic elements in the Jabber XML protocol: message, presence, and iq.

XML Namespace

An XML namespace provides a simple method for qualifying element and attribute names used in XML documents by associating them with namespaces identified by a URI reference. The XML Namespace specification is currently a recommendation with the W3C.

Y

Yahoo Transport

The Yahoo Transport provides a bridge between Jabber and Yahoo! Messenger, an instant messaging service offered by Yahoo!

See Also: Transport.