| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |

 

A

   

Administrator

 

See system administrator.

     
AppLogic Object
 

A set of programming instructions that accomplish a

   

well-defined, modular task within the application. AppLogic objects run on the Netscape Application Server and are managed and hosted by it. Typically, an application includes several to many AppLogics, which can be deployed across many servers. These AppLogics provide some or all of the procedural, or logic, portion of the application. Each AppLogic object is derived, directly or indirectly, from the Netscape Application Server Foundation Class Library.

Related terms: base class; object-oriented programming; server; subclass

     
Aggregate Expression
 

An expression in a query that summarizes values from one database column across several rows. You can use

 

 

aggregate expressions to specify computed fields. The aggregate functions available depend on your database server, but those typically supported are Min( ), Max( ), Count( ), Avg( ), Sum( ), First( ), and Last( ).

Related terms: alias; computed field; query

     
Alias
 

An alternate name. In a query, an alias is a name given to

   

a database table, column, or computed field. For example, in the following code, sumsalary is an alias. queryCTY.setFields("city, Sum(salary) as sumsalary");

Related terms: column; computed field; query; table

     

Applet

 

An applet is a small application written in Java that runs

   

in a Web browser. Typically, applets are called by Web pages to provide special functionality. For example, an applet might display a dynamic stock price graph that is updated every fifteen minutes in the upper corner of a Web page.

Related term: Web page
Contrast with AppLogic object banded report,see grouped report.

     
Application Protocol
 

A predefined sequence of bits and bytes or messages communicated between application entities in the ISO model.

   
     
Application Queue
  A stable storage area in a queue base used for queued communications.
     
Application Programming
Interface (API)
  Definition of the calling formats to a set of procedures that perform a set of related tasks.
   
     
Asynchronous Communications
  Communications in which the requester does not wait for the response but will poll for it at a later time.
     
Atomicity
  The "all-or-nothing" property of a transaction. This property
    ensures that ALL of the transactional-aware resources participating in the transaction either make any updates permanent at the end of a transaction or roll them back to their state at the beginning of the transaction.
     
AUTOTRAN
  A configured option such that a service will automatically
   

be started in transaction mode if the incoming request is not in transaction mode.

B

   
Backup
  A redundant component (computer, server, etc.) that
    takes over the work of the primary during a failure situation to provide high availability.
     
Base Class
  A class from which another class is derived. For example,
   

AppLogic is a base class from which you can derive an AppLogic. The term "base class" is often used as a short form of "abstract base class," which is a class that is meant to be used only as a superclass, not to be instantiated directly.

Related terms: class; subclass

     
Batch-oriented
  An application characterized by queued communications
    (contrast with online access).
     
Binary Large Object (BLOB)
  A large block of bits that can be stored in a database. A BLOB is useful for storing any large piece of data, such
    as pictures or sounds, that do not need to be interpreted by the database.
     
Birth Time
  A future time, specified in either absolute or relative terms,
   

before which a message enqueued in an application queue cannot be dequeued.

     
Blocking Condition
 

A condition in an application where a module is waiting for something to happen, such as sending a request or

   

receiving a reply.

     
Business Logic
 

A set of rules that describe how a company operates. For

    example, business logic might dictate that only employees of a certain management level can place purchase orders above a given dollar amount. The code in an application can perform tests to ensure that business logic is not violated when the application is used.
     
Business Objects
  The essential items of a business around which an application’s service routines should be designed to
   

manipulate them.

C

   
Cache
  See result cache.
     
CARRAY
  A typed buffer format in which the data is an array of
    uninterpreted bytes; it always requires an associated length value.
     
Cell Tag
  A type of GX markup tag which displays a dynamic data
   

value.

Related term: GX markup tag
Contrast with include tag, replace tag, tile tag

     
Child Query
  A flat query that represents an inner level of data in a
   

hierarchical query. Each child query is nested relative to another flat query, which is its parent query. Every flat query in a hierarchical query is a child query, except the outermost.

Related terms: hierarchical query, query
Contrast with parent query

     
Class
 

A named set of methods and member variables that

   

defines the characteristics of a particular type of object. The class defines what types of data and behavior are possible for this type of object.

Related terms: member, method, object

     
Client
 

A software module that gathers and presents data to an

   

