<?xml version="1.0" encoding="utf-8" ?>
<!--
CDDL HEADER START
The contents of this file are subject to the terms of the
Common Development and Distribution License, Version 1.0 only
(the "License"). You may not use this file except in compliance
with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at usr/src/OPENSOLARIS.LICENSE.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]
CDDL HEADER END
* Copyright 2003 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
* ident "%Z%%M% %I% %E% SMI"
*
* Describes a storage configuration used by metassist(1M).
*
* See volume-config(4) for a detailed description of the syntax.
-->
<!ELEMENT volume-config (diskset,disk*,slice*,hsp*,(concat|stripe)*,mirror*)>
<!-- The existing disk set to use -->
<!ELEMENT diskset EMPTY>
<!ATTLIST diskset name CDATA #REQUIRED>
<!--
*****************************************************************
*
* Disk definition
*
*****************************************************************
-->
<!-- Describes a disk that should be added to the disk set -->
<!ELEMENT disk EMPTY>
<!-- The full name of the disk -->
<!ATTLIST disk name CDATA #REQUIRED>
<!--
*****************************************************************
*
* Slice/soft partition definitions
*
*****************************************************************
-->
<!--
* Describes a newly-defined or existing slice.
*
* If existing, only the name is required.
*
* If newly-defined, the start sector and size are also required.
-->
<!ELEMENT slice EMPTY>
<!-- The full name of the slice -->
<!ATTLIST slice name CDATA #REQUIRED>
<!-- The starting sector for this slice -->
<!ATTLIST slice startsector CDATA #IMPLIED>
<!--
* The size of this slice in blocks or sectors.
-->
<!ATTLIST slice sizeinblocks CDATA #IMPLIED>
<!--
*****************************************************************
*
* HSP definition
*
*****************************************************************
-->
<!--
* Describes a new or existing HSP
*
* The slices defined within will be added to this HSP.
-->
<!ELEMENT hsp (slice*)>
<!ATTLIST hsp name CDATA #REQUIRED>
<!--
*****************************************************************
*
* Concat definition
*
*****************************************************************
-->
<!--
* Describes a new or existing concat
*
* If existing, only the name is required.
*
* If new, the underlying slices and soft partitions are also
* required. The HSP definition is optional.
-->
<!ELEMENT concat (slice*,hsp?)>
<!ATTLIST concat name CDATA #REQUIRED>
<!--
*****************************************************************
*
* Stripe definition
*
*****************************************************************
-->
<!--
* Describes a new or existing stripe
*
* If existing, only the name is required.
*
* If new, the underlying slices and soft partitions are also
* required. The interlace and HSP definitions are optional.
-->
<!ELEMENT stripe (slice*,hsp?)>
<!ATTLIST stripe name CDATA #REQUIRED>
<!--
* The interlace of this stripe, in the format <value><units>,
* where <units> is "BLOCKS", "KB", or "MB", and <value> is the
* multiplier of the units.
-->
<!ATTLIST stripe interlace CDATA #IMPLIED>
<!--
*****************************************************************
*
* Mirror definition
*
*****************************************************************
-->
<!--
* Describes a new mirror
*
* The name of the mirror, and the underlying submirrors are
* required. The remaining attributes are optional.
-->
<!ELEMENT mirror ((concat|stripe)+)>
<!ATTLIST mirror name CDATA #REQUIRED>
<!ATTLIST mirror read (ROUNDROBIN|GEOMETRIC|FIRST) #IMPLIED>
<!ATTLIST mirror write (PARALLEL|SERIAL) #IMPLIED>
<!ATTLIST mirror passnum CDATA #IMPLIED>