usr/src/man/zh_CN/aimanifest.1m
changeset 1763 ca9c641c8ec7
parent 1405 4202007bf64b
--- a/usr/src/man/zh_CN/aimanifest.1m	Mon Aug 06 10:15:40 2012 -0700
+++ b/usr/src/man/zh_CN/aimanifest.1m	Wed Aug 08 15:25:24 2012 -0700
@@ -1,32 +1,32 @@
 '\" te
-.\" Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
-.TH aimanifest 1M "2011 年 7 月 22 日" "SunOS 5.11" "系统管理命令"
+.\" Copyright (c) 2011, 2012, Oracle and/or its affiliates.All rights reserved.
+.TH aimanifest 1M "2012 年 6 月 19 日" "SunOS 5.11" "系统管理命令"
 .SH 名称
-aimanifest \- 修改自动化安装程序 (Automated Installer, AI) 使用的 XML 文件
+aimanifest \- 修改自动化安装程序 (Automated Installer, AI) 所使用的 XML 文件
 .SH 用法概要
 .LP
 .nf
-/usr/bin/aimanifest [\fB-h\fR]
+/usr/bin/aimanifest [-h]
 .fi
 
 .LP
 .nf
-aimanifest add [\fB-r\fR] \fIpath\fR \fIvalue\fR
+aimanifest add [-r] \fIpath\fR \fIvalue\fR
 .fi
 
 .LP
 .nf
-aimanifest get [\fB-r\fR] \fIpath\fR
+aimanifest get [-r] \fIpath\fR
 .fi
 
 .LP
 .nf
-aimanifest set [\fB-r\fR] \fIpath\fR \fIvalue\fR
+aimanifest set [-r] \fIpath\fR \fIvalue\fR
 .fi
 
 .LP
 .nf
-aimanifest load [\fB-i\fR] \fIfilename\fR
+aimanifest load [-i] \fIfilename\fR
 .fi
 
 .LP
@@ -37,18 +37,18 @@
 .SH 描述
 .sp
 .LP
-\fBaimanifest\fR 命令可创建新的 XML 清单,或修改现有的 XML 清单。尽管包含对某个 DTD 定义的有效 \fB!DOCTYPE\fR 引用的任何 XML 文件都可以使用 \fBaimanifest\fR,但是,该命令的目标用途是创建自动化安装程序 (Automated Installer, AI) 使用的派生清单。有关 AI 派生清单的信息,请参见"\fI安装 Oracle Solaris 11 系统\fR"。
+\fBaimanifest\fR 命令可创建新的 XML 清单或修改现有的清单。虽然 \fBaimanifest\fR 可用于包含对 DTD 定义的有效 \fB!DOCTYPE\fR 引用的任何 XML 文件,但它的设计目的是创建供自动化安装程序 (Automated Installer, AI) 使用的派生清单。有关 AI 派生清单的信息,请参见《\fI安装 Oracle Solaris 11 系统\fR》。
 .sp
 .LP
-可以多次调用 \fBaimanifest\fR 命令来开发清单。\fBAIM_MANIFEST\fR 环境变量用于指定 \fBaimanifest\fR 要修改的清单的位置。必须设置 \fBAIM_MANIFEST\fR。每次结合 \fBload\fR、\fBadd\fR 或 \fBset\fR 子命令调用 \fB aimanifest\fR 命令时都会打开、修改和保存 \fBAIM_MANIFEST \fR 文件。
+可以多次调用 \fBaimanifest\fR 命令以开发清单。\fBAIM_MANIFEST\fR 环境变量指定供 \fBaimanifest\fR 进行修改的清单的位置。必须设置 \fBAIM_MANIFEST\fR。每次调用带有 \fBload\fR、\fBadd\fR 或 \fBset\fR 子命令的 \fBaimanifest\fR 命令时,都会打开、修改和保存 \fBAIM_MANIFEST\fR 文件。
 .sp
 .LP