application; it generates requests for services and receives replies. This term can also be used to indicate the requesting role that a software module assumes by either a client or server process.

     

Client Name

 

The name supplied by the application client when joining

   

the application, used for identifying and notifying a client.

     
Client Identifier
 

The identifier assigned to a client when joining the

    application.
     
Client/Server
 

A means of distributing applications into cooperating

   

software modules, some of which are called clients and others servers. Clients request work of servers.

     
Commit
  To terminate a transaction, making changes to the
   

associated resources permanent.

     
Common Object Request Broker Architecture
(CORBA)
  The specification of an Object Request Broker (ORB) and associated software by the Object Management Group (OMG).
   
     
Component
  Part of an application.
     
Computed Field
 

A field in a query that displays the result of an expression

   

rather than stored data. The database engine recalculates the value each time it runs the query.

Related terms: aggregate expression, field, query

     
Connection
 

A communication link with a

   

database or other data source. AppLogics can create and manipulate several database connections simultaneously to access data. Each database connection is represented by a database connection object, which is an instance of the IDataConn interface.

Related term: object

     
Constructor
  A method that instantiates a class.
   

Related terms: class, instantiation, object

     
Conversation
 

A communications paradigm involving a dialogue between

   

the initiator and another module, consisting of multiple interactions with implied or explicit state or context.

     

Conversational Service

  A service offered by a server that can be used with the conversational paradigm.
     
Cookie
 

A variable that your application can send to a Web

   

browser to be stored there for a specified length of time. Each time a Web browser views an HTML page in your application, the cookies from that browser are sent to the application. Cookies are domain-specific and can take advantage of the same Web server security features as other data interchange between your application and the server. Thus, cookies are useful for privately exchanging data between your application and the Web browser.

Related term: Web browser

     
Custom Typed Buffer
 

An application-provided message format, with an associated type and subtype, that has been configured

   

by the administrator.

D

   
Daemon
 

A process that runs and does processing in the

    background.
     
Data Independence
 

The ability to access and update data without knowing the underlying storage format or offset.

     
Data Translation
  The conversion of data for transfer between machines of
    different types.
     
Delete Query
  A statement that specifies which data to delete from a
    database.
     
Distributed Computing
 

A collection of computers linked together. Such systems can exist on a local area network (LAN), wide area

   

network (WAN), or on the Internet. Distributed systems make several types of advanced computing systems possible, including client/server, multi-tier, and partitioned applications.

     
Domain
  An autonomously administered application; particularly
    used in a situation where multiple applications intercommunicate.
     
Dynamically Loadable Module (DLM)
  A binary executable file that can be loaded while an application is running. In Windows NT or Win95 systems, DLM is another name for a Dynamic-Link Library (DLL). In
   

UNIX systems, DLMs are implemented as ELF shared libraries.

E

   
EJB API
 

The Enterprise JavaBeans API defines a server component model that provides portability across application servers and implements automatic services on behalf of the application components.

     
Event

 

 

Named actions that you register with the Netscape

   

Application Server. The event occurs either when a timer expires or when the event is called from application code at runtime. Typical uses for events include periodic backups, reconciling accounts at the end of the business day, or sending alert messages.

     
Executable
 

A program that can be run on an operating system.

   

F

   
Field
 

The smallest identifiable part of a table in a database. A

   

field is the intersection of a row and a column. A unit of data in a result set. Each field in a result set has a name, which corresponds to either a database column or an expression. Each field contains a single data value.

Related terms: column, result set, table

     
Field Identifier
 

A numeric identifier associated with a data value in an

   

FML buffer.

     
Field Manipulation Language (FML)
 

Generically, an interface for maintaining buffers with field/value pairs; specifically, the 16-bit version of this interface (contrast with FML32)

     
Field Table
 

a mapping between FML, field identifiers and field names.

     
Flat Query
 

A query that produces a result set that is not divided into

   

levels or groups. The result set of a flat query is like a table.

Related terms: query, result set
Contrast with hierarchical query

G

   
Group
 

A set of rows in a result set that have one or more field

   

values in common. For example, in a sales report, a group consists of all the orders placed by one customer.

Related terms: field, result set

     
Grouped Report
 

A report that shows records in logical groups, such as

   

sales grouped by geographic region, and can show summary data for each group.

