diff options
-rw-r--r-- | schemas/atom.xsd | 2 | ||||
-rw-r--r-- | schemas/base.xsd | 2 | ||||
-rw-r--r-- | schemas/bundle.xsd | 29 | ||||
-rw-r--r-- | schemas/clients.xsd | 2 | ||||
-rw-r--r-- | schemas/deps.xsd | 16 | ||||
-rw-r--r-- | schemas/info.xsd | 4 | ||||
-rw-r--r-- | schemas/metadata.xsd | 12 | ||||
-rw-r--r-- | schemas/pkglist.xsd | 52 | ||||
-rw-r--r-- | schemas/pkgtype.xsd | 55 | ||||
-rw-r--r-- | schemas/rules.xsd | 52 | ||||
-rw-r--r-- | schemas/services.xsd | 34 | ||||
-rw-r--r-- | schemas/servicetype.xsd | 31 | ||||
-rw-r--r-- | schemas/translation.xsd | 14 |
13 files changed, 158 insertions, 147 deletions
diff --git a/schemas/atom.xsd b/schemas/atom.xsd index b1cf72dbb..94d70fed7 100644 --- a/schemas/atom.xsd +++ b/schemas/atom.xsd @@ -12,4 +12,4 @@ <xsd:attribute type='xsd:string' name='altsrc' /> </xsd:complexType> -</xsd:schema>
\ No newline at end of file +</xsd:schema> diff --git a/schemas/base.xsd b/schemas/base.xsd index 1ec830054..f3751dfa7 100644 --- a/schemas/base.xsd +++ b/schemas/base.xsd @@ -27,7 +27,7 @@ <xsd:element name='Base'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Group' type='ContainerType'/> + <xsd:element name='Group' type='ContainerType'/> <xsd:element name='Package' type='StructureEntry'/> <xsd:element name='Service' type='StructureEntry'/> <xsd:element name='ConfigFile' type='StructureEntry'/> diff --git a/schemas/bundle.xsd b/schemas/bundle.xsd index 323a640f1..3c0bc1eb8 100644 --- a/schemas/bundle.xsd +++ b/schemas/bundle.xsd @@ -8,6 +8,9 @@ </xsd:annotation> <xsd:include schemaLocation="atom.xsd"/> + <xsd:include schemaLocation="pkglist.xsd"/> + <xsd:include schemaLocation="rules.xsd"/> + <xsd:include schemaLocation="services.xsd"/> <xsd:complexType name='GroupType'> <xsd:choice minOccurs='0' maxOccurs='unbounded'> @@ -18,6 +21,12 @@ <xsd:element name='SymLink' type='StructureEntry'/> <xsd:element name='Permissions' type='StructureEntry'/> <xsd:element name='Action' type='StructureEntry'/> + <xsd:element name='BoundPackage' type='PackageType'/> + <xsd:element name='BoundService' type='ServiceType'/> + <xsd:element name='BoundDirectory' type='DirectoryType'/> + <xsd:element name='BoundSymLink' type='SymLinkType'/> + <xsd:element name='BoundPermissions' type='PermissionsType'/> + <xsd:element name='BoundAction' type='ActionType'/> <xsd:element name='Group' type='GroupType'/> </xsd:choice> <xsd:attribute type='xsd:string' name='name' use='required'/> @@ -27,14 +36,20 @@ <xsd:element name='Bundle'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Package' type='StructureEntry'/> - <xsd:element name='Service' type='StructureEntry'/> - <xsd:element name='ConfigFile' type='StructureEntry'/> - <xsd:element name='Directory' type='StructureEntry'/> - <xsd:element name='SymLink' type='StructureEntry'/> - <xsd:element name='Permissions' type='StructureEntry'/> + <xsd:element name='Package' type='StructureEntry'/> + <xsd:element name='Service' type='StructureEntry'/> + <xsd:element name='ConfigFile' type='StructureEntry'/> + <xsd:element name='Directory' type='StructureEntry'/> + <xsd:element name='SymLink' type='StructureEntry'/> + <xsd:element name='Permissions' type='StructureEntry'/> <xsd:element name='Action' type='StructureEntry'/> - <xsd:element name='Group' type='GroupType'/> + <xsd:element name='BoundPackage' type='PackageType'/> + <xsd:element name='BoundService' type='ServiceType'/> + <xsd:element name='BoundDirectory' type='DirectoryType'/> + <xsd:element name='BoundSymLink' type='SymLinkType'/> + <xsd:element name='BoundPermissions' type='PermissionsType'/> + <xsd:element name='BoundAction' type='ActionType'/> + <xsd:element name='Group' type='GroupType'/> </xsd:choice> <xsd:attribute type='xsd:string' name='name'/> <xsd:attribute type='xsd:string' name='version'/> diff --git a/schemas/clients.xsd b/schemas/clients.xsd index d7701f837..3464921e6 100644 --- a/schemas/clients.xsd +++ b/schemas/clients.xsd @@ -31,7 +31,7 @@ <xsd:element name='Clients'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Client' type='ClientType'/> + <xsd:element name='Client' type='ClientType'/> <xsd:element name='Clients'> <xsd:complexType> <xsd:choice> diff --git a/schemas/deps.xsd b/schemas/deps.xsd index 5b47af133..ab38c3aec 100644 --- a/schemas/deps.xsd +++ b/schemas/deps.xsd @@ -35,15 +35,15 @@ <xsd:element name='Dependencies'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Package' type='StructureEntry'/> - <xsd:element name='Service' type='StructureEntry'/> - <xsd:element name='ConfigFile' type='StructureEntry'/> - <xsd:element name='Directory' type='StructureEntry'/> - <xsd:element name='SymLink' type='StructureEntry'/> - <xsd:element name='Permission' type='StructureEntry'/> - <xsd:element name='Group' type='GroupType'/> + <xsd:element name='Package' type='StructureEntry'/> + <xsd:element name='Service' type='StructureEntry'/> + <xsd:element name='ConfigFile' type='StructureEntry'/> + <xsd:element name='Directory' type='StructureEntry'/> + <xsd:element name='SymLink' type='StructureEntry'/> + <xsd:element name='Permission' type='StructureEntry'/> + <xsd:element name='Group' type='GroupType'/> </xsd:choice> <xsd:attribute type='xsd:string' name='priority' use='required'/> </xsd:complexType> </xsd:element> -</xsd:schema>
\ No newline at end of file +</xsd:schema> diff --git a/schemas/info.xsd b/schemas/info.xsd index 95d786ed9..347a29efa 100644 --- a/schemas/info.xsd +++ b/schemas/info.xsd @@ -27,8 +27,8 @@ <xsd:element name='FileInfo'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Group' type='GroupType'/> - <xsd:element name='Info' type='InfoType'/> + <xsd:element name='Group' type='GroupType'/> + <xsd:element name='Info' type='InfoType'/> </xsd:choice> </xsd:complexType> </xsd:element> diff --git a/schemas/metadata.xsd b/schemas/metadata.xsd index 9cb2e08f1..639dc94bc 100644 --- a/schemas/metadata.xsd +++ b/schemas/metadata.xsd @@ -27,14 +27,14 @@ <xsd:complexType name='groupType'> <xsd:choice minOccurs='0' maxOccurs='unbounded'> <xsd:element name='Bundle'> - <xsd:complexType> - <xsd:attribute type='xsd:string' name='name' use='required'/> - </xsd:complexType> + <xsd:complexType> + <xsd:attribute type='xsd:string' name='name' use='required'/> + </xsd:complexType> </xsd:element> <xsd:element name='Group' > - <xsd:complexType> - <xsd:attribute name='name' use='required'/> - </xsd:complexType> + <xsd:complexType> + <xsd:attribute name='name' use='required'/> + </xsd:complexType> </xsd:element> </xsd:choice> <xsd:attribute type='booleanType' name='profile' use='optional'/> diff --git a/schemas/pkglist.xsd b/schemas/pkglist.xsd index d4828716a..b92764751 100644 --- a/schemas/pkglist.xsd +++ b/schemas/pkglist.xsd @@ -8,56 +8,14 @@ </xsd:documentation> </xsd:annotation> + <xsd:include schemaLocation="pkgtype.xsd"/> <xsd:include schemaLocation="types.xsd"/> - <xsd:complexType name='PackageType'> - <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Ignore'> - <xsd:complexType> - <xsd:attribute type='xsd:string' name='name'/> - </xsd:complexType> - </xsd:element> - <xsd:element name='Instance'> - <xsd:complexType> - <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Ignore'> - <xsd:complexType> - <xsd:attribute type='xsd:string' name='name'/> - </xsd:complexType> - </xsd:element> - </xsd:choice> - <xsd:attribute name='arch' type='xsd:string'/> - <xsd:attribute name='epoch' type='xsd:string'/> - <xsd:attribute name='version' type='xsd:string'/> - <xsd:attribute name='release' type='xsd:string'/> - <xsd:attribute name='simplefile' type='xsd:string'/> - <xsd:attribute name='pkg_verify' type='xsd:string'/> - <xsd:attribute name='verify_flags' type='xsd:string'/> - <xsd:attribute name='installed_action' type='xsd:string'/> - <xsd:attribute name='version_fail_action' type='xsd:string'/> - <xsd:attribute name='verify_fail_action' type='xsd:string'/> - </xsd:complexType> - </xsd:element> - </xsd:choice> - <xsd:attribute type='xsd:string' name='name'/> - <xsd:attribute type='xsd:string' name='version'/> - <xsd:attribute type='xsd:string' name='file'/> - <xsd:attribute type='xsd:string' name='verify'/> - <xsd:attribute type='xsd:string' name='simplefile'/> - <xsd:attribute type='xsd:string' name='reloc'/> - <xsd:attribute type='xsd:string' name='multiarch'/> - <xsd:attribute type='xsd:string' name='srcs'/> - <xsd:attribute type='xsd:string' name='type'/> - <xsd:attribute type='xsd:string' name='bname'/> - <xsd:attribute name='pkg_checks' type='xsd:string'/> - <xsd:attribute name='verify_flags' type='xsd:string'/> - </xsd:complexType> - - <xsd:complexType name='ContainerType'> + <xsd:complexType name='PackageContainerType'> <xsd:choice minOccurs='0' maxOccurs='unbounded'> <xsd:element name='Package' type='PackageType'/> - <xsd:element name='Group' type='ContainerType'/> - <xsd:element name='Client' type='ContainerType'/> + <xsd:element name='Group' type='PackageContainerType'/> + <xsd:element name='Client' type='PackageContainerType'/> </xsd:choice> <xsd:attribute name='name' type='xsd:string'/> <xsd:attribute name='negate' type='xsd:string'/> @@ -66,7 +24,7 @@ <xsd:element name='PackageList'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Group' type='ContainerType'/> + <xsd:element name='Group' type='PackageContainerType'/> </xsd:choice> <xsd:attribute name='priority' type='xsd:integer' use='required'/> <xsd:attribute name='type' use='optional' type='PackageTypeEnum' /> diff --git a/schemas/pkgtype.xsd b/schemas/pkgtype.xsd new file mode 100644 index 000000000..4756f0ecd --- /dev/null +++ b/schemas/pkgtype.xsd @@ -0,0 +1,55 @@ +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xml:lang="en"> + + <xsd:annotation> + <xsd:documentation> + package list schema for bcfg2 + Narayan Desai, Argonne National Laboratory + $Id$ + </xsd:documentation> + </xsd:annotation> + + <xsd:include schemaLocation="types.xsd"/> + + <xsd:complexType name='PackageType'> + <xsd:choice minOccurs='0' maxOccurs='unbounded'> + <xsd:element name='Ignore'> + <xsd:complexType> + <xsd:attribute type='xsd:string' name='name'/> + </xsd:complexType> + </xsd:element> + <xsd:element name='Instance'> + <xsd:complexType> + <xsd:choice minOccurs='0' maxOccurs='unbounded'> + <xsd:element name='Ignore'> + <xsd:complexType> + <xsd:attribute type='xsd:string' name='name'/> + </xsd:complexType> + </xsd:element> + </xsd:choice> + <xsd:attribute name='arch' type='xsd:string'/> + <xsd:attribute name='epoch' type='xsd:string'/> + <xsd:attribute name='version' type='xsd:string'/> + <xsd:attribute name='release' type='xsd:string'/> + <xsd:attribute name='simplefile' type='xsd:string'/> + <xsd:attribute name='pkg_verify' type='xsd:string'/> + <xsd:attribute name='verify_flags' type='xsd:string'/> + <xsd:attribute name='installed_action' type='xsd:string'/> + <xsd:attribute name='version_fail_action' type='xsd:string'/> + <xsd:attribute name='verify_fail_action' type='xsd:string'/> + </xsd:complexType> + </xsd:element> + </xsd:choice> + <xsd:attribute type='xsd:string' name='name'/> + <xsd:attribute type='xsd:string' name='version'/> + <xsd:attribute type='xsd:string' name='file'/> + <xsd:attribute type='xsd:string' name='verify'/> + <xsd:attribute type='xsd:string' name='simplefile'/> + <xsd:attribute type='xsd:string' name='reloc'/> + <xsd:attribute type='xsd:string' name='multiarch'/> + <xsd:attribute type='xsd:string' name='srcs'/> + <xsd:attribute type='xsd:string' name='type'/> + <xsd:attribute type='xsd:string' name='bname'/> + <xsd:attribute name='pkg_checks' type='xsd:string'/> + <xsd:attribute name='verify_flags' type='xsd:string'/> + </xsd:complexType> +</xsd:schema> diff --git a/schemas/rules.xsd b/schemas/rules.xsd index f1e0e60e2..0baa1e25f 100644 --- a/schemas/rules.xsd +++ b/schemas/rules.xsd @@ -8,42 +8,10 @@ </xsd:documentation> </xsd:annotation> + <xsd:include schemaLocation="pkgtype.xsd"/> + <xsd:include schemaLocation="servicetype.xsd"/> <xsd:include schemaLocation="types.xsd"/> - <xsd:complexType name='PackageType'> - <xsd:attribute type='xsd:string' name='name'/> - <xsd:attribute type='xsd:string' name='version'/> - <xsd:attribute type='xsd:string' name='file'/> - <xsd:attribute type='xsd:string' name='verify'/> - <xsd:attribute type='xsd:string' name='simplefile'/> - <xsd:attribute type='xsd:string' name='reloc'/> - <xsd:attribute type='xsd:string' name='multiarch'/> - <xsd:attribute type='xsd:string' name='srcs'/> - <xsd:attribute type='xsd:string' name='type'/> - <xsd:attribute type='xsd:string' name='bname'/> - </xsd:complexType> - - <xsd:complexType name='ServiceType'> - <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='User'> - <xsd:complexType> - <xsd:attribute name='address' type='xsd:string' use='required'/> - <xsd:attribute name='mask' type='xsd:string' use='required'/> - </xsd:complexType> - </xsd:element> - </xsd:choice> - <xsd:attribute name='name' type='xsd:string' use='required'/> - <xsd:attribute name='status' type='xsd:string' use='required'/> - <xsd:attribute name='port' type='xsd:string'/> - <xsd:attribute name='protocol' type='xsd:string'/> - <xsd:attribute name='reload' type='xsd:string'/> - <xsd:attribute name='FMRI' type='xsd:string'/> - <xsd:attribute name='supervised' type='xsd:string'/> - <xsd:attribute name='type' type='xsd:string'/> - <xsd:attribute name='sequence' type='xsd:string'/> - </xsd:complexType> - - <xsd:complexType name='DirectoryType'> <xsd:attribute type='xsd:string' name='name' use='required'/> <xsd:attribute type='xsd:string' name='perms'/> @@ -91,14 +59,14 @@ <xsd:element name='Rules'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Service' type='ServiceType'/> - <xsd:element name='Directory' type='DirectoryType'/> - <xsd:element name='SymLink' type='SymLinkType'/> - <xsd:element name='Package' type='PackageType'/> - <xsd:element name='Permissions' type='PermissionsType'/> - <xsd:element name='Action' type='ActionType'/> - <xsd:element name='Group' type='RContainerType'/> - <xsd:element name='Client' type='RContainerType'/> + <xsd:element name='Service' type='ServiceType'/> + <xsd:element name='Directory' type='DirectoryType'/> + <xsd:element name='SymLink' type='SymLinkType'/> + <xsd:element name='Package' type='PackageType'/> + <xsd:element name='Permissions' type='PermissionsType'/> + <xsd:element name='Action' type='ActionType'/> + <xsd:element name='Group' type='RContainerType'/> + <xsd:element name='Client' type='RContainerType'/> </xsd:choice> <xsd:attribute name='priority' type='xsd:integer' use='required'/> </xsd:complexType> diff --git a/schemas/services.xsd b/schemas/services.xsd index 14964c955..828959e82 100644 --- a/schemas/services.xsd +++ b/schemas/services.xsd @@ -8,43 +8,27 @@ </xsd:documentation> </xsd:annotation> - <xsd:complexType name='ServiceType'> - <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='User'> - <xsd:complexType> - <xsd:attribute name='address' type='xsd:string' use='required'/> - <xsd:attribute name='mask' type='xsd:string' use='required'/> - </xsd:complexType> - </xsd:element> - </xsd:choice> - <xsd:attribute name='name' type='xsd:string' use='required'/> - <xsd:attribute name='status' type='xsd:string' use='required'/> - <xsd:attribute name='port' type='xsd:string'/> - <xsd:attribute name='protocol' type='xsd:string'/> - <xsd:attribute name='reload' type='xsd:string'/> - <xsd:attribute name='FMRI' type='xsd:string'/> - <xsd:attribute name='type' type='xsd:string'/> - </xsd:complexType> + <xsd:include schemaLocation="servicetype.xsd"/> - <xsd:complexType name='ContainerType'> + <xsd:complexType name='ServiceContainerType'> <xsd:choice minOccurs='0' maxOccurs='unbounded'> <xsd:element name='Service' type='ServiceType'/> - <xsd:element name='Group' type='ContainerType'/> - <xsd:element name='Client' type='ContainerType'/> + <xsd:element name='Group' type='ServiceContainerType'/> + <xsd:element name='Client' type='ServiceContainerType'/> </xsd:choice> <xsd:attribute name='name' type='xsd:string'/> <xsd:attribute name='negate' type='xsd:string'/> </xsd:complexType> - + <xsd:element name='Services'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='Service' type='ServiceType'/> - <xsd:element name='Group' type='ContainerType'/> - <xsd:element name='Client' type='ContainerType'/> + <xsd:element name='Service' type='ServiceType'/> + <xsd:element name='Group' type='ServiceContainerType'/> + <xsd:element name='Client' type='ServiceContainerType'/> </xsd:choice> <xsd:attribute name='priority' type='xsd:integer'/> </xsd:complexType> </xsd:element> -</xsd:schema>
\ No newline at end of file +</xsd:schema> diff --git a/schemas/servicetype.xsd b/schemas/servicetype.xsd new file mode 100644 index 000000000..787ca3110 --- /dev/null +++ b/schemas/servicetype.xsd @@ -0,0 +1,31 @@ +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xml:lang="en"> + + <xsd:annotation> + <xsd:documentation> + services schema for bcfg2 + Narayan Desai, Argonne National Laboratory + $Id$ + </xsd:documentation> + </xsd:annotation> + + <xsd:complexType name='ServiceType'> + <xsd:choice minOccurs='0' maxOccurs='unbounded'> + <xsd:element name='User'> + <xsd:complexType> + <xsd:attribute name='address' type='xsd:string' use='required'/> + <xsd:attribute name='mask' type='xsd:string' use='required'/> + </xsd:complexType> + </xsd:element> + </xsd:choice> + <xsd:attribute name='name' type='xsd:string' use='required'/> + <xsd:attribute name='status' type='xsd:string' use='required'/> + <xsd:attribute name='port' type='xsd:string'/> + <xsd:attribute name='protocol' type='xsd:string'/> + <xsd:attribute name='reload' type='xsd:string'/> + <xsd:attribute name='FMRI' type='xsd:string'/> + <xsd:attribute name='supervised' type='xsd:string'/> + <xsd:attribute name='type' type='xsd:string'/> + <xsd:attribute name='sequence' type='xsd:string'/> + </xsd:complexType> + +</xsd:schema> diff --git a/schemas/translation.xsd b/schemas/translation.xsd index 9a58ab640..1c7f8c92d 100644 --- a/schemas/translation.xsd +++ b/schemas/translation.xsd @@ -11,10 +11,10 @@ <xsd:complexType name='SystemType'> <xsd:choice minOccurs='1' maxOccurs='unbounded'> <xsd:element name='Image'> - <xsd:complexType> - <xsd:attribute name='name' type='xsd:string' - use='required'/> - </xsd:complexType> + <xsd:complexType> + <xsd:attribute name='name' type='xsd:string' + use='required'/> + </xsd:complexType> </xsd:element> </xsd:choice> <xsd:attribute name='name' type='xsd:string' use='required'/> @@ -25,9 +25,9 @@ <xsd:element name='SystemSet'> <xsd:complexType> <xsd:choice minOccurs='0' maxOccurs='unbounded'> - <xsd:element name='System' type='SystemType'/> + <xsd:element name='System' type='SystemType'/> </xsd:choice> </xsd:complexType> </xsd:element> - -</xsd:schema>
\ No newline at end of file + +</xsd:schema> |