-\fBaimanifest\fR 命令可以修改的 \fBAIM_MANIFEST\fR 文件至少必须同时包含下列两个片段:
+\fBaimanifest\fR 命令可以修改的最小 \fBAIM_MANIFEST\fR 文件必须包含以下两项:
 .RS +4
 .TP
 .ie t \(bu
 .el o
-对某个 DTD 的 \fB!DOCTYPE\fR 引用,该引用对于所开发的 XML 清单应该有效。
+对适用于所开发的 XML 清单的 DTD 的 \fB!DOCTYPE\fR 引用。
 .RE
 .RS +4
 .TP
@@ -58,51 +58,51 @@
 .RE
 .sp
 .LP
-如果使用一个空的 \fBAIM_MANIFEST\fR 文件开始操作(就像 AI 执行派生的清单脚本时那样),那么,第一个 \fBaimanifest\fR 命令必须指定 \fBload\fR 子命令来加载最起码所需的 \fBAIM_MANIFEST\fR 文件。用于修改清单的后续 \fBaimanifest\fR 命令将使用该 DTD 来确定在开发清单中的哪个位置添加元素。
+如果开始时使用空 \fBAIM_MANIFEST\fR 文件,则在 AI 要执行派生清单脚本时,第一个 \fBaimanifest\fR 命令必须指定 \fBload\fR 子命令,以至少装入所需的最小 \fBAIM_MANIFEST\fR 文件。修改清单的后续 \fBaimanifest\fR 命令使用 DTD 来确定在正在开发的清单中的何处添加元素。
 .sp
 .LP
-如果既要在 \fBstdout\fR 和 \fBstderr\fR 中显示消息,又要在某个文件中保存错误消息和提示性消息,请将 \fBAIM_LOGFILE\fR 环境变量设置为某个日志文件位置。信息将附加在该日志文件中。该日志文件不被清除。
+除了将消息显示到 \fBstdout\fR 和 \fBstderr\fR 外,若要将错误消息和信息性消息保存到文件,请将 \fBAIM_LOGFILE\fR 环境变量设置为日志文件位置。信息将附加到该日志文件。该日志文件不会被清除。
 .SH 选项
 .sp
 .LP
-\fBaimanifest\fR 命令包括以下选项:
+\fBaimanifest\fR 命令包含以下选项:
 .sp
 .ne 2
 .mk
 .na
 \fB\fB-h\fR,\fB--help\fR\fR
 .ad
-.RS 15n
-.rt  
+.sp .6
+.RS 4n
 显示用法帮助消息。
 .RE
 
 .sp
 .LP
-\fBaimanifest\fR 命令的 \fBadd\fR、\fBget\fR 和 \fBset\fR 子命令包括以下选项:
+\fBaimanifest\fR 命令的 \fBadd\fR、\fBget\fR 和 \fBset\fR 子命令具有以下选项:
 .sp
 .ne 2
 .mk
 .na
 \fB\fB-r\fR, \fB--return-path\fR\fR
 .ad
-.RS 21n
-.rt  
-返回该 \fBaimanifest\fR 命令创建或对其执行操作的 XML 元素的路径。该返回路径是一个节点 ID 链。您可以保存这个返回路径,以便对 \fBaimanifest\fR 执行后续调用时使用。使用 \fB-r\fR 选项返回的路径,比使用 XML 元素和属性值指定路径更加可靠,因为在构建 AI 清单时,这些值可能会更改。有关 \fB- r\fR 选项返回的路径的更多信息,请参见"返回路径"部分。
+.sp .6
+.RS 4n
+返回该 \fBaimanifest\fR 命令创建(或对其执行操作)的 XML 元素的路径。该返回路径是节点 ID 链。您可以保存该返回路径值,以在对 \fBaimanifest\fR 的后续调用中使用。与使用 XML 元素和属性值指定路径相比,使用 \fB-r\fR 选项返回的路径会更为可靠,因为值可能会随所构建的 AI 清单而更改。有关 \fB-r\fR 选项返回的路径的更多信息,请参见“返回路径”部分。
 .RE
 
 .sp
 .LP
-\fBaimanifest\fR 命令的 \fBload\fR 子命令包括以下选项:
+\fBaimanifest\fR 命令的 \fBload\fR 子命令包含以下选项:
 .sp
 .ne 2
 .mk
 .na
 \fB\fB-i\fR, \fB--incremental\fR\fR
 .ad
-.RS 21n
-.rt  
-添加新数据之前不清除 \fBAIM_MANIFEST\fR 数据。
+.sp .6
+.RS 4n
+在添加新数据之前,不清除 \fBAIM_MANIFEST\fR 数据。
 .RE
 
 .SH 子命令
@@ -113,20 +113,20 @@
 .ne 2
 .mk
 .na
-\fB\fBadd [\fB-r\fR | \fB--return-path\fR] \fI path\fR \fIvalue\fR\fR\fR
+\fB\fBaimanifest add [-r | --return-path] \fIpath \fR \fIvalue\fR\fR\fR
 .ad
 .sp .6
 .RS 4n
-向 XML 清单添加新元素。在 \fIpath\fR 上使用值 \fIvalue\fR 添加新元素。有关 \fIpath \fR 的更多信息,请参见"操作数"部分。如果 \fIpath\fR 以某个属性结尾 (\fB @\fIattr\fR\fR),则新元素将包含 \fI attr\fR 属性,\fIvalue\fR 是该属性的值。
+将新元素添加到 XML 清单。在 \fIpath\fR 上添加新元素,其值为 \fIvalue\fR。有关 \fIpath\fR 的更多信息,请参见“操作数”部分。如果 \fIpath\fR 以属性 (\fB@\fIattr\fR\fR) 结尾,则新元素具有 \fIattr\fR 属性,而 \fIvalue\fR 为该属性的值。
 .sp
 除了检查 \fIpath\fR 中的父/子关系外,不执行任何验证。
 .sp
-\fB-r\fR 选项返回新增节点的路径。有关更多信息,请参见"返回路径"部分。
+\fB-r\fR 选项可返回新添加节点的路径。有关更多信息,请参见“返回路径”部分。
 .sp
-如果父路径与 \fBAIM_MANIFEST\fR 文件中的某个元素匹配,则该路径只能与一个元素匹配。新元素创建为匹配父元素的子级。路径可以指定元素和属性值,以匹配唯一的父元素,如本部分的"示例 2:包含值的路径"中所示。
+如果父路径与 \fBAIM_MANIFEST\fR 文件中的元素匹配,则它必须仅与一个元素匹配。新元素将创建为匹配的父元素的子项。该路径可以指定元素和属性值以匹配唯一的父元素,如本部分中“示例 2:带有值的路径”所示。
 .sp
 .LP
-如果父路径与 \fBAIM_MANIFEST\fR 文件中的元素不匹配,则会根据需要创建新元素,并将新的子元素添加到新父级。根据以下规则,将所添加元素的路径与现存元素分割开来:
+如果父路径与 \fBAIM_MANIFEST\fR 文件中的元素不匹配,则根据需要创建新元素并将新子元素添加到新父元素中。根据以下规则,将已添加元素的路径从以前存在的元素中分割出来:
 .RS +4
 .TP
 .ie t \(bu
@@ -141,205 +141,205 @@
 .RE
 .sp
 .LP
-使用此 XML 清单结构分析以下示例:
+使用该 XML 清单模式分析以下示例:
 .RS +4
 .TP
 .ie t \(bu
 .el o
-清单以单个 A 节点开头。
+清单以单个 A 节点开始。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-A 节点只能包含一个 B 节点子级。
+A 节点只能有一个 B 节点子项。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-B 节点可以包含多个 C 节点子级。
+B 节点可以有多个 C 节点子项。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-C 节点可以包含多个 D 节点子级。
+C 节点可以有多个 D 节点子项。
 .RE
-\fB示例 1:简单路径\fR。AI 清单包含一个 A 节点、一个 B 节点和一个 C 节点: \fB/A/B/C\fR. 使用 \fIpath\fR 值 \fB /A/B/C/D\fR 发出了 \fB add\fR 子命令。在此情况下,将会创建新的 C 节点,因为 C 节点是路径中可以包含具有相同标记的同级的首批节点。将为新的 C 节点添加新的 D 节点作为子级。生成的清单的结构为 \fB/A/B/{C,C/D}\fR。针对 D 的不同值发出相同的命令将会导致生成三个 C 节点: \fB/A/B/{C,C/D,C/D}\fR.
+\fB示例 1:简单路径\fR。AI 清单具有一个 A 节点、一个 B 节点和一个 C 节点:\fB/A/B/C\fR。在 \fIpath\fR 为 \fB/A/B/C/D\fR 的情况下发出 \fBadd\fR 子命令。在这种情况下,将创建新的 C 节点,因为 C 节点是路径中可以具有带相同标记的同级节点的第一个节点。将添加新 D 节点作为新 C 节点的子项。生成的清单结构为 \fB/A/B/{C,C/D}\fR。针对不同的 D 值发出同一命令将会产生三个 C 节点:\fB/A/B/{C,C/D,C/D}\fR。
 .sp
-\fB示例 2:包含值的路径\fR。AI 清单包含一个 A 节点、一个 B 节点和两个 C 节点。其中只有一个 C 节点使用值 1,因此,清单的结构为 \fB/A/B/{C,C=1}\fR。使用 \fIpath \fR 值 \fB/A/B/C=1/D\fR 和 \fIvalue\fR 值 10 发出了 \fBadd\fR 子命令。在此情况下,将不会添加新的 C 节点,原因是为 C 指定值 1 将会标识一个唯一节点,并且无法在指定某个值的分支位置上或该位置的前面分割路径。可以分割该路径的第一个位置是 D。将新增一个值为 10 的 D 节点,作为值为 1 的 C 节点的子级。生成的清单的结构为 \fB/A/B/{C,C=1/D=10}\fR。使用值 20 针对 D 发出同一命令会导致生成 \fB /A/B/{C,C=1/{D=10,D=20}}\fR。
+\fB示例 2:带有值的路径\fR。AI 清单具有一个 A 节点、一个 B 节点和两个 C 节点。只有其中一个 C 节点的值为 1,因此清单的结构为 \fB/A/B/{C,C=1}\fR。在 \fIpath\fR 为 \fB/A/B/C=1/D\fR 和 \fIvalue\fR 为 10 的情况下发出 \fBadd\fR 子命令。在这种情况下,不会添加新的 C 节点,因为对 C 指定值 1 会标识唯一的节点,该路径不能在指定了值的分支上或其之前进行分割。该路径可以进行分割的第一个位置是 D 处。将添加值为 10 的新 D 节点作为值为 1 的 C 节点的子项。生成的清单结构为 \fB/A/B/{C,C=1/D=10}\fR。针对值为 20 的 D 发出同一命令将产生 \fB/A/B/{C,C=1/{D=10,D=20}}\fR。
 .RE
 
 .sp
 .ne 2
 .mk
 .na
-\fB\fBget [\fB-r\fR | \fB--return-path\fR] \fI path\fR\fR\fR
+\fB\fBaimanifest get [-r | --return-path] \fIpath \fR\fR\fR
 .ad
 .sp .6
 .RS 4n
-检索元素或属性值。对于空的元素或属性值,将显示空字符串 (\fB""\fR)。\fI path\fR 必须匹配某个现有的唯一元素或属性。有关 \fIpath\fR 的更多信息,请参见"操作数"部分。
+检索元素或属性值。对于空元素或属性值,将显示空字符串 (\fB""\fR)。\fIpath\fR 必须与唯一的现有元素或属性匹配。有关 \fIpath\fR 的更多信息,请参见“操作数”部分。
 .sp
-\fB-r\fR 选项返回所访问节点的路径,作为第二个返回字符串。有关更多信息,请参见"返回路径"部分。
+\fB-r\fR 选项可返回已访问节点的路径作为第二个返回字符串。有关更多信息,请参见“返回路径”部分。
 .RE
 
 .sp
 .ne 2
 .mk
 .na
-\fB\fBset [\fB-r\fR | \fB--return-path\fR] \fI path\fR \fIvalue\fR\fR\fR
+\fB\fBaimanifest set [-r | --return-path] \fIpath \fR \fIvalue\fR\fR\fR
 .ad
 .sp .6
 .RS 4n
-更改现有元素或属性的值,或者为现有元素创建新属性。不执行验证。
+更改现有元素或属性的值,或为现有元素创建新属性。不执行任何验证。
 .sp
-更改现有元素的值时,\fIpath\fR 必须匹配某个现有的唯一元素。如果该元素包含标记相同的同级,则使用元素值或属性或者目标元素的子元素来使路径保持唯一。请参见"路径操作数"部分。
+更改现有元素的值时,\fIpath\fR 必须与唯一的现有元素匹配。如果该元素具有带相同标记的同级元素,则使用元素值或属性,或目标元素的子元素来使路径唯一。请参见“Path 操作数”部分。
 .sp
-设置某个属性的值时,该属性不需要存在,但该属性所属的元素必须存在。
+设置某个属性值时,该属性不需要存在,但该属性所属的元素必须存在。
 .sp
-\fB-r\fR 选项返回所更改元素的路径。有关更多信息,请参见"返回路径"部分。
+\fB-r\fR 选项可返回已更改元素的路径。有关更多信息,请参见“返回路径”部分。
 .RE
 
 .sp
 .ne 2
 .mk
 .na
-\fB\fBload [\fB-i\fR | \fB--incremental\fR] \fI filename\fR\fR\fR
+\fB\fBaimanifest load [-i | --incremental] \fIfilename \fR\fR\fR
 .ad
 .sp .6
 .RS 4n
-从文件 \fI filename\fR 加载某个 XML 清单或部分 XML 清单。除了检查元素的父/子关系外,不执行任何验证。
+从文件 \fIfilename\fR 中装入 XML 清单或部分 XML 清单。除了检查元素的父/子关系外,不执行任何验证。
 .sp
-如果未指定 \fB-i\fR 选项,则会覆盖任何现有的 XML 数据。\fBAIM_MANIFEST\fR 文件中的所有数据将替换为 \fIfilename\fR 文件的内容。\fIfilename \fR 文件必须包含对某个 DTD 的 \fB!DOCTYPE\fR 引用,以便后续的 \fBaimanifest\fR 命令能够修改此文件。
+如果未指定 \fB-i\fR 选项,将覆盖任何现有 XML 数据。\fBAIM_MANIFEST\fR 文件中的所有数据将替换为 \fIfilename\fR 文件的内容。\fIfilename\fR 文件必须包括对 DTD 的 \fB!DOCTYPE\fR 引用,以便后续 \fBaimanifest\fR 命令可以修改该文件。
 .sp
-如果指定了 \fB-i\fR 选项,则添加新数据之前不清除 \fBAIM_MANIFEST \fR 数据。而是以递增方式在现有 XML 数据中插入新数据,或者将新数据与现有 XML 数据合并。\fBAIM_MANIFEST\fR 中的 \fB!DOCTYPE\fR 引用指定的 DTD 用于确定如何以及在何处合并 \fIfilename\fR 数据。如果缺少 \fB!DOCTYPE\fR 引用,将使用位于 \fB/usr/share/install/ai.dtd\fR 的 AI 清单 DTD。如果无法使用 DTD 对 \fIfilename\fR 中的数据进行核对,将返回非零错误状态。
+如果指定 \fB-i\fR 选项,则在添加新数据之前,不清除 \fBAIM_MANIFEST\fR 数据。而是,以增量方式插入新数据或将新数据与现有 XML 数据合并。\fBAIM_MANIFEST\fR 中 \fB!DOCTYPE\fR 引用指定的 DTD 用于确定合并 \fIfilename\fR 数据的方式和位置。如果缺少 \fB!DOCTYPE\fR 引用,将使用位于 \fB/usr/share/install/ai.dtd\fR 的 AI 清单 DTD。如果 \fIfilename\fR 中的数据无法与 DTD 协调,将返回非零错误状态。
 .sp
 .LP
-以下事项会影响新数据在 \fBAIM_MANIFEST\fR 清单中的插入位置:
+以下注意事项会影响将新数据插入到 \fBAIM_MANIFEST\fR 清单的位置:
 .RS +4
 .TP
 .ie t \(bu
 .el o
-靠近 \fBAIM_MANIFEST\fR 数据路径开头的元素标记与 \fIfilename\fR 数据路径的匹配程度
+\fBAIM_MANIFEST\fR 数据路径和 \fIfilename\fR 数据路径开头附近元素的标记的匹配程度
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-这些 \fBAIM_MANIFEST\fR 数据元素下面允许哪些子元素
+这些 \fBAIM_MANIFEST\fR 数据元素下所允许的子元素
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-在哪个位置允许标记相同的同级元素
+允许带相同标记的同级元素的位置
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-无子级 \fBAIM_MANIFEST\fR 数据节点位于哪个位置
+不带子项的 \fBAIM_MANIFEST\fR 数据节点所在的位置
 .RE
 .sp
 .LP
-在处理 \fIfilename\fR 数据的每个元素时,如果下列所有情况属实,则一般而言,不会为 \fBAIM_MANIFEST\fR 数据中的该元素创建新节点。而是使用新数据替换某个现有节点。
+处理 \fIfilename\fR 数据的每个元素时,如果符合以下所有条件,则通常不会在 \fBAIM_MANIFEST\fR 数据中为此元素创建新节点。而是,使用新数据替换现有节点。
 .RS +4
 .TP
 .ie t \(bu
 .el o
-两组数据都包含一个标记与位置相同的节点。
+两个数据集均包含具有相同标记和相同位置的节点。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-\fBAIM_MANIFEST\fR 中的 \fB!DOCTYPE\fR 引用指定的 DTD 不允许这两个节点作为标记相同的同级元素共同存在。
+\fBAIM_MANIFEST\fR 中 \fB!DOCTYPE\fR 引用指定的 DTD 不允许这两个节点作为带相同标记的同级元素一起存在。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-\fIfilename\fR 数据元素包含子级。
+\fIfilename\fR 数据元素具有子项。
 .RE
-插入 \fIfilename\fR 中的某个元素后,将在尽量靠近 \fBAIM_MANIFEST\fR 数据根、开始创建新节点的位置完成分割。将在允许带相同标记的同级元素的第一个位置,或者 \fB AIM_MANIFEST\fR 中不存在带相同标记的元素的第一个相应位置,创建分割操作的第一个新节点。
+插入 \fIfilename\fR 中的元素时,将在开始创建新节点的位置进行分割,尽可能地接近 \fBAIM_MANIFEST\fR 数据根。分割的第一个新节点将在允许带相同标记的同级元素的最早点创建,或者在相应的最早点(如果 \fBAIM_MANIFEST\fR 中不存在带相同标记的元素)创建。
 .sp
 .LP
-使用此 XML 清单结构分析以下示例:
+使用该 XML 清单模式分析以下示例:
 .RS +4
 .TP
 .ie t \(bu
 .el o
-清单以单个 A 节点开头。
+清单以单个 A 节点开始。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-A 节点只能包含一个 B 节点子级。
+A 节点只能有一个 B 节点子项。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-B 节点可以包含多个 C 节点子级。
+B 节点可以有多个 C 节点子项。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-B 节点只能包含一个 E 节点子级。
+B 节点只能有一个 E 节点子项。
 .RE
 .sp
 .LP
-\fB示例 1:插入标记相同的元素\fR。如果 \fBAIM_MANIFEST\fR 的内容为 \fB/A/B/C1/D1\fR,\fIfilename\fR 的内容为 \fB/A/B/C2/D2\fR,则发出 \fBload -i\fR 命令后,\fBAIM_MANIFEST \fR 文件的内容为 \fB/A/B/{C1/D1,C2/D2}\fR。C 节点是第一个可以添加新节点的位置。\fIfilename \fR 数据中的 C 节点添加在 \fBAIM_MANIFEST \fR 数据中的现有 C 节点之后。如果两个 A 元素使用不同的值,或者两个 B 元素使用不同值,则 \fIfilename\fR 元素的值将替换 \fBAIM_MANIFEST\fR 元素的值。如果两个 A 元素使用不同的属性,或者两个 B 元素使用不同的属性,则会合并这些属性值。
+\fB示例 1:插入带相同标记的元素\fR。如果 \fBAIM_MANIFEST\fR 的内容为 \fB/A/B/C1/D1\fR,而 \fIfilename\fR 的内容为 \fB/A/B/C2/D2\fR,则在执行 \fBload -i\fR 命令后,\fBAIM_MANIFEST\fR 文件的内容为 \fB/A/B/{C1/D1,C2/D2}\fR。C 节点是可以添加新节点的第一个位置。\fIfilename\fR 数据中的 C 节点将添加到 \fBAIM_MANIFEST\fR 数据的现有 C 节点之后。如果两个 A 元素具有不同的值或者两个 B 元素具有不同的值,则 \fIfilename\fR 元素的值将替换 \fBAIM_MANIFEST\fR 元素的值。如果两个 A 元素具有不同的属性或者两个 B 元素具有不同的属性,则将合并属性值。
 .RS +4
 .TP
 .ie t \(bu
 .el o
-同时在 \fBAIM_MANIFEST\fR 文件和 \fIfilename\fR 文件中存在的 A 与 B 的属性将使用合并文件中 \fI filename\fR 文件的值。
+同时存在于 \fBAIM_MANIFEST\fR 文件和 \fIfilename\fR 文件中的 A 和 B 的属性在合并文件中采用 \fIfilename\fR 文件中的值。
 .RE
 .RS +4
 .TP
 .ie t \(bu
 .el o
-在 \fBAIM_MANIFEST \fR 文件或 \fIfilename\fR 文件中存在(但不在这两个文件中同时存在)的 A 与 B 的属性全部保留在合并文件中。
+存在于 \fBAIM_MANIFEST\fR 文件或 \fIfilename\fR 文件但不同时存在于这两个文件中的 A 和 B 的属性将都保留在合并文件中。
 .RE
-\fB示例 2:插入标记不同的元素\fR。如果 \fBAIM_MANIFEST\fR 的内容为 \fB/A/B/C/D\fR,\fIfilename\fR 的内容为 \fB/A/B/E/F\fR,则发出 \fBload -i\fR 命令后,\fBAIM_MANIFEST \fR 文件的内容为 \fB/A/B/{E/F,C/D}\fR。E 节点添加在 DTD 允许这种节点的第一个位置。元素 A 和 B 的值是 \fIfilename\fR 中的值,A 和 B 的属性已根据上述"示例 1"从 \fIfilename\fR 合并为 \fBAIM_MANIFEST \fR。
+\fB示例 2:插入带不同标记的元素\fR。如果 \fBAIM_MANIFEST\fR 的内容为 \fB/A/B/C/D\fR,而 \fIfilename\fR 的内容为 \fB/A/B/E/F\fR,则在执行 \fBload -i\fR 命令后,\fBAIM_MANIFEST\fR 文件的内容为 \fB/A/B/{E/F,C/D}\fR。E 节点将添加到 DTD 允许该节点的第一个位置处。元素 A 和 B 的值是 \fIfilename\fR 中的值,而 A 和 B 的属性将从 \fIfilename\fR 合并到 \fBAIM_MANIFEST\fR,如上面的示例 1 所述。
 .sp
-有时,无法确定正确的合并位置。如果需要跟在待合并节点后面的某个同级尚未添加,则可能会发生此情况。为避免出现此问题,请按照 DTD 强制要求的顺序,将多个节点或子树添加到某个公用父节点。如果无法确定某个节点在其新同级中的适当位置,请将此节点放置在新同级列表的末尾。
+有时,无法确定正确的合并位置。如果尚未在要合并的节点后添加所需的同级节点,则可能会发生这种情况。要避免出现此问题,请以 DTD 要求的顺序将多个节点或子树添加到公共父节点。如果无法确定节点的正确位置,请将节点放置在它的新同级节点列表的末尾。
 .RE
 
 .sp
 .ne 2
 .mk
 .na
-\fB\fBvalidate\fR\fR
+\fB\fBaimanifest validate\fR\fR
 .ad
 .sp .6
 .RS 4n
-根据 \fB!DOCTYPE\fR 语句中引用的 DTD 验证 \fBAIM_MANIFEST\fR 清单。错误将在 \fBstderr\fR 中显示。如果验证失败,则返回非零状态。
+针对 \fB!DOCTYPE\fR 语句中引用的 DTD 验证 \fBAIM_MANIFEST\fR 清单。错误将输出到 \fBstderr\fR。如果验证失败,将返回非零状态。
 .RE
 
 .SH 操作数
 .sp
 .LP
-需要使用以下操作数。
+需要以下操作数。
 .SS "Filename 操作数"
 .sp
 .LP
-\fBload\fR 子命令需要使用 \fIfilename\fR 操作数,该操作数是要加载到 \fBAIM_MANIFEST \fR 清单的完整清单或部分清单的名称。
+\fBload\fR 子命令需要 \fIfilename\fR 操作数,它是要装入到 \fBAIM_MANIFEST\fR 清单的完整或部分清单的名称。
 .SS "Value 操作数"
 .sp
 .LP
-\fBadd\fR 和 \fBset\fR 子命令需要使用 \fIvalue\fR 操作数。\fIvalue\fR 操作数是 \fIpath\fR 操作数指定的元素或属性的有效值。
+\fBadd\fR 和 \fBset\fR 子命令需要 \fIvalue\fR 操作数。\fIvalue\fR 操作数是 \fIpath\fR 操作数指定的元素或属性的有效值。
 .SS "Path 操作数"
 .sp
 .LP
-\fBaimanifest\fR 命令的 \fBadd\fR、\fBget\fR 和 \fBset\fR 子命令需要使用 \fIpath\fR 操作数。该路径定义了由元素和属性组成的 XML 分层结构中的某个节点。
+\fBaimanifest\fR 命令的 \fBadd\fR、\fBget\fR 和 \fBset\fR 子命令需要 \fIpath\fR 操作数。路径定义元素和属性的 XML 分层结构中的节点。
 .sp
 .LP
-XML 元素分层结构又称为 XML 树。在以下部分 AI 清单中,\fBauto_install\fR 元素是树根,\fBai_instance\fR 和 \fBsoftware \fR 元素是分枝,或子树的根。
+XML 元素分层结构也称为 XML 树。在以下部分 AI 清单中,\fBauto_install\fR 元素是树的根,\fBai_instance\fR 和 \fBsoftware\fR 元素是分支或子树的根。
 .sp
 .in +2
 .nf
@@ -353,13 +353,13 @@
 
 .sp
 .LP
-在 \fBaimanifest\fR 路径语法中,使用正斜杠字符 (/) 表示树结构中的分枝。在当前示例中,\fBsoftware\fR 元素的路径为 \fB/auto_install/ai_instance/software \fR。
+在 \fBaimanifest\fR 路径语法中,使用正斜杠字符 (/) 表示树结构中的分支。在当前示例中,\fBsoftware\fR 元素的路径为 \fB/auto_install/ai_instance/software\fR。
 .sp
 .LP
-属性与某个元素绑定。在 \fBaimanifest\fR 路径语法中,使用 @ 符号标识属性名称。\fBsoftware\fR 元素的 \fB type\fR 属性的路径为 \fB/auto_install/ai_instance/software@type \fR。
+属性将绑定到一个元素。在 \fBaimanifest\fR 路径语法中,使用 at 符号 (@) 标识属性名称。\fBsoftware\fR 元素的 \fBtype\fR 属性的路径为 \fB/auto_install/ai_instance/software@type\fR。
 .sp
 .LP
-\fBaimanifest\fR\fIpath\fR 操作数必须对应于单个元素。请根据需要包含元素和属性值,以使路径保持唯一。例如,要为以下部分 AI 清单中定义的第二个分片指定大小,可以使用路径 \fB/auto_install/ai_instance/target/disk/slice[@name="4"]/size@val\fR 来指明要为哪个分片指定大小。
+\fBaimanifest\fR \fIpath\fR 操作数必须对应于单个元素。根据需要包括元素和属性值以使路径唯一。例如,要指定以下部分 AI 清单中定义的第二个分片的大小,您可以使用路径 \fB/auto_install/ai_instance/target/disk/slice[@name="4"]/size@val\fR 来标识要为其指定大小的分片。
 .sp
 .in +2
 .nf
@@ -378,13 +378,13 @@
 
 .sp
 .LP
-允许相对路径。以上段落中显示的 \fBslice\fR 路径在指定时可以使用 \fBai_instance\fR、\fB target\fR、\fBdisk\fR 或 \fBslice\fR 开头,因为只有一个 \fBslice\fR 使用了 \fBname\fR 属性值 4。例如,可以使用路径 \fBslice[@name="4"]/size@val\fR。
+允许使用相对路径。可以从 \fBai_instance\fR、\fBtarget\fR、\fBdisk\fR 或 \fBslice\fR 开始指定上一段落中显示的 \fBslice\fR 路径,因为只有一个 \fBname\fR 属性值为 4 的 \fBslice\fR。例如,您可以使用路径 \fBslice[@name="4"]/size@val\fR。
 .sp
 .LP
-如果 \fIpath\fR 中的某个 \fIvalue\fR 包含正斜杠字符,则必须将该值括在单引号或双引号中,例如 \fB/name="pkg:/entire"\fR。
+如果 \fIpath\fR 内的 \fIvalue\fR 包含正斜杠字符,则该值必须用单引号或双引号括起来,如 \fB/name="pkg:/entire"\fR 所示。
 .sp
 .LP
-如果 \fBaimanifest\fR 调用发生在 shell 脚本中,包含引号的值可能需要额外的特殊处理。在 shell 脚本中,可能需要使用前导反斜杠字符 (\e) 对 \fBaimanifest\fR 路径值中的引号进行转义,使得 shell 不会删除或解释这些引号。检查使用的 shell 规则。以下示例显示了某个 \fBksh93\fR 脚本中的一个包含正斜杠字符的值:
+如果 \fBaimanifest\fR 调用位于 shell 脚本中,则包含引号的值可能需要进行其他特殊处理。在 shell 脚本中,\fBaimanifest\fR 路径值中的引号可能需要用前导反斜杠字符 (\e) 进行转义,以便 shell 不会删除或解释引号。检查要使用的 shell 规则。以下示例显示了 \fBksh93\fR 脚本中带有正斜杠字符的值:
 .sp
 .in +2
 .nf
@@ -394,10 +394,10 @@
 
 .sp
 .LP
-本手册页中的大多数示例都省略了反斜杠转义字符,因为本手册页假定 \fBaimanifest\fR 不是在脚本或特定 shell 中调用的。有关 AI 派生的清单脚本的信息,请参见"\fI安装 Oracle Solaris 11 系统\fR"。
+本手册页中的大多数示例都省略了反斜杠转义字符,因为本手册页假定不在脚本或特定 shell 中调用 \fBaimanifest\fR。有关 AI 派生清单脚本的信息,请参见《\fI安装 Oracle Solaris 11 系统\fR》。
 .sp
 .LP
-下列格式的分支显示了如何构造某个元素或元素属性的路径。
+以下分支格式说明了如何构造元素或元素属性的路径。
 .sp
 .ne 2
 .mk
@@ -406,7 +406,7 @@
 .ad
 .sp .6
 .RS 4n
-\fBA\fR 是元素的标记名称,例如 \fB /auto_install\fR。此分支规范又称为简单分支。仅包含简单分支的路径称为简单路径。
+\fBA\fR 是元素的标记名称,如 \fB/auto_install\fR 所示。该分支规范也称为简单分支。只具有简单分支的路径称为简单路径。
 .RE
 
 .sp
@@ -417,7 +417,7 @@
 .ad
 .sp .6
 .RS 4n
-\fBA\fR 是元素的标记名称,\fI value\fR 是该元素的值,例如 \fB/name="pkg:/entire"\fR。
+\fBA\fR 是元素的标记名称,\fIvalue\fR 是该元素的值,如 \fB/name="pkg:/entire"\fR 所示。
 .RE
 
 .sp
@@ -428,7 +428,7 @@
 .ad
 .sp .6
 .RS 4n
-\fBA\fR 是元素,\fBB\fR 是作为 \fBA\fR 子级的元素,\fBC\fR 是作为 \fBB\fR 子级的元素,\fIvalue\fR 是 \fBC\fR 元素的值。此路径格式指定了 \fB A\fR 元素,该元素包含值为 \fIvalue\fR 的孙级元素 \fBC\fR。例如,如果您的 AI 清单包含多个 software 部分,则可以使用此格式对用于安装软件包 \fBpkg:/entire\fR 的 software 部分进行操作,如以下路径所示:
+\fBA\fR 是一个元素,\fBB\fR 是 \fBA\fR 的子元素,\fBC\fR 是 \fBB\fR 的子元素,\fIvalue\fR 是 \fBC\fR 元素的值。该路径格式指定的 \fBA\fR 元素具有值为 \fIvalue\fR 的孙元素 \fBC\fR。例如,如果 AI 清单具有多个软件部分,您可以使用此格式对安装软件包 \fBpkg:/entire\fR 的软件部分进行操作,如以下路径所示:
 .sp
 .in +2
 .nf
@@ -446,7 +446,7 @@
 .ad
 .sp .6
 .RS 4n
-\fBA\fR 是元素,\fBAattr\fR 是 \fBA\fR 的属性,\fIvalue\fR 是 \fBAattr\fR 属性的值。此路径格式指定了 \fBA\fR 元素,该元素包含值为 \fIvalue\fR 的属性 \fBAattr\fR。例如,如果您的 AI 清单定义了多个分片,则可以使用此格式对 \fBname\fR 值为 4 的分片进行操作,例如 \fBslice[@name="4"]\fR
+\fBA\fR 是一个元素,\fBAattr\fR 是 \fBA\fR 的属性,而 \fIvalue\fR 是 \fBAattr\fR 属性的值。该路径格式指定的 \fBA\fR 元素具有值为 \fIvalue\fR 的属性 \fBAattr\fR。例如,如果 AI 清单定义了多个分片,您可以使用此格式对 \fBname\fR 值为 4 的分片进行操作,如 \fBslice[@name="4"]\fR 所示。
 .RE
 
 .sp
@@ -457,7 +457,7 @@
 .ad
 .sp .6
 .RS 4n
-\fBA\fR 是元素,\fBB\fR 是 \fBA\fR 的子级,\fBC\fR 是 \fBB\fR 的子级,\fB Cattr\fR 是 \fBC\fR 的属性,\fIvalue\fR 是 \fBCattr\fR 属性的值。此路径格式指定了 \fBA\fR 元素,该元素包含一个孙级元素 \fBC\fR,该孙级元素的 \fBCattr\fR 属性值为 \fIvalue\fR。例如,如果您的 AI 清单包含多个 software 部分,则可以使用此格式对包含某个 publisher 部分(其 name 值为 \fBsolaris\fR)的 software 部分进行操作,例如,使用路径 \fB software[source/publisher@name="solaris"] \fR。
+\fBA\fR 是一个元素,\fBB\fR 是 \fBA\fR 的子元素,\fBC\fR 是 \fBB\fR 的子元素,\fBCattr\fR 是 \fBC\fR 的属性,而 \fIvalue\fR 是 \fBCattr\fR 属性的值。该路径格式指定的 \fBA\fR 元素具有孙元素 \fBC\fR,C 元素具有值为 \fIvalue\fR 的属性 \fBCattr\fR。例如,如果您的 AI 清单包含多个 software 部分,则可以使用此格式对包含某个 publisher 部分(其 name 值为 \fBsolaris\fR)的 software 部分进行操作,例如,使用路径 \fB software[source/publisher@name="solaris"] \fR。
 .RE
 
 .sp
@@ -468,9 +468,9 @@
 .ad
 .sp .6
 .RS 4n
-\fB/A[1]\fR 指定清单中某个 \fB A\fR 元素的第一个实例。例如,如果您的 AI 清单包含多个 software 部分,则可以使用此格式对第二个 software 部分进行操作,例如 \fB/auto_install[1]/ai_instance[1]/software[2] \fR。
+\fB/A[1]\fR 指定清单中 \fBA\fR 元素的第一个实例。例如,如果 AI 清单具有多个软件部分,您可以使用此格式对第二个软件部分进行操作,如 \fB/auto_install[1]/ai_instance[1]/software[2]\fR 所示。
 .sp
-这是 \fB-r\fR 选项返回的路径格式。请参见"返回路径"部分。
+这是由 \fB-r\fR 选项返回的路径格式。请参见“返回路径”部分。
 .RE
 
 .sp
@@ -481,7 +481,7 @@
 .ad
 .sp .6
 .RS 4n
-此路径指定了 \fBA\fR 元素的 \fBAattr\fR 属性。此路径没有指定 \fBA\fR 元素,而是指定了 \fBAattr\fR 属性。使用此格式可以设置或获取 \fBAattr\fR 属性。
+该路径指定了 \fBA\fR 元素的 \fBAattr\fR 属性。该路径不指定 \fBA\fR 元素,而是指定 \fBAattr\fR 属性。可使用此格式设置或获取 \fBAattr\fR 属性。
 .RE
 
 .sp
@@ -492,7 +492,7 @@
 .ad
 .sp .6
 .RS 4n
-此路径格式指定了 \fBA\fR 元素的 \fBAattr\fR 属性,该元素包含值为 \fIvalue\fR 的孙级元素 \fBC\fR。
+该路径指定了 \fBA\fR 元素的 \fBAattr\fR 属性,A 元素具有值为 \fIvalue\fR 的孙元素 \fBC\fR。
 .RE
 
 .sp
@@ -503,7 +503,7 @@
 .ad
 .sp .6
 .RS 4n
-此路径格式指定了 \fBA\fR 元素的 \fBAattr\fR 属性,该元素包含孙级元素 \fBC\fR,该孙级元素的 \fBCattr\fR 属性值为 \fIvalue\fR。
+该路径指定了 \fBA\fR 元素的 \fBAattr\fR 属性,A 元素具孙元素 \fBC\fR,C 元素具有值为 \fIvalue\fR 的属性 \fBCattr\fR。
 .RE
 
 .sp
@@ -514,16 +514,16 @@
 .ad
 .sp .6
 .RS 4n
-此路径指定了值为 \fIvalue\fR 的 \fBB\fR 元素的 \fBBattr\fR 属性。\fBB\fR 元素是 \fBA\fR 元素的子级。
+该路径指定了值为 \fIvalue\fR 的 \fBB\fR 元素的 \fBBattr\fR 属性。\fBB\fR 元素是 \fBA\fR 元素的子元素。
 .RE
 
 .SH 返回路径
 .sp
 .LP
-使用 \fB-r\fR 选项,\fBadd\fR、\fBget \fR 和 \fBset\fR 子命令将返回子命令创建或访问的元素的地址。这个返回的地址采用了节点 ID 链的格式。可以使用这个返回的地址来再次访问相同的元素,即使与该元素关联的值已发生更改。
+通过 \fB-r\fR 选项,\fBadd\fR、\fBget\fR 和 \fBset\fR 子命令可返回由子命令创建或访问的元素地址。该返回地址采用节点 ID 链的格式。该返回地址可用于再次访问同一元素,即使与该元素关联的值已更改。
 .sp
 .LP
-下列示例表明,使用 \fB-r\fR 选项返回的地址,比使用用于指定元素和属性值的路径可能要容易得多。从以下节点树开始:
+以下示例说明,由 \fB-r\fR 选项返回的地址可能比指定元素和属性值的路径更易于使用。从以下节点树开始:
 .sp
 .in +2
 .nf
@@ -544,7 +544,7 @@
 
 .sp
 .LP
-添加一个 \fBname\fR 属性值为 \fBdata2\fR、\fBname_type\fR 属性值为 \fBvolid\fR 的新 \fBdisk\fR 节点:
+添加具有 \fBname\fR 属性值 \fBdata2\fR 和 \fBname_type\fR 属性值 \fBvolid\fR 的新 \fBdisk\fR 节点:
 .sp
 .in +2
 .nf
@@ -566,11 +566,11 @@
 
 .sp
 .LP
-使用一条命令就能轻松添加一个包含单个属性的新 \fBdisk_name\fR 元素。要添加第二个和第三个属性,必须指定要更改的 \fBdisk_name\fR 元素。比较用于多次访问同一节点的以下两种方法。
-.SS "通过使用值来指定路径"
+可以使用单个命令轻松添加具有一个属性的新 \fBdisk_name\fR 元素。要添加第二个和第三个属性,您必须指定要更改的 \fBdisk_name\fR 元素。比较以下用于多次访问同一节点的两种方法。
+.SS "使用值指定路径"
 .sp
 .LP
-本示例中的命令通过使用值来指定路径。请注意,您必须在第一个命令中分配唯一值,以便能够使用该值在后续命令中指定唯一路径。如果值发生变化,该方法可能会产生错误的结果。
+此示例中的命令使用值指定路径。请注意,您必须在第一个命令中分配一个唯一值,以便可以使用该值在后续命令中指定唯一路径。如果值已更改,该方法可能会产生错误的结果。
 .sp
 .in +2
 .nf
@@ -583,10 +583,10 @@
 .in -2
 .sp
 
-.SS "通过使用返回路径来指定路径"
+.SS "使用返回路径指定路径"
 .sp
 .LP
-多次访问同一节点的最可靠方法是将路径保存到新的 \fBdisk_name\fR 元素,然后使用这个保存的路径进行后续访问。
+多次访问同一节点的最可靠方法是将路径保存到新 \fBdisk_name\fR 元素,然后使用该保存路径进行后续访问。
 .sp
 .in +2
 .nf
@@ -599,7 +599,7 @@
 
 .sp
 .LP
-通过 \fB- r\fR 选项返回到 \fB$NewDisk\fR 的路径以 ID 形式表示节点,并且未赋值:
+通过 \fB-r\fR 选项返回到 \fB$NewDisk\fR 的路径采用 ID 来表示节点,并且没有值:
 .sp
 .in +2
 .nf
@@ -612,7 +612,7 @@
 .SH 示例
 .sp
 .LP
-要尝试演示这些示例,需要设置 \fBAIM_MANIFEST\fR。
+要尝试执行这些示例,您需要设置 \fBAIM_MANIFEST\fR。
 .sp
 .in +2
 .nf
@@ -623,12 +623,12 @@
 
 .sp
 .LP
-\fBaimanifest\fR 命令可以修改的 \fBAIM_MANIFEST\fR 文件至少必须同时包含下列两个片段:
+\fBaimanifest\fR 命令可以修改的最小 \fBAIM_MANIFEST\fR 文件必须包含以下两项:
 .RS +4
 .TP
 .ie t \(bu
 .el o
-对某个 DTD 的 \fB!DOCTYPE\fR 引用,该引用对于所开发的 XML 清单应该有效。
+对适用于所开发的 XML 清单的 DTD 的 \fB!DOCTYPE\fR 引用。
 .RE
 .RS +4
 .TP
@@ -638,7 +638,7 @@
 .RE
 .sp
 .LP
-以下示例显示了某个 AI 清单最起码所需的 \fBAIM_MANIFEST\fR 清单文件:
+以下示例显示 AI 清单的最小 \fBAIM_MANIFEST\fR 清单文件:
 .sp
 .in +2
 .nf
@@ -649,7 +649,7 @@
 
 .sp
 .LP
-通常,您会在对现有有效 AI 清单执行操作的派生清单脚本中使用 \fBaimanifest\fR 命令。要尝试演示这些示例,您可以复制 \fB/usr/share/auto_install/manifest/default.xml \fR,然后定义 \fBAIM_MANIFEST\fR 以引用该副本。确保该副本可写。
+通常,您将在派生清单脚本中使用 \fBaimanifest\fR 命令,对现有的有效 AI 清单进行操作。要尝试执行这些示例,您可以复制 \fB/usr/share/auto_install/manifest/default.xml\fR,然后定义 \fBAIM_MANIFEST\fR 以引用该副本。确保该副本可写。
 .LP
 \fB示例 1 \fR设置 \fBauto_reboot\fR 属性
 .sp
@@ -672,36 +672,36 @@
 .sp
 
 .LP
-\fB示例 3 \fR通过使用值路径添加发布者
+\fB示例 3 \fR使用值路径添加发布者
 .sp
 .LP
-此示例中的软件包系统信息库是位于 \fBfile:///net/host2/export/extras_repo \fR 的文件系统信息库。发布者为 \fBextras\fR。
+该示例中的软件包系统信息库是 \fBfile:///net/host2/export/extras_repo\fR 中的文件系统信息库。发布者为 \fBextras\fR。由于一个 \fBsoftware\fR 元素只能具有一个 \fBsource\fR 元素,因此本示例会将新 \fBpublisher\fR 元素添加到包含 \fBsolaris\fR 发布者的 \fBsource\fR 元素中。
 
 .sp
 .in +2
 .nf
 $ \fBaimanifest add \e\fR
-> \fBsoftware/source/publisher@name extras\fR
+> \fBsoftware[@type=IPS]/source[publisher@name=solaris]/publisher@name \e\fR
+\fBextras\fR
 $ \fBaimanifest add \e\fR
-> \fBsoftware/source/publisher[@name=extras]/origin@name \e\fR
+> \fBpublisher[@name=extras]/origin@name \e\fR
 > \fBfile:///net/host2/export/extras_repo\fR
-$ \fBaimanifest set \e\fR
-> \fBsoftware[source/publisher@name=extras]@name extras\fR
-$ \fBaimanifest set \e\fR
-> \fBsoftware[source/publisher@name=extras]@type IPS\fR
 .fi
 .in -2
 .sp
 
 .sp
 .LP
-这些 \fBaimanifest\fR 命令将导致生成下列 AI 清单条目。\fBsoftware\fR 元素是允许相同标记的同级的 \fIpath\fR 中的第一个元素,因此,该 XML 代码部分跟在已出现在输出文件中的最后一个 \fBsoftware\fR 部分的后面。
+如果您以 \fBdefault.xml\fR AI 清单起步,则这些 \fBaimanifest\fR 命令将导致以下 AI 清单条目。为简明起见,省略了 \fBdestination\fR 和 \fBsoftware_data\fR 元素。
 
 .sp
 .in +2
 .nf
-<software name="extras" type="IPS">
+<software type="IPS">
   <source>
+    <publisher name="solaris">
+      <origin name="http://pkg.oracle.com/solaris/release"/>
+    </publisher>
     <publisher name="extras">
       <origin name="file:///net/host2/export/extras_repo"/>
     </publisher>
@@ -711,45 +711,49 @@
 .in -2
 
 .LP
-\fB示例 4 \fR通过使用返回路径添加发布者
+\fB示例 4 \fR使用返回路径添加发布者
 .sp
 .LP
-该示例与前一示例相同,但使用不同的方法来实现相同的结果。
+此示例与上一示例相同,但使用不同的方法实现相同的结果。
 
 .sp
 .in +2
 .nf
-$ \fBSW_PATH=$(aimanifest add -r \e\fR
-> \fB/auto_install/ai_instance/software@name extras)\fR
-$ \fBaimanifest set ${SW_PATH}@type IPS\fR
-$ \fBPUB_PATH=$(aimanifest add ${SW_PATH}/source/publisher@name extras)\fR
-$ \fBaimanifest add \e\fR
-\fB${PUB_PATH}/origin@name file:///net/host2/export/extras_repo)\fR
+$ \fBNEW_PUB=$(aimanifest add -r \e\fR
+> \fBsoftware[@type=IPS]/source[publisher@name=solaris]/publisher@name \e\fR
+\fBextras)\fR
+$ \fBecho $NEW_PUB\fR
+/auto_install[1]/ai_instance[1]/software[1]/source[1]/publisher[2]
+$ \fBaimanifest add ${NEW_PUB}/origin@name \e\fR
+\fBfile:///net/host2/export/extras_repo\fR
 .fi
 .in -2
 .sp
 
 .LP
-\fB示例 5 \fR通过添加清单段来添加发布者
+\fB示例 5 \fR通过添加清单片段添加发布者
 .sp
 .LP
-该示例与前一示例相同,但使用第三种方法来实现相同的结果。
+本示例通过装入包含一个部分 AI 清单的文件添加 \fBextras\fR 发布者。在这种情况下,会单独生成一个附加的 IPS 类型的 \fBsoftware\fR 元素且定义有 \fBextras\fR 发布者。此新的 \fBsoftware\fR 元素将插入到定义了 \fBsolaris\fR 发布者的原始 IPS \fBsoftware\fR 元素之后。以这一新 \fBsoftware\fR 元素内的 \fBsoftware_data \fR 元素命名的软件包仅从 \fBextras\fR 发布者或此新 \fBsoftware\fR 元素中定义的其他发布者中进行搜索。此清单片段还定义了一个要安装的软件包,因为不包含要安装的软件的 \fBsoftware\fR 元素不起作用。
 
 .sp
 .LP
-创建一个名称为 \fBextras.xml\fR、包含以下内容的文件:
+创建具有以下内容的名为 \fBextras.xml\fR 的文件:
 
 .sp
 .in +2
 .nf
 <auto_install>
   <ai_instance>
-    <software name="extras" type="IPS">
+    <software type="IPS">
       <source>
         <publisher name="extras">
           <origin name="file:///net/host2/export/extras_repo"/>
         </publisher>
       </source>
+      <software_data action="install">
+        <name>pkg:/package/from/extras_repo</name>
+      </software_data> 
     </software>
   </ai_instance>
 </auto_install>
@@ -758,7 +762,7 @@
 
 .sp
 .LP
-尽管您只需要 software 部分,但您必须同时包含 \fB auto_install\fR 和 \fBai_instance\fR 元素。必须包含 \fIpath\fR 操作数中所需的任何内容。如果加载的文件为 \fBauto_install\fR 或 \fB ai_instance\fR 元素指定了属性,则这些属性值将替换现有值,或者被添加。
+即使您只需要 \fBsoftware\fR 部分,您也必须包括 \fBauto_install\fR 和 \fBai_instance\fR 元素。如果装入的文件为 \fBauto_install\fR 或 \fBai_instance\fR 元素指定属性,则这些属性值将替换现有值,或者将添加这些属性值。
 
 .sp
 .LP
@@ -773,16 +777,16 @@
 .sp
 
 .LP
-\fB示例 6 \fR通过使用值路径添加软件包
+\fB示例 6 \fR使用值路径添加软件包
 .sp
 .LP
-该示例通过指定发布者名称作为路径中的值,将一个软件包添加到前一示例生成的 \fBsoftware\fR 元素,该元素包含名称为 \fBextras\fR 的 \fBpublisher\fR 元素。该示例还显示了如何使用相对路径规范。
+该示例通过将发布者名称指定为路径中的值,来将软件包添加到具有名为 \fBsolaris\fR 的 \fBpublisher\fR 元素的 \fBsoftware\fR 元素。
 
 .sp
 .in +2
 .nf
 $ \fBaimanifest add \e\fR
-> \fBsoftware[source/publisher@name=extras]/software_data/name \e\fR
+> \fBsoftware[source/publisher@name=solaris]/software_data/name \e\fR
 > \fBpkg:/system/utils\fR
 .fi
 .in -2
@@ -790,40 +794,83 @@
 
 .sp
 .LP
-该 \fBaimanifest\fR 命令添加了以下 \fBsoftware_data \fR 部分。
+如果您以 \fBdefault.xml\fR AI 清单起步,则 \fBaimanifest\fR 命令会添加下面显示的第二个 \fBsoftware_data \fR 元素。
 
 .sp
 .in +2
 .nf
-<software name="extras" type="IPS">
-  <source>
-    <publisher name="extras">
-      <origin name="file:///net/host2/export/extras_repo"/>
-    </publisher>
-  </source>
-  <software_data>
-    <name>pkg:/system/utils</name>
-  </software_data>
-</software>
+<software_data action="install">
+  <name>pkg:/entire@latest</name>
+  <name>pkg:/group/system/solaris-large-server</name>
+</software_data>
+<software_data>
+  <name>pkg:/system/utils</name>
+</software_data>
 .fi
 .in -2
 
 .LP
-\fB示例 7 \fR通过使用返回路径添加软件包
+\fB示例 7 \fR使用返回路径添加软件包
 .sp
 .LP
-该示例与前一示例相同,但使用不同的方法来实现相同的结果。该示例没有指定发布者名称作为路径中的值,而是使用了示例"通过使用返回路径添加发布者"所述的保存在 \fBSW_PATH\fR 中的 \fBsoftware\fR 元素的路径。
+此示例与上一示例相同,但使用不同的方法实现相同的结果。本示例使用带有返回路径选项的 \fBget\fR 子命令将软件包添加到定义了 \fBsolaris\fR 发布者的 \fBsoftware\fR 元素。
 
 .sp
 .in +2
 .nf
-$ \fBaimanifest add ${SW_PATH}/software_data/name pkg:/system/utils\fR
+$ \fBNEW_PKG=$(aimanifest get -r \e\fR
+\fBsoftware[source/publisher@name=solaris] | awk '{print $2 }')\fR
+$ \fBecho $NEW_PKG\fR
+/auto_install[1]/ai_instance[1]/software[1]
+$ \fBaimanifest add ${NEW_PKG}/software_data/name \e\fR
+\fBpkg:/system/utils\fR
 .fi
 .in -2
 .sp
 
 .LP
-\fB示例 8 \fR验证清单
+\fB示例 8 \fR通过添加清单片段添加软件包
+.sp
+.LP
+本示例通过装入包含一个部分 AI 清单的文件来添加软件包。在这种情况下,会单独生成一个附加的 IPS 类型的 \fBsoftware\fR 元素,且该元素插入到原始 IPS \fBsoftware\fR 元素之后。这一新 \fBsoftware\fR 只包含一个 \fBsoftware_data\fR 元素;没有指定任何 \fBsource\fR 元素。以这一新 \fBsoftware\fR 元素中的 \fBsoftware_data\fR 元素命名的软件包会从上述的 \fBsoftware\fR 元素中定义的发布者中进行搜索。
+
+.sp
+.LP
+创建具有以下内容的名为 \fBnewpkg.xml\fR 的文件:
+
+.sp
+.in +2
+.nf
+<auto_install>
+  <ai_instance>
+    <software type="IPS">
+      <software_data>
+        <name>pkg:/system/utils</name>
+      </software_data>
+    </software>
+  </ai_instance>
+</auto_install>
+.fi
+.in -2
+
+.sp
+.LP
+即使您只需要 \fBsoftware\fR 部分,您也必须包括 \fBauto_install\fR 和 \fBai_instance\fR 元素。如果装入的文件为 \fBauto_install\fR 或 \fBai_instance\fR 元素指定属性,则这些属性值将替换现有值,或者将添加这些属性值。
+
+.sp
+.LP
+使用以下命令将此 \fBsoftware\fR 部分添加到 \fBAIM_MANIFEST\fR 清单:
+
+.sp
+.in +2
+.nf
+$ \fBaimanifest load -i newpkg.xml\fR
+.fi
+.in -2
+.sp
+
+.LP
+\fB示例 9 \fR验证清单
 .sp
 .LP
 验证 \fBAIM_MANIFEST\fR 清单。
@@ -848,7 +895,7 @@
 .ad
 .RS 13n
 .rt  
-该命令已成功处理。
+该命令被成功处理。
 .RE
 
 .sp
@@ -869,9 +916,9 @@
 .na
 \fB\fBAIM_MANIFEST\fR\fR
 .ad
-.RS 16n
-.rt  
-该环境变量值是正在构建的 AI 清单的位置。
+.sp .6
+.RS 4n
+该环境变量的值是所构建的 AI 清单的位置。
 .RE
 
 .sp
@@ -880,15 +927,15 @@
 .na
 \fB\fBAIM_LOGFILE\fR\fR
 .ad
-.RS 16n
-.rt  
-该环境变量值是 \fBaimanifest\fR 操作的日志文件的位置。
+.sp .6
+.RS 4n
+该环境变量的值是 \fBaimanifest\fR 操作的日志文件位置。
 .RE
 
 .SH 属性
 .sp
 .LP
-有关下列属性的描述,请参见 \fBattributes\fR(5):
+有关下列属性的说明,请参见 \fBattributes\fR(5):
 .sp
 
 .sp
@@ -900,7 +947,7 @@
 属性类型属性值
 _
 可用性T{
-\fBsystem/install/auto-install/auto-install-common\fR(系统/安装/自动安装/通用自动安装)
+\fBsystem/install/auto-install/auto-install-common\fR
 T}
 _
 接口稳定性Uncommitted(未确定)
@@ -909,7 +956,7 @@
 .SH 另请参见
 .sp
 .LP
-installadm(1M)、\fBpkg\fR(1)
+\fBinstalladm\fR(1M)
 .sp
 .LP
-Part\ III, \fI"Installing Using an Install Server,"\fR in \fI《Installing Oracle Solaris 11 Systems》\fR
+《\fI《安装 Oracle Solaris 11 系统》\fR》中的第 III 部分,“\fI"使用安装服务器安装"\fR”