Related terms: group, hierarchical query, report
Contrast with tabular report

     
Globally Unique Identifier (GUID)
 

A unique number that identifies an AppLogic object and is used to request Netscape Application Server to run that

   

AppLogic object.

Related term: AppLogic object

     
GXML Template  

A definition for a dynamically-generated set of output

   

data. Data retrieved from a database or other data source at runtime is sent back to the client in a self- describing stream of output.

Related term: GX markup tag, HTML template

     
GX Markup Tag
 

A special type of syntax used in templates to indicate

   

where dynamic data is to be merged with the template. For example, the following GX markup tag inserts the name of a continent.

%gx type=cell id=CONTINENT.NAME%%/gx%

Related terms: GXML template, HTML template

H

   
Handle
  In ATMI, a token returned to the application for further
 

reference to an asynchronous request/response call or a conversational call.

   

 

Hierarchical Query
 

A query that combines several flat queries to construct a result set with multiple nested levels of data.

     
   

Related terms: child query, parent query, query
Contrast with standard query

     
Hypertext Markup Language (HTML)
 

The coding language used to create documents that can be displayed by Web browsers. Each block of text is surrounded by codes that indicate the nature of the text, such as heading, body paragraph, or list item.

   

Additional codes are used to create hyperlinks and call applets or AppLogic objects. HTML codes are surrounded by angle brackets < >.

Related terms: AppLogic object, hyperlink, Web browser

     
HTML Template
 

A definition for a dynamically-generated HTML page.

   

AppLogic uses HTML templates to present dynamic data. Data retrieved from a database, or otherwise generated dynamically, is merged with the template to create a database report or other type of HTML page, which is displayed to the user. HTML templates are similar to HTML pages, but they also include special GX markup tags which specify how dynamic data is merged with the page.

Related terms: AppLogic object, GX markup tag, HTML (Hypertext Markup Language), Template Designer

     
Hypertext Transport Protocol (HTTP)
  The protocol for communicating hypertext documents across the Internet and the World Wide Web. HTTP provides a structure for communication between HTTP
   

clients and HTTP servers.

Related terms: client, server, World Wide Web

I

   
Inheritance
 

A mechanism in which a subclass automatically includes

   

the method and variable definitions of its superclass. A programmer can change or add to the inherited characteristics of a subclass without affecting the superclass.

Related terms: class, subclass, superclass

     
Insert Query
 

A statement that specifies which data to add to a

   

database.

     
Instance
  An object that is based on a particular class. Each
   

instance of the class is a distinct object, with its own variable values and state. However, all instances of a class share the variable and method definitions specified in that class.

Related terms: class, instantiation, object

     
Instantiation
 

The process of allocating an object to memory at runtime.

     
   

Related terms: class, instance, object

     
Interface
  An interface is a description of the services provided by
   

an object. An interface defines a set of functions, called methods. The interface includes no implementation code. An interface, like a class, defines the characteristics of a particular type of object. However, unlike a class, an interface is always abstract. A class can be instantiated to form an object, but an interface can not be instantiated.

Related terms: member, method, object

     
Interface Definition
Language (IDL)
 

The language used to describe data types and functions used for Remote Procedure Calls.

   
     
Interprocess Communication
  The mechanisms by which modules in separate address spaces communicate within a computer – typically
   

includes shared memory, semaphores, and message queues.

J

   
Java IDL API
 

The Java Interface Definition Language API creates remote interfaces to support CORBA communication in the Java Platform. Java IDL includes an IDL compiler and a lightweight, replaceable ORB that supports IIOP.

     
JNDI API
 

The Java Naming and Directory Interfaces API provides access to naming and directory services, such as DNS, NDS, NIS+, LDAP, and COS Naming.

     
JMS API
 

The Java Messaging Service API supports asynchronous communications through various messaging systems, such as reliable queuing and publish-and-subscribe services.

     
JTA API
 

The Java Transaction API provides a transaction demarcation API.

     
JTS API
 

The Java Transaction Services API defines a distributed transaction management service based on CORBA Object Transaction Service.

     
JDBC API
 

The JDBC Database Access API provides uniform access to relational databases, such as DB2, Informix, Oracle, SQL Server, and Sybase.

     

L

   
Load Balancing
 

A technique for distributing the user load evenly among

   

identical AppLogic objects distributed across several computers running Netscape Application Server.

