Path: blob/master/sourcetools/objectmodel/schema/build-v3.xsd
5995 views
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright (c) 2007, 2017 IBM Corp. and others This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution and is available at https://www.eclipse.org/legal/epl-2.0/ or the Apache License, Version 2.0 which accompanies this distribution and is available at https://www.apache.org/licenses/LICENSE-2.0. This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License, v. 2.0 are satisfied: GNU General Public License, version 2 with the GNU Classpath Exception [1] and GNU General Public License, version 2 with the OpenJDK Assembly Exception [2]. [1] https://www.gnu.org/software/classpath/license.html [2] http://openjdk.java.net/legal/assembly-exception.html SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception --> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.ibm.com/j9/builder/build" xmlns:tns="http://www.ibm.com/j9/builder/build" elementFormDefault="qualified"> <xsd:element name="build" type="tns:buildType" > <xsd:annotation> <xsd:documentation>Defines build details</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:complexType name="buildType"> <xsd:annotation> <xsd:documentation> Defines build specific information such as version numbers or locations of filesystem roots required by various specs </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="version" type="tns:versionType" /> <xsd:element name="sourceControl" type="tns:sourceControlType" /> <xsd:element name="runtime" type="xsd:string" /> <xsd:element name="fsroots" type="tns:fsrootsType" /> <xsd:element name="jcls" type="tns:jclsType" /> <xsd:element name="projects" type="tns:projectsType" /> <xsd:element name="asmBuilders" type="tns:asmBuildersType" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="versionType"> <xsd:annotation> <xsd:documentation>Provides version information for a given build</xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="major" type="xsd:integer" > <xsd:annotation> <xsd:documentation>Major version, for example: the 2 in 2.4</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="minor" type="xsd:integer" > <xsd:annotation> <xsd:documentation>Minor version, for example: the 4 in 2.4</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="branch" type="xsd:string" > <xsd:annotation> <xsd:documentation>VM Branch name, for example the 'Current' in 'R2.4 Current'</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="streamName" type="xsd:string" > <xsd:annotation> <xsd:documentation>VM stream name, for example 'R2.4 Current'</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="parentStream" type="xsd:string" > <xsd:annotation> <xsd:documentation>The stream from which the current stream was split from</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="streamSplitDate" type="xsd:dateTime" > <xsd:annotation> <xsd:documentation>The date of the split from the parent stream to the current stream</xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name ="sourceControlType"> <xsd:annotation> <xsd:documentation>Provides a list of the repository branches hosting a given build</xsd:documentation> </xsd:annotation> <xsd:sequence maxOccurs="unbounded" minOccurs="1"> <xsd:element name="repositoryBranch" type="tns:repositoryBranchType" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name ="repositoryBranchType"> <xsd:annotation> <xsd:documentation>Provides a keyed repository branch name for a given build</xsd:documentation> </xsd:annotation> <xsd:attribute name="id" type="xsd:ID" use="required" /> <xsd:attribute name="name" type="xsd:string" use="required" /> </xsd:complexType> <xsd:complexType name="fsrootsType"> <xsd:annotation> <xsd:documentation>A list of file system roots for various build specs.</xsd:documentation> </xsd:annotation> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="fsroot" type="tns:fsrootType" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="fsrootType"> <xsd:annotation> <xsd:documentation> Defines a single file system root to be used by one of the build specs. For example, j:\j9 or /bluebird/j9 </xsd:documentation> </xsd:annotation> <xsd:attribute name="id" type="xsd:ID" use="required" /> <xsd:attribute name="root" type="xsd:string" use="required" /> </xsd:complexType> <xsd:complexType name="jclsType"> <xsd:annotation> <xsd:documentation>A list of valid JCL names.</xsd:documentation> </xsd:annotation> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="jcl" type="tns:jclType" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="jclType"> <xsd:annotation> <xsd:documentation> Defines a single JCL name. </xsd:documentation> </xsd:annotation> <xsd:attribute name="id" type="xsd:string" use="required" /> </xsd:complexType> <xsd:complexType name="projectsType"> <xsd:annotation> <xsd:documentation>A list of valid Project names.</xsd:documentation> </xsd:annotation> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="project" type="tns:projectType" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="projectType"> <xsd:annotation> <xsd:documentation> Defines a single Project name. </xsd:documentation> </xsd:annotation> <xsd:attribute name="id" type="xsd:string" use="required" /> </xsd:complexType> <xsd:complexType name="asmBuildersType"> <xsd:annotation> <xsd:documentation>A list of valid ASM Builder names.</xsd:documentation> </xsd:annotation> <xsd:sequence maxOccurs="unbounded" minOccurs="0"> <xsd:element name="builder" type="tns:builderType" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="builderType"> <xsd:annotation> <xsd:documentation> Defines a single ASM Builder name. </xsd:documentation> </xsd:annotation> <xsd:attribute name="id" type="xsd:string" use="required" /> </xsd:complexType> </xsd:schema>