1 <?xml version="1.0" encoding="utf-8"?>
2 <!DOCTYPE glossary PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
4 <glossary id="glossary">
6 <glossentry id="action"><glossterm>Action</glossterm>
9 An <firstterm>Action</firstterm> is a method call on a
10 <glossterm>Service</glossterm>, which encapsulated a single piece of
11 functionality. Actions can have multiple input and output arguments, and
12 can return error codes. UPnP allows one of the output arguments to be
13 marked as the <firstterm>return value</firstterm>, but GUPnP doesn't treat
14 return values specially.
17 Every action argument has a related <glossterm>State Variable</glossterm>,
18 which determines the type of the argument. Note that even if the argument
19 wouldn't need a state variable it is still required, due to historical
25 <glossentry id="controlpoint"><glossterm>Control Point</glossterm>
28 A <firstterm>Control Point</firstterm> is an entity on the network which
29 communicates with other <glossterm>Devices</glossterm> and
30 <glossterm>Services</glossterm>. In the client/server model the control
31 point is a client and the <glossterm>Service</glossterm> is a server,
32 although it is common for devices to also be a control point because
33 whilst a single control point/service connection is client/server, the
34 UPnP network as whole is peer-to-peer.
39 <glossentry id="device"><glossterm>Device</glossterm>
42 A <firstterm>Device</firstterm> is an entity on the network which
43 communicates using the UPnP standards. This can be a dedicated physical
44 device such as a router or printer, or a PC which is running software
45 implementing the UPnP standards.
48 A Device can contain sub-devices, for example a combination
49 printer/scanner could appear as a general device with a printer
50 sub-device and a scanner sub-device.
53 Every device has zero or more <glossterm>Services</glossterm>. UPnP defines many standard
54 device types, which specify services which are required to be implemented.
55 Alternatively, a non-standard device type could be used. Examples of
56 standard device types are <literal>MediaRenderer</literal> or
57 <literal>InternetGatewayDevice</literal>.
59 <glossseealso otherterm="service"/>
64 <glossterm>DIDL-Lite</glossterm>
65 <glosssee otherterm="didllite"/>
68 <glossentry id="didllite"><glossterm>Digital Item Declaration Language - Lite</glossterm>
69 <acronym>DIDL-Lite</acronym>
72 An XML schema used to represent digital content metadata. Defined by
79 <glossterm>SCPD</glossterm>
80 <glosssee otherterm="scpd"/>
83 <glossentry id="service"><glossterm>Service</glossterm>
86 A <firstterm>Service</firstterm> is a collection of related methods
87 (called <glossterm>Actions</glossterm>) and public variables (called
88 <glossterm>State Variables</glossterm>) which together form a logical
92 UPnP defines standard services that define actions and variables which
93 must be present and their semantics. Examples of these are
94 <literal>AVTransport</literal> and <literal>WANIPConnection</literal>.
96 <glossseealso otherterm="action"/>
97 <glossseealso otherterm="device"/>
98 <glossseealso otherterm="state-variable"/>
102 <glossentry id="scpd">
103 <glossterm>Service Control Protocol Document</glossterm>
104 <acronym>SCPD</acronym>
107 An XML document which defines the set of <glossterm>Actions</glossterm>
108 and <glossterm>State Variables</glossterm> that a
109 <glossterm>Service</glossterm> implements.
111 <glossseealso otherterm="service"/>
112 <glossseealso otherterm="action"/>
113 <glossseealso otherterm="state-variable"/>
117 <glossentry id="ssdp">
118 <glossterm>Simple Service Discovery Protocol</glossterm>
119 <acronym>SSDP</acronym>
122 UPnP device discovery protocol. Specifies how <glossterm>Devices</glossterm>
123 advertise their <glossterm>Services</glossterm> in the network and also how
124 <glossterm>Control Points</glossterm> search for
125 services and devices respond.
127 <glossseealso otherterm="device"/>
128 <glossseealso otherterm="controlpoint"/>
129 <glossseealso otherterm="service"/>
134 <glossterm>SSDP</glossterm>
135 <glosssee otherterm="ssdp"/>
138 <glossentry id="state-variable"><glossterm>State Variable</glossterm>
141 A <firstterm>State Variable</firstterm> is a public variable exposing some
142 aspect of the service's state. State variables are typed and optionally
143 are <firstterm>evented</firstterm>, which means that any changes will be
144 notified. Control points are said to <firstterm>subscribe</firstterm> to
145 a state variable to receive change notifications.
151 <glossterm>UDN</glossterm>
152 <glosssee otherterm="udn"/>
155 <glossentry id="udn">
156 <glossterm>Unique Device Name</glossterm>
157 <acronym>UDN</acronym>
160 A a unique identifier which is <emphasis>unique</emphasis> for every
161 device but <emphasis>never changes</emphasis> for each particular
165 A common practise is to generate a unique UDN on first boot from a
166 random seed, or use some unique and persistant property such as the
167 device's MAC address to create the UDN.
169 <glossseealso otherterm="device"/>