Related term: request

     
Local
Transaction
 

A transaction that is active in a single resource manager.

   
     
Lock
 

A data structure used to control access to data items by

   

a resource manager.

M

   
Member
 

Variable or method declared in a class is a member of

   

that class.

Related terms: class, method

     
Member Variable
 

A variable with the following characteristics:

   
  • The variable is declared inside a class declaration.
  • A member variable specifies a piece of data that can be stored by an object instantiated from that class.

Related terms: class, member, object

     
Message
 

Data exchanged between communicating executables.

     
Method
 

A function with the following characteristics:

   
  • The method is declared inside a class or interface.
  • A method specifies an action that can be performed by an object instantiated from that class.

Related terms: class, interface, member, object

     
Multicast
  A technique that allows a single packet to be passed to a
   

selected subset of all possible destinations. Some hardware (e.g., Ethernet) supports multicast by allowing a network interface to belong to one or more multicast groups. Broadcast is a special form of multicast in which the entire subset of destinations will receive the packet sent via the multicast broadcast.

N

   
Netscape Application Server Foundation Class Library
  A set of interfaces and classes provided by Netscape Communications Corporation that can be used to develop object-oriented Netscape Application Server applications. The classes in the Netscape Application Server Foundation Class Library define many types of objects
   

you can include in Netscape Application Server applications, such as AppLogic objects, data connections, queries, and result sets.

Related terms: AppLogic object, class, connection, object, query, result set

O

   
Object
  A programmed entity with the following characteristics:
   
  • An object embodies both data and behavior.
  • Objects come into existence at runtime through the process of instantiation.
  • Each object is based on a definition, which is called a class.

Many parts of a Netscape Application Server application, such as AppLogic objects, queries, and result sets, are objects.

Related terms: AppLogic object, class, instantiation, query, result set ,

     
Object Reference
  A data structure that identifies an object to be manipulated.
     
Object Request Broker (ORB)
 

a specification of OMG for a system which enables objects to communicate.

     
Object Transaction Service (OTS)
  The specification of transaction interfaces for an Object Request Broker (ORB) by the Object Management Group (OMG)
     
Open Database Connectivity (ODBC)
  A standard protocol used by many database vendors to provide an interface to outside applications. Netscape Application Server applications can interact with
   

databases that comply with ODBC 1.0 and 2.0.

     
Override
 

To write new code that replaces the default code of an

   

inherited method.

Related terms: default, inheritance, method

P

   
Parameter
 

The data passed between methods, AppLogic objects,

   

and other program code.

A placeholder for dynamic data that is passed into a prepared database command at runtime.

Related terms: AppLogic object, method, prepared command

     
Parent Query
 

A flat query that represents an outer level of data in a

   

hierarchical query. Each parent query is nested outside another flat query, which is its child query. Every flat query in a hierarchical query is a parent query, except the innermost.

Related terms: hierarchical query, query
Contrast with child query

     
Prepared Command
 

Database command (INSERT, UPDATE, DELETE, or query) that is precompiled to make repeated execution

   

more efficient. Prepared commands can contain parameters.

Related terms: parameter

     
Prepare to Commit
  Notify all participants in a transaction that they should get ready to complete the transaction; normally, this involves
   

writing updates to stable storage.

     
Priority
 

Processing of messages based on an urgency factor

   

assigned by the application.

     
Protected Mode
  The mode in which an application client or server operates
   

so that it detaches from the Bulletin Board when not in one ATMI routines.

Q

   
Query
 

A statement that specifies which data to retrieve from a

   

database. Typically, the results of a query are displayed in a report.

Related terms: delete query, hierarchical query, report, result set, select query, Query Designer, update query

     
Query File
 

A query file is a file that contains the specification for a

   

flat or hierarchical query. Query files are useful for running legacy SQL SELECT statements. You can also use query files to write new queries.

Related terms: flat query, hierarchical query, SQL (Structured Query Language)
Contrast with Query Designer

     
Queue
 

A memory data structure to hold messages for

   

processing.

R

   
Registration
 

The process of informing Netscape Application Server of

   

the existence of an AppLogic object, code module, or security information.

Related terms: AppLogic object, GUID (Globally Unique Identifier)

   
Remote Procedure Call
(RPC)
  A procedure call that is executed in a nonlocal program or address space.
   
     
