51
5/5/99  ã Apple Computer, Inc.
C H A P T E R   3
Values and Constants
3
Figure 3-0
Listing 3-0
Table 3-0
Values are data that can be represented, stored, and manipulated in scripts. 
AppleScript recognizes many types of values, including character strings, real 
numbers, integers, lists, and dates. Values are different from application objects, 
which can also be manipulated from AppleScript but are contained in 
applications or their documents. Objects are described in “Objects and 
References” (page 161).
Each value belongs to a value class, which is a category of values that are 
represented in the same way and respond to the same operators. To find out 
how to represent a particular value, or which operators it responds to, check its 
value class definition. AppleScript can coerce a value of one class into a value of 
another. The possible coercions depend on the class of the original value.
This chapter describes how to interpret value class definitions, discusses the 
common characteristics of all value classes, and presents definitions of many 
value classes supported in AppleScript. It also describes how to coerce values 
and describes various types of constant values you can use in scripts.
Value classes and coercions are described in the following sections:
n
“Common Value Class Definitions” (page 56) provides detailed definitions 
for a set of commonly used AppleScript value classes. Each class is described 
in a separate section. The sections follow the format described in “Using 
Value Class Definitions” (page 52).
n
“Unicode Text and International Text” (page 87) describes two string value 
classes that you use mainly to transfer data between applications.
n
“Unit Type Value Classes” (page 91) provides an overview of the value 
classes you use to work with measurements of length, area, cubic and liquid 
volume, mass, and temperature.
n
“Coercing Values” (page 97) describes how AppleScript coerces values. It 
provides a table that shows the available coercions for common value classes.
Delete page from pdf document - Library application component:C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Easy to Use C# Code to Extract PDF Pages, Copy Pages from One PDF File and Paste into Others
www.rasteredge.com
Delete page from pdf document - Library application component:VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Detailed VB.NET Guide for Extracting Pages from Microsoft PDF Doc
www.rasteredge.com
C H A P T E R   3  
Values and Constants
52
Using Value Class Definitions
5/5/99  ã Apple Computer, Inc.
A constant is a reserved word with a predefined value. You can use constants to 
supply values in scripts. Constants are described in the following sections:
n
“Constant” (page 60) describes the value class Constant.
n
“Constants” (page 100) describes the different kinds of constants used with 
AppleScript.
Using Value Class Definitions
3
Value class definitions contain information about values that belong to a 
particular class. All value classes fall into one of two categories: simple values, 
such as integers and real numbers, which do not contain other values, or 
composite values, such as lists and records, which do. Each of the value class 
definitions in this chapter provides information in one or more of the following 
categories:
n
“Literal Expressions” (page 52)
n
“Properties” (page 53)
n
“Elements” (page 54)
n
“Operators” (page 54)
n
“Commands Handled” (page 55)
n
“Reference Forms” (page 55)
n
“Coercions Supported” (page 55)
In addition, some value class definitions end with notes that provide additional 
information. For an example of a definition that includes each of these 
categories, see “List” (page 67).
Literal Expressions
3
A literal expression is an expression that evaluates to itself. The “Literal 
Expressions” section of a value class definition provides examples of how 
values of a particular class are represented in AppleScript—that is, typical 
literal expressions for values of that class. For example, in AppleScript and 
many other programming languages, the literal expression for a string is a 
Library application component:VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.
VB.NET PDF - How to Delete PDF Document Page in VB.NET. This page is aimed to help you learn how to delete page from your PDF document in VB.NET application.
www.rasteredge.com
Library application component:C# PDF Page Delete Library: remove PDF pages in C#.net, ASP.NET
C#.NET PDF Library - Delete PDF Document Page in C#.NET. Provide C# Users in C#.NET. How to delete a single page from a PDF document.
www.rasteredge.com
C H A P T E R   3
Values and Constants
Using Value Class Definitions
53
5/5/99  ã Apple Computer, Inc. 
series of characters enclosed in quotation marks. The quotation marks are not 
part of the string value; they are a notation that indicates where the string 
begins and ends. The actual string value is a data structure stored in 
AppleScript.
The following example, from the definition for the List value class, shows a 
literal expression for a list value, which is a composite-value type.
{ "it's", 2, true }
As with the quotation marks in a string literal expression, the braces that 
enclose the list and the commas that separate its items are not part of the actual 
list value; they are notations that represent the grouping and items of the list. 
The list class is described fully in “List” (page 67).
Properties
3
A property of a value class is a characteristic that is identified by a unique label 
and has a single value. The “Properties” section of a value class definition 
describes the property or properties of the class. Simple values have only one 
property, called Class, which identifies the class of the value. Composite values 
have both a Class property and at least one additional property, such as Length 
or Contents.
For example, the value class Boolean, described in “Boolean” (page 58), is a 
simple class with just one property, the read-only Class property.
class of boolean --result: class
However, the class Date, described in “Date” (page 62), is a composite value 
class that has additional properties. The following example uses the standard 
scripting addition command Current Date to get the current date, then gets 
various properties of the date.
set theDate to current date
--result: date "Wednesday, March 3, 1999 3:01:44 PM"
weekday of theDate --result: Wednesday
day of theDate --result: 3 (the day of the month)
The following example specifies the Length property of a simple list.
Library application component:C# PDF Page Insert Library: insert pages into PDF file in C#.net
page processing functions, such as how to merge PDF document files by C# code, how to rotate PDF document page, how to delete PDF page using C# .NET, how to
www.rasteredge.com
Library application component:C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
Page Process. File: Merge, Append PDF Files. File: Split PDF Document. File: Compress PDF. Page: Create Thumbnails. Page: Insert PDF Pages. Page: Delete Existing
www.rasteredge.com
C H A P T E R   3  
Values and Constants
54
Using Value Class Definitions
5/5/99  ã Apple Computer, Inc.
length of {"This", "list", "has", 5, "items"} --result: 5
You can optionally use the Get command to get the value of a specified 
property. For example:
get class of boolean --result: class
In most cases, you can also use the Set command to set the additional properties 
listed in the definitions of composite values. If a property cannot be set with the 
Set command, its definition specifies that it is read-only.
Elements
3
Elements of values are values contained within other values. Composite values 
have elements; simple values do not. For example, the List value class 
definition, shown in “List” (page 67), contains one element, called an item.
You use references to refer to elements of composite values. For example, the 
following reference specifies the third item in a list.
item 3 of {"To", "be", "great", "is", "to", "be", "misunderstood"}
--result: "great"
The “Reference Forms” section of a composite value class definition lists the 
reference forms you can use to specify elements of composite values.
Operators
3
You use operators, such as the addition operator (+), the concatenation operator 
(&), and the equality operator (=), to manipulate values. Values that belong to 
the same class can be manipulated by the same operators. The “Operators” 
section of a value class definition lists the operators that can be used with 
values of a particular class.
For complete descriptions of operators and how to use them in expressions, see 
“Operations” (page 213).
Library application component:VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
Easy to Use VB.NET APIs to Add a New Blank Page to PDF Document in VB.NET Program. DLLs for Adding Page into PDF Document in VB.NET Class.
www.rasteredge.com
Library application component:VB.NET PDF File & Page Process Library SDK for vb.net, ASP.NET
document. If you find certain page in your PDF document is unnecessary, you may want to delete this page directly. Moreover, when
www.rasteredge.com
C H A P T E R   3
Values and Constants
Using Value Class Definitions
55
5/5/99  ã Apple Computer, Inc. 
Commands Handled
3
Commands are the words or phrases you use in AppleScript statements to 
request actions or results. Simple values cannot respond to commands, but 
composite values can. For example, lists can respond to the Count command, as 
shown in the following example.
count {"This", "list", "has", 5, "items"}
--result: 5
Each composite value class definition includes a “Commands Handled” section 
that lists commands to which values of that class can respond.
Reference Forms
3
A reference is a compound name, similar to a pathname or address, that 
specifies an object or a value. You can use references to specify values within 
composite values or properties of simple values. You cannot use references to 
refer to simple values.
The “Reference Forms” section is included in composite value class definitions 
only. It lists the reference forms you can use to specify elements of a composite 
value. For complete descriptions of the AppleScript reference forms, see 
“Objects and References” (page 161) 
Coercions Supported
3
AppleScript can change a value of one class into a value of another class. This is 
called coercion. The “Coercions Supported” section of a value class definition 
describes the classes to which values of that class can be coerced. For example, 
the coercions section for the value class List, described in “List” (page 67), notes 
that any value can be added to a list or coerced to a single-value list.
For more information about coercions, see “Coercing Values” (page 97). For a 
summary of the coercions supported for commonly used value classes, see 
Figure 3-3 (page 99). 
Library application component:C# PDF metadata Library: add, remove, update PDF metadata in C#.
C#.NET PDF SDK - Edit PDF Document Metadata in C#.NET. Allow C# Developers to Read, Add, Edit, Update and Delete PDF Metadata in .NET Project.
www.rasteredge.com
Library application component:VB.NET PDF delete text library: delete, remove text from PDF file
187.0F) Dim aChar As PDFTextCharacter = textMgr.SelectChar(page, cursor) ' delete a selected As String = Program.RootPath + "\\" output.pdf" doc.Save
www.rasteredge.com
C H A P T E R   3  
Values and Constants
56
Common Value Class Definitions
5/5/99  ã Apple Computer, Inc.
Common Value Class Definitions
3
Table 3-1 summarizes common AppleScript value classes and provides links to 
sections that describe them in detail.
Table 3-1
Common AppleScript value class identifiers  
Value class identifier
Description of corresponding value
“Boolean” (page 58)
A logical truth value
“Class” (page 59)
A class identifier
“Constant” (page 60)
A reserved word defined by an application or 
AppleScript
“Data” (page 61)
Raw data that cannot be represented in 
AppleScript, but can be stored in a variable
“Date” (page 62)
A string that specifies a day of the week, day of 
the month, month, year, and time 
“File Specification” 
(page 95)
A collection of data that specifies the name and 
location on disk of a file that may not yet exist
“Integer” (page 66)
A positive or negative number without a fractional 
part
International Text
Character data in the form of international text; 
see “Unicode Text and International Text” 
(page 87)
“List” (page 67)
An ordered collection of values
“Number” (page 71)
Synonym for either class Integer or class Real
“Real” (page 72)
A positive or negative number that can have a 
fractional part
“Record” (page 74)
A collection of properties
“Reference” (page 77)
A reference to an object
C H A P T E R   3
Values and Constants
Common Value Class Definitions
57
5/5/99  ã Apple Computer, Inc. 
Three identifiers in Table 3-1 act only as synonyms for other value classes: 
Number is a synonym for either Integer or Real, Text is a synonym for String, 
and Styled Text is a synonym for a string that contains style and font 
information. You can coerce values using these synonyms, but the class of the 
resulting value is always the true value class.
For example, you can use the class identifier Text to coerce a date to a string.
set x to date "May 14, 1993" as text
class of x
--result: string
Although definitions for value class synonyms are provided, they do not 
correspond to separate value classes. For more information about coercing 
values using synonyms, see “Coercing Values” (page 97).
“RGB Color” (page 96)
A collection of three integer values that specify the 
red, green, and blue components of a color
“String” (page 80)
An ordered series of 1-byte characters
“Styled Clipboard 
Text” (page 96)
Special text data, retrieved from the Clipboard, 
that includes style and font information
“Styled Text” (page 84)
Synonym for a special string that includes style 
and font information
“Text” (page 87)
Synonym for class String
Unicode Text
Character data in the form of Unicode (2-byte) 
text; see “Unicode Text and International Text” 
(page 87)
“Unit Type Value 
Classes” (page 91)
Classes for working with measurements of length, 
area, cubic and liquid volume, mass, and 
temperature
Table 3-1
Common AppleScript value class identifiers (continued) 
Value class identifier
Description of corresponding value
C H A P T E R   3  
Values and Constants
58
Common Value Class Definitions
5/5/99  ã Apple Computer, Inc.
Boolean
3
A value of class Boolean is a logical truth value. The most common Boolean 
values are the results of comparisons, such as 
4 > 3 
and
WordCount = 5
. The 
two possible Boolean values are 
true
and 
false
.
LITERAL EXPRESSIONS
true
false
PROPERTY
Class
The class identifier for the object. This property is read-only, and 
its value is always 
boolean
.
ELEMENTS
None
OPERATORS
The operators that take Boolean values as operands are And, Or, Not, 
&
=
, and 
¹
.
The 
=
operator returns 
true
if both operands evaluate to the same Boolean value 
(either 
true
or 
false
); the 
¹
operator returns 
true
if the operands evaluate to 
different Boolean values.
The binary operators And and Or take Boolean expressions as operands and 
return Boolean values. An And operation, such as 
(2 > 1) and (4 > 3)
, has the 
value 
true
if both its operands are 
true
, and 
false
otherwise. An Or operation, 
such as 
(theString = "Yes") or (today = "Tuesday")
, has the value 
true
if 
either of its operands is 
true
.
The unary Not operator changes a 
true
value to 
false
or a 
false
value to 
true
.
For additional information on these operators, see “Operations” (page 213).
C H A P T E R   3
Values and Constants
Common Value Class Definitions
59
5/5/99  ã Apple Computer, Inc. 
COERCIONS SUPPORTED
AppleScript supports coercion of a Boolean value to a single-item list.
Class
3
A value of class Class is a class identifier. A class identifier is a reserved word 
that specifies the class to which an object or value belongs. The Class property 
of an object contains a class identifier value.
LITERAL EXPRESSIONS
string
integer
real
boolean
class
PROPERTY
Class
The class identifier for the object. This property is read-only, and 
its value is always 
class
.
ELEMENTS
None
OPERATORS
The operators that take class identifier values as operands are 
&
=
¹
, and As.
The operator As takes a value of one class and coerces it to a value of a class 
specified by a class identifier. For example, the following statement coerces a 
string into the corresponding real number, 
1.5
:
"1.5" as real --result: 1.5
For more information about coercing values, see “Expressions” (page 199).
C H A P T E R   3  
Values and Constants
60
Common Value Class Definitions
5/5/99  ã Apple Computer, Inc.
COERCIONS SUPPORTED
AppleScript supports coercion of a class identifier to a single-item list. 
Constant
3
A value of class Constant is a reserved word defined by AppleScript or an 
application in its dictionary. Applications define sets of values that can be used 
for parameters of a particular command. For example, the value of the 
saving
parameter of a Close command must be one of the three constants 
yes
no
, and 
ask
, where 
saving no
means do not save any changes, 
saving yes
means save 
without asking, and 
saving ask
means ask the user whether to save.
For more information on the use of constants in AppleScript, see “Constants” 
(page 100).
LITERAL EXPRESSIONS
yes
no
ask
plain
bold
italic
For a complete listing of the constants AppleScript provides, see Table A-3 
(page 358) and Table A-2 (page 355).
PROPERTY
Class
The class identifier for the object. This property is read-only, and 
its value is always 
constant
.
ELEMENTS
None
Documents you may be interested
Documents you may be interested