Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

355 lines
12 KiB

<Schema name="VssWriterMetadataInfo"
xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<AttributeType name="filespec" dt:type="string" required="yes">
<description>
File specification. Can include wildcard characters ? and *
</description>
</AttributeType>
<AttributeType name="path" dt:type="string" required="yes">
<description>
Path to a file. The path can include environment variables or
values extracted from registry keys.
</description>
</AttributeType>
<AttributeType name="recursive" dt:type="enumeration"
dt:values="yes no" default="no">
<description>
Is path specified recursive or limited to the directory that is specified.
</description>
</AttributeType>
<AttributeType name="alternatePath" dt:type="string" required="no">
<description>
Alternate path in which to find the file. Files in a file group may
have been copied to an alternative location by the writer. Backup should
pick up the files from the alternative location instead of the original
location but should restore the files to their original location
</description>
</AttributeType>
<AttributeType name="logicalPath" dt:type="string" required="no">
<description>
Logical path for a database or file group. This logical name uses backslash
as separators to form a logical namespace hierarchy
</description>
</AttributeType>
<AttributeType name="componentName" dt:type="string" required="yes">
<description>
Name used to identify a database or file group. May be qualified by a
logical path.
</description>
</AttributeType>
<AttributeType name="restoreMetadata" dt:type="enumeration"
dt:values="yes no" default="no">
<description>
Restore metadata exists for this database or file group. Backup
application should capture the restore metadata and pass it to the
writer on restore.
</description>
</AttributeType>
<AttributeType name="notifyOnBackupComplete" dt:type="enumeration"
dt:values="yes no" default="no">
<description>
Writer should be notified when backup is complete whether this
database or file group was successfully backed up or not.
</description>
</AttributeType>
<AttributeType name="caption" dt:type="string" required="no">
<description>
Textual Description of database or file group
</description>
</AttributeType>
<AttributeType name="icon" dt:type="string" required="no">
<description>
Icon associated with database or file group
</description>
</AttributeType>
<AttributeType name="selectable" dt:type="enumeration"
dt:values="yes no" default="yes">
<description>
Is this component selectable for backup or is it always backed up.
If no, then the component is always backed up if any other components of
the application/service are backed up. If yes, then the
component may be selectively backed up.
</description>
</AttributeType>
<AttributeType name="version" dt:type="enumeration" dt:values="1.0" required="yes">
<description>
Version of a specific document
</description>
</AttributeType>
<AttributeType name="writerId" dt:type="uuid" required="yes">
<description>
Unique id to identify the writer. Note that this identifies the
writer class rather than a specific instance of the writer.
</description>
</AttributeType>
<AttributeType name="instanceId" dt:type="uuid" required="no">
<description>
Unique id identifying the instance of a writer during backup. It
has no meaning during restore.
</description>
</AttributeType>
<ElementType name="WRITER_METADATA" content="eltOnly" model="open" order="one">
<description>
Information used by Backup application to backup/restore data
</description>
<attribute type="version" />
<element type="IDENTIFICATION" />
<element type="BACKUP_LOCATIONS" minOccurs="0" />
<element type="RESTORE_METHOD" minOccurs="0" />
</ElementType>
<ElementType name="IDENTIFICATION" content="empty" model="closed">
<description>
Identification of a service/application backing up data
</description>
<AttributeType name="friendlyName" dt:type="string" required="yes">
<description>
Friendly name used to describe the service or application.
</description>
</AttributeType>
<AttributeType name="usage" dt:type="enumeration"
dt:values="USER_DATA BOOTABLE_SYSTEM_STATE SYSTEM_SERVICE OTHER"
default="OTHER">
<description>
How the data associated with the writer is used. For now we
distinguish user data and system state.
</description>
</AttributeType>
<AttributeType name="dataSource" dt:type="enumeration"
dt:values="TRANSACTION_DB NONTRANSACTIONAL_DB OTHER"
default="OTHER">
<description>
Description of the nature of the data manager. Currently only
databases are identified
</description>
</AttributeType>
<attribute type="instanceId" required="yes" />
<attribute type="writerId" />
<attribute type="friendlyName" />
<attribute type="usage" />
<attribute type="dataSource" />
</ElementType>
<ElementType name="BACKUP_LOCATIONS" content="eltOnly" model="closed" order="many">
<description>
Files to include and exclude from the backup
</description>
<element type="INCLUDE_FILES" minOccurs="0" />
<element type="EXCLUDE_FILES" minOccurs="0" />
<element type="DATABASE" minOccurs="0"/>
<element type="FILE_GROUP" minOccurs="0" />
</ElementType>
<ElementType name="INCLUDE_FILES" content="empty">
<description>
Files to include in the backup, essentially files to backup if you want
to backup this application/service
</description>
<attribute type="path" />
<attribute type="filespec" />
<attribute type="recursive" />
<attribute type="alternatePath" />
</ElementType>
<ElementType name="EXCLUDE_FILES" content="empty">
<description>
Files that should always be excluded from the backup
</description>
<attribute type="path" />
<attribute type="filespec" />
<attribute type="recursive" />
</ElementType>
<ElementType name="DATABASE" content="eltOnly" model="closed" order="many">
<description>
List of databases of interest. This is used to allow selective
backup and restore of specific databases.
</description>
<attribute type= "logicalPath" />
<attribute type="componentName" />
<attribute type="caption" />
<attribute type="icon" />
<attribute type="restoreMetadata" />
<attribute type="notifyOnBackupComplete" />
<attribute type="selectable" />
<element type="DATABASE_FILES" minOccurs="1" />
<element type="DATABASE_LOGFILES" />
</ElementType>
<ElementType name="DATABASE_FILES" content="empty" model="closed">
<description>
Location of a set of database files. Filespec can include wildcards
</description>
<attribute type="path" />
<attribute type="filespec" />
</ElementType>
<ElementType name="DATABASE_LOGFILES" content="empty" model="closed">
<description>
Location of a set of database log files. Filespec can include
wildcards. Indication of whether database log files are truncated.
</description>
<attribute type="path" />
<attribute type="filespec" />
</ElementType>
<ElementType name="FILE_GROUP" content="eltOnly" model="closed" order="many">
<description>
A named group of files. Used to group sets of files into a group
that are backed up together
</description>
<attribute type="logicalPath" />
<attribute type="componentName" />
<attribute type="caption" />
<attribute type="icon" />
<attribute type="restoreMetadata" />
<attribute type="notifyOnBackupComplete" />
<attribute type="selectable" />
<element type="FILE_LIST" />
</ElementType>
<ElementType name="FILE_LIST" content="empty" model="closed">
<description>
Location of a set of files in a FILE_GROUP. Filespec can include
wildcards.
</description>
<attribute type="path" />
<attribute type="filespec" />
<attribute type="recursive" />
<attribute type="alternatePath" />
</ElementType>
<ElementType name="RESTORE_METHOD" content="eltOnly" model="open" order="many">
<description>
How restore should be performed. Includes specification of how files
should be restored as well as special steps that should occur in order
to complete the restore.
</description>
<AttributeType name="method" dt:type="enumeration"
required="yes"
dt:values="RESTORE_IF_NONE_THERE
RESTORE_IF_CAN_BE_REPLACED
STOP_RESTART_SERVICE
REPLACE_AT_REBOOT
RESTORE_TO_ALTERNATE_LOCATION
CUSTOM">
<description>
RESTORE_IF_NONE_THERE: i.e., can restore data if it is not at the
location where it was backed up from. This essentially allows
data to be restored to a clean system
RESTORE_IF_CAN_BE_REPLACED: Restore data if all of the files can
be replaced in the orgiginal backup location. Fails if any of
the files are open. If an alternate location is provided, files
will be placed there if they cannot be restored to their original
location.
STOP_RESTART_SERVICE: stop service (service attribute must be
specified). Restore files to original backup location.
Restart service. Fails if any of the files are open after the
service is stopped.
REPLACE_AT_REBOOT: Restore files to a temporary location. Use
MoveFileEx to replace the files at reboot.
RESTORE_TO_ALTERNATIVE_LOCATION: Restore files to an alternate
location. Typically writerRestore will indicate that the writer
will participate in the restore process
CUSTOM: restore process cannot be expressed using this specification
</description>
</AttributeType>
<AttributeType name="service" dt:type="string" required="no">
<description>
Must be specified if method="STOP_RESTART_SERVICE", indicates
service to be stopped before restoring files.
</description>
</AttributeType>
<AttributeType name="writerRestore" dt:type="enumeration"
dt:values="always never ifReplaceFails" default="never">
<description>
Whether writer should be invoked after files are restored to
disk. Options are always, never, and ifReplaceFails. The latter means
that the files will be restored to their original location. If one
or more of the files cannot be replaced, then the files will be
restored to an alternate location (must be specified via
ALTERNATE_LOCATION_MAPPING. After the files are restored, the writer
is invoked.
</description>
</AttributeType>
<AttributeType name="userProcedure" dt:type="uri" required="no">
<description>
Description of actions that the user should perform to restore the files.
The format of this string has yet to be determined.
</description>
</AttributeType>
<AttributeType name="rebootRequired" dt:type="enumeration"
dt:values="yes no" default="no" >
<description>
Should a reboot be performed after restoring the data for this
writer
</description>
</AttributeType>
<attribute type="method" />
<attribute type="service" />
<attribute type="writerRestore" />
<attribute type="userProcedure" />
<attribute type="rebootRequired" />
<element type="ALTERNATE_LOCATION_MAPPING" minOccurs="0" maxOccurs="*" />
</ElementType>
<ElementType name="ALTERNATE_LOCATION_MAPPING" content="empty" model="closed">
<description>
Mapping from a location that was backed up to a location to restore to.
</description>
<attribute type="path" />
<attribute type="filespec" />
<attribute type="recursive" />
<attribute type="alternatePath" />
</ElementType>
</Schema>