Replace Tag
 

A type of GX markup tag which substitutes a dynamic

   

data value for a specified string.

Related term: GX markup tag
Contrast with cell tag, include tag, tile tag

     
Reply Buffer
  A typed buffer containing a response for a request.
     
Report
 

A formatted presentation of data. In a Netscape

   

Application Server application, a report is an HTML page presented to the user in response to a request for information. AppLogic objects create reports by combining hierarchical result sets and HTML templates.

Related terms: AppLogic object, hierarchical query, HTML template

     
Request
 

A message from a client to a server, asking for data or

   

another service. For example, a Web browser requests a Web page from a server. In a Netscape Application Server application, a request is a message that causes an AppLogic object to run on the Netscape Application Server. A request uses a unique name or Globally Unique Identifier (GUID) to identify the proper AppLogic object to handle the request. The request can include parameters to be passed to the AppLogic object. Requests can come from clients, AppLogic objects, or other code.

Related terms: client, GUID (Globally Unique Identifier), parameter, server, Web browser

     
Request Buffer
 

A typed buffer containing a request for a service from a

   

client or server.

     
Resource Manager (RM)
 

A module or collection of modules, the most common of which are databases, that maintain the state of the

    application.

RMI API

 

The Remote Method Invocation API creates remote interfaces for distributed computing on the Java platform.

Result Set
 

A set of data records returned by a query. A record is a

   

set of fields. Each field in the record has a name, which corresponds to either a database column or an expression, and each field contains a single data value.

Related terms: aggregate expression, query

     
Rollback
 

Terminate a transaction such that all resources updated

   

within a transaction revert to the original state before the transaction started.

     
Rollback-only
 

An indication by a software module which is participating

    in a transaction that the transaction must not be committed.
     
Row
 

A record in a database table. Each row is made up of

   

several columns.

Related terms: column, table

S

   
Select Query
 

A statement that specifies which data to retrieve from a

   

database, as specified by your data model.

     
Self-describing Buffer
 

A data buffer that contains a description of its own format and contents; a message format in which the data

   

type(s) and length(s) are known or can be determined without additional external information.

     
Sequence
 

A sequential number generator which exists in a

    database. Some database vendors refer to a sequence as a serial, identity, or autoincrement. A sequence is useful for generating transaction-safe numbers for database transaction applications.
     
Server
 

A computer or software package that provides a specific

   

kind of service to client software running on other computers. A server is designed to communicate with a specific type of client software.

Related terms: client, online application server, Web server

     
Server Stub
 

A module generated by IDL compiler on the server side

    for use with TxRPC; these routines unpack the input data, call the associated routine, and handle the returned data.
     
Service
 

The name given to an application routine available for

   

request by a client in the system with well-defined inputs, outputs, and processing.

     
Service Request Broker (SRB)
 

A system that enables software modules to communicate via service requests.

     
Session
 

A continuous series of interactions between a user and

   

a Netscape Application Server application. The term session is widely used to refer to a Web browser session, but in this manual, the term session refers more specifically to a series of user interactions that are tracked by a Netscape Application Server application. The user's session with a Web browser or other client software might start before Netscape Application Server application begins tracking the user, and could continue after the application stops tracking the user.

     
Structured Query Language (SQL)
 

A language commonly used in relational database applications. In a Netscape Application Server application, you can specify SQL SELECT, INSERT,

   

UPDATE, and DELETE commands.

Related term: query

     
Standard Query
 

A query that produces a result set that is not divided into

   

levels or groups. The result set of a standard query is like a table.

Related terms: query, result set
Contrast with hierarchical query

     
State
 

A distributed data storage mechanism which you can

   

use to store the state of an application. The application state is a collection of application variables whose scope is global within the application. Information in the state layer can be organized in a hierarchical structure, or tree.

Related term: session

     
     
Servlets and JSPs
 

The Java servlets and JavaServer Pages APIs support dynamic HTML generation and session management for browser clients.

Stored Procedure
  A block of statements written in SQL or programmatic SQL and stored in a database. You can use stored
   

procedures to perform any type of database operation, such as modifying, inserting, or deleting records. The use of stored procedures improves database performance by reducing the amount of information that is sent over a network.

   

 

Streaming
 

