Meta Packages/Design

Материал из openSUSE.

Main Page: Meta Packages

Содержание

Diagram

Image:MetaPackageDesign1.png

XML Schema

 <xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema' targetNamespace='http://suse.benjiweber.co.uk' xmlns:bw='http://suse.benjiweber.co.uk'>
 	<xs:complexType name="package">
 		<xs:sequence>
 			<xs:attribute name="recommended" type="xs:boolean"/>
 			<xs:element name="name" type="xs:string"/>
 			<xs:element name="summary" type="xs:string"/>
 			<xs:element name="description" type="xs:string"/>
 		</xs:sequence>
 	</xs:complexType>
 	<xs:complexType name="repo">
 		<xs:sequence>
 			<xs:attribute name="recommended" type="xs:boolean"/>
 			<xs:element name="name" type="xs:string"/>
 			<xs:element name="summary" type="xs:string"/>
 			<xs:element name="description" type="xs:string"/>
 			<xs:element name="url" type="xs:string"/>
 		</xs:sequence>
 	</xs:complexType>
 	<xs:element name="metapackage">
 		<xs:complexType>
 			<xs:sequence>
 				<xs:element name="repos">
 					<xs:complexType>
 						<xs:sequence>
 							<xs:element name="repo" minOccurs="0" maxOccurs="unbounded" type="bw:repo"/>
 						</xs:sequence>
 					</xs:complexType>
 				</xs:element>
 				<xs:element name="packages">
 					<xs:complexType>
 						<xs:sequence>
 							<xs:element name="package" minOccurs="0" maxOccurs="unbounded" type="bw:package"/>
 						</xs:sequence>
 					</xs:complexType>
 				</xs:element>
 			</xs:sequence>
 		</xs:complexType>
 	</xs:element>
 </xs:schema>

Mimetypes

text/ymp for the metapackages corresponding to above schema

text/ymu for a uri of a metapackage, to enable click to install links in webpages without having to embed large xml documents in the page.

Reference implementation

http://bw.uwcs.co.uk/mp/yast2-mpp-0.0-0.suse102.noarch.rpm

Test "Install Now" links on package search at http://benjiweber.co.uk:8080/webpin/index-test.jsp