A technique for managing how data is communicated via

   

HTTP. When results are streamed, the first portion of the data is available for use immediately. When results are not streamed, the whole result must be received before any part of it can be used. Streaming provides a way to allow large amounts of data to be returned in a more useful way, increasing the perceived performance of the application.

Related term: HTTP (Hypertext Transport Protocol)

     
Subclass
  A class that is derived from and is a special case of
   

another class, called a base class or superclass. For example, the AppLogic class defines the generic characteristics of an AppLogic object. To define a new AppLogic object, a programmer derives a subclass from Agent and gives the new class a unique name. The new class inherits all its characteristics from the superclass. A subclass can be modified without affecting its superclass.

Related terms: class, superclass

     
Superclass
 

A class from which another class, called a subclass, is derived.

Related terms: base class, class, inheritance, subclass

   

 

     
Synchronous
Communications
  Communications in which the requester waits for a reply.
   
     
System Administrator
  The person who is responsible for installing and maintaining Netscape Application Server software and
   

for deploying production Netscape Application Server applications.

T

   
Tabular Report
  A report, sometimes called a listing, that prints all the
   

records retrieved from the database.

Related terms: GX markup tag, report
Contrast with grouped report

     
Template
  See GXML template or HTML template.
     
Template Map
 

An object that maps fields in a template to the data

   

used to replace those fields. With a template map, you can assign values to special placeholders that will be evaluated at runtime. You can also use a template map to link column names in a table to field names that you have used in a template. A template map allows your application to use the same template file with data from different data sources.

Related terms: HTML template

     
Timeout
 

An event that occurs when processing takes longer than

   

expected or configured. Timeouts can occur either when blocking for an operation or when a transaction takes longer than specified by the application.

     
Transaction
  A set of database commands that succeed or fail as a
   

group. All the commands involved must succeed for the entire transaction to be correct.

     
Transaction Log
  A stable storage area where the completion of global
   

transactions are logged.

     
Transaction Manager or
Monitor
 

Software that manages global transactions across multiple computers and resource managers.

   
     
Transport-Level Interface
 

A standard operating system interface to networking services.

     
Trigger
  A stored block of SQL or PL/SQL statements
   

that is associated with a table, runs in response to an INSERT, UPDATE, or DELETE operation, and runs only under certain specified conditions.

     
Two-phase Commit
  Algorithm to ensure the atomicity of a committing transaction.
     
Two-way Alternate
 

A form of conversational communication where either party can send a message but only one party at a

   

time is permitted to do so.

     
Type
 

The name of a data format for a typed buffer.

     

U

   
Uniform Resource Locator (URL)
 

An address that uniquely identifies an HTML page or other resource. Web browsers use URLs to specify which pages to display.

   

In a Netscape Application Server application, HTML templates can use URLs to call AppLogic objects.

Related terms: AppLogic object, HTML template, Web browser

     

Update Query

  A statement that specifies which data to modify within a
   

database.

V

   
Variable
 

A named storage location for data that can be modified

   

while a program is running. Each variable has a unique name that identifies it within its scope. Each variable can contain a certain type of data.

W

   
Web
  See World Wide Web.
     
Web Application
  A computer program that uses the World Wide Web for
   

connectivity and user interface purposes. A user connects to and runs a Web application by using a Web browser on any platform. The user interface of the application is the HTML pages displayed by the browser. The application itself runs on a server, which is connected to the browser via the World Wide Web.

Related terms: server, Web browser

     
Web Browser
  Software that is used to view resources on the World
   

Wide Web, such as Web pages coded in HTML.

Related terms: HTML (Hypertext Markup Language), World Wide Web

     
Web Server
  A computer that stores and manages HTML pages and
   

Web applications. The Web server responds to user requests from Web browsers.

Related terms: HTML (Hypertext Markup Language), user, Web browser, Web application
Contrast with online application server

     
Wizard
 

A code generator that provides a framework for creating

   

the most commonly used types of application development components (for example, AppLogics, HTML pages and templates, and queries).

     

World Wide Web

  A network of many computers linked together by their ability to understand the Hypertext Transfer Protocol
   

(HTTP). Two types of computers make up the Web: clients and servers. Clients are computers with Web browsers installed on them. Servers are computers that store and manage the information requested by the clients.

Related terms: Web browser, Web server