1042 lines
52 KiB
HTML
1042 lines
52 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE html
|
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html lang="en-us" xml:lang="en-us">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta name="security" content="public" />
|
|
<meta name="Robots" content="index,follow" />
|
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
|
<meta name="DC.Type" content="reference" />
|
|
<meta name="DC.Title" content="Schema xpcml.xsd file" />
|
|
<meta name="abstract" content="" />
|
|
<meta name="description" content="" />
|
|
<meta name="DC.Relation" scheme="URI" content="rzahhxpcmlschema.htm" />
|
|
<meta name="copyright" content="(C) Copyright IBM Corporation 2006" />
|
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 2006" />
|
|
<meta name="DC.Format" content="XHTML" />
|
|
<meta name="DC.Identifier" content="rzahhxpcmlschemaxsd" />
|
|
<meta name="DC.Language" content="en-us" />
|
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
|
<!-- US Government Users Restricted Rights -->
|
|
<!-- Use, duplication or disclosure restricted by -->
|
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
|
<title>Schema xpcml.xsd file</title>
|
|
</head>
|
|
<body id="rzahhxpcmlschemaxsd"><a name="rzahhxpcmlschemaxsd"><!-- --></a>
|
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
|
<h1 class="topictitle1">Schema xpcml.xsd file</h1>
|
|
<div><p></p>
|
|
<div class="section"><p>For more information about using the xpcml.xsd file, see <a href="rzahhxpcmlrequire.htm">Requirements for using XPCML</a>.</p>
|
|
<div class="note"><span class="notetitle">Note:</span> Read
|
|
the <a href="codedisclaimer.htm#codedisclaimer">Code example disclaimer</a> for
|
|
important legal information.</div>
|
|
<p>To make it easier to display and print,
|
|
some lines of this HTML version of xpcml.xsd wrap to a second line. The same
|
|
lines in the source xsd file appear on a single line.</p>
|
|
<pre><?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--///////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// JTOpen (IBM Toolbox for Java - OSS version)
|
|
//
|
|
// Filename: xpcml.xsd
|
|
//
|
|
// The source code contained herein is licensed under the IBM Public License
|
|
// Version 1.0, which has been approved by the Open Source Initiative.
|
|
// Copyright (C) 1997-2003 International Business Machines Corporation and
|
|
// others. All rights reserved.
|
|
//
|
|
////////////////////////////////////////////////////////////////////////////-->
|
|
|
|
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'>
|
|
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
Schema for xpcml (eXtended Program Call Markup Language).
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__xpcml"><a name="rzahhxpcmlschemaxsd__xpcml"><!-- --></a><span class="kwd"></span></span><xs:element name="xpcml">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element ref="structOrProgram" minOccurs="1" maxOccurs="unbounded" />
|
|
</xs:sequence>
|
|
<xs:attribute name="version" use="required">
|
|
<xs:simpleType>
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="4.0"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<!-- Define key/keyref link between the name of a struct -->
|
|
<!-- and the struct attribute of a parameter field. -->
|
|
<xs:key name="StructKey">
|
|
<xs:selector xpath="struct"/>
|
|
<xs:field xpath="@name"/>
|
|
</xs:key>
|
|
<xs:keyref name="spRef" refer="StructKey">
|
|
<xs:selector xpath="structParm" />
|
|
<xs:field xpath="@struct" />
|
|
</xs:keyref>
|
|
</xs:element>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__program"><a name="rzahhxpcmlschemaxsd__program"><!-- --></a><span class="kwd"></span></span><!-- Program tag and attributes -->
|
|
<xs:element name="program" substitutionGroup="structOrProgram">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element ref="parameterList" minOccurs="1" maxOccurs="1"/>
|
|
<!-- Used as a wrapper tag around the parameter list for the program. -->
|
|
</xs:sequence>
|
|
<!-- Name of the program to call. -->
|
|
<xs:attribute name="name" type="string50" use="required" />
|
|
<!-- Path to the program object. Default is to assume in library QSYS. -->
|
|
<xs:attribute name="path" type="xs:string"/>
|
|
<!-- Specifies the order in which parameters should be parsed. -->
|
|
<!-- Value is a blank-separated list of parameter names. -->
|
|
<xs:attribute name="parseOrder" type="xs:string"/>
|
|
<!-- The entry point name within a service program. -->
|
|
<xs:attribute name="entryPoint" type="xs:string"/>
|
|
<!-- The type of value, if any, returned from a service program call. -->
|
|
<xs:attribute name="returnValue" type="returnValueType"/>
|
|
<!-- When calling a Java program and iSeries program is on same server -->
|
|
<!-- and is thread-safe, set to true to call the iSeries program in same job -->
|
|
<!-- and on same thread as the Java program. -->
|
|
<xs:attribute name="threadSafe" type="xs:boolean" />
|
|
<!-- The CCSID of the entry point name within a service program. -->
|
|
<xs:attribute name="epccsid" type="ccsidType"/>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__parameterlist"><a name="rzahhxpcmlschemaxsd__parameterlist"><!-- --></a><span class="kwd"></span></span><!-- A parameter list is made up of one or more parameters. -->
|
|
<xs:element name="parameterList">
|
|
<xs:complexType>
|
|
<xs:group ref="programParameter" minOccurs="1" maxOccurs="unbounded"/>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<!-- All the different kinds of program parameters that we understand. -->
|
|
<xs:group name="programParameter">
|
|
<xs:choice>
|
|
<xs:element ref="stringParmGroup"/>
|
|
<xs:element ref="stringParmArrayGroup"/>
|
|
<xs:element ref="intParmGroup"/>
|
|
<xs:element ref="intParmArrayGroup"/>
|
|
<xs:element ref="unsignedIntParmGroup"/>
|
|
<xs:element ref="unsignedIntParmArrayGroup"/>
|
|
<xs:element ref="shortParmGroup"/>
|
|
<xs:element ref="shortParmArrayGroup"/>
|
|
<xs:element ref="unsignedShortParmGroup"/>
|
|
<xs:element ref="unsignedShortParmArrayGroup"/>
|
|
<xs:element ref="longParmGroup"/>
|
|
<xs:element ref="longParmArrayGroup"/>
|
|
<xs:element ref="zonedDecimalParmGroup"/>
|
|
<xs:element ref="zonedDecimalParmArrayGroup"/>
|
|
<xs:element ref="packedDecimalParmGroup"/>
|
|
<xs:element ref="packedDecimalParmArrayGroup"/>
|
|
<xs:element ref="floatParmGroup"/>
|
|
<xs:element ref="floatParmArrayGroup"/>
|
|
<xs:element ref="doubleParmGroup"/>
|
|
<xs:element ref="doubleParmArrayGroup"/>
|
|
<xs:element ref="hexBinaryParmGroup"/>
|
|
<xs:element ref="hexBinaryParmArrayGroup"/>
|
|
<xs:element ref="structParmGroup"/>
|
|
<xs:element ref="structParmArrayGroup"/>
|
|
<xs:element ref="structArrayGroup"/>
|
|
<xs:element ref="struct"/>
|
|
</xs:choice>
|
|
|
|
</xs:group>
|
|
|
|
<!-- Abstract type for all data parameter types. -->
|
|
<xs:element name="stringParmGroup" type="stringParmType" abstract="true" />
|
|
<xs:element name="stringParmArrayGroup" type="stringParmArrayType" abstract="true" />
|
|
<xs:element name="intParmGroup" type="intParmType" abstract="true" />
|
|
<xs:element name="intParmArrayGroup" type="intParmArrayType" abstract="true" />
|
|
<xs:element name="unsignedIntParmGroup" type="unsignedIntParmType" abstract="true" />
|
|
<xs:element name="unsignedIntParmArrayGroup" type="unsignedIntParmArrayType" abstract="true" />
|
|
<xs:element name="shortParmGroup" type="shortParmType" abstract="true" />
|
|
<xs:element name="shortParmArrayGroup" type="shortParmArrayType" abstract="true" />
|
|
<xs:element name="unsignedShortParmGroup" type="unsignedShortParmType" abstract="true" />
|
|
<xs:element name="unsignedShortParmArrayGroup" type="unsignedShortParmArrayType" abstract="true" />
|
|
<xs:element name="longParmGroup" type="longParmType" abstract="true" />
|
|
<xs:element name="longParmArrayGroup" type="longParmArrayType" abstract="true" />
|
|
<xs:element name="zonedDecimalParmGroup" type="zonedDecimalParmType" abstract="true" />
|
|
<xs:element name="zonedDecimalParmArrayGroup" type="zonedDecimalParmArrayType" abstract="true" />
|
|
<xs:element name="packedDecimalParmGroup" type="packedDecimalParmType" abstract="true" />
|
|
<xs:element name="packedDecimalParmArrayGroup" type="packedDecimalParmArrayType" abstract="true" />
|
|
<xs:element name="floatParmGroup" type="floatParmType" abstract="true" />
|
|
<xs:element name="floatParmArrayGroup" type="floatParmArrayType" abstract="true" />
|
|
<xs:element name="doubleParmGroup" type="doubleParmType" abstract="true" />
|
|
<xs:element name="doubleParmArrayGroup" type="doubleParmArrayType" abstract="true" />
|
|
<xs:element name="hexBinaryParmGroup" type="hexBinaryParmType" abstract="true" />
|
|
<xs:element name="hexBinaryParmArrayGroup" type="hexBinaryParmArrayType" abstract="true" />
|
|
<xs:element name="structParmGroup" type="structParmType" abstract="true" />
|
|
<xs:element name="structParmArrayGroup" type="structParmArrayType" abstract="true" />
|
|
<xs:element name="structArrayGroup" type="structArrayType" abstract="true"
|
|
substitutionGroup="structOrProgram" />
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__stringparm"><a name="rzahhxpcmlschemaxsd__stringparm"><!-- --></a><span class="kwd"></span></span><!-- String parameter -->
|
|
<xs:element name="stringParm" type="stringParmType" substitutionGroup="stringParmGroup"
|
|
nillable="true"/>
|
|
<xs:complexType name="stringParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="stringFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofstringparm"><a name="rzahhxpcmlschemaxsd__arrayofstringparm"><!-- --></a><span class="kwd"></span></span><!-- Array of string parameters -->
|
|
<xs:element name="arrayOfStringParm" type="stringParmArrayType"
|
|
substitutionGroup="stringParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="stringParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="stringElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
<!-- The number of elements in the array. -->
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<!-- The number of characters in each string. -->
|
|
<xs:attribute name="length" type="xs:string"/>
|
|
<!-- The host CCSID for each string. -->
|
|
<xs:attribute name="ccsid" type="xs:string"/>
|
|
<!-- Specifies how to trim whitespace (left, right, both, none). -->
|
|
<xs:attribute name="trim" type="trimType" />
|
|
<!-- The size of each character ('chartype' in PCML). -->
|
|
<xs:attribute name="bytesPerChar" type="charType" />
|
|
<!-- The bidirectional string type. -->
|
|
<xs:attribute name="bidiStringType" type="bidiStringTypeType" />
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="stringElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<!-- The index into the array. -->
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__intparm"><a name="rzahhxpcmlschemaxsd__intparm"><!-- --></a><span class="kwd"></span></span><!-- Integer parameter (4 bytes on server) -->
|
|
<xs:element name="intParm" type="intParmType" nillable="true" substitutionGroup="intParmGroup" />
|
|
<xs:complexType name="intParmType" >
|
|
<xs:simpleContent>
|
|
<xs:extension base="intFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofintparm"><a name="rzahhxpcmlschemaxsd__arrayofintparm"><!-- --></a><span class="kwd"></span></span><!-- intParm array type -->
|
|
<xs:element name="arrayOfIntParm" type="intParmArrayType" substitutionGroup="intParmArrayGroup"
|
|
nillable="true" />
|
|
<xs:complexType name="intParmArrayType">
|
|
<xs:sequence>
|
|
<!-- 'i' is the tag used for non-struct array elements. -->
|
|
<xs:element name="i" type="intElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="intElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:int">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__unsignedintparm"><a name="rzahhxpcmlschemaxsd__unsignedintparm"><!-- --></a><span class="kwd"></span></span><!-- Unsigned Integer parameter (4 bytes on server) -->
|
|
<xs:element name="unsignedIntParm" type="unsignedIntParmType" nillable="true"
|
|
substitutionGroup="unsignedIntParmGroup" />
|
|
<xs:complexType name="unsignedIntParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="unsignedIntFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofunsignedintparm"><a name="rzahhxpcmlschemaxsd__arrayofunsignedintparm"><!-- --></a><span class="kwd"></span></span><!-- unsigned intParm array type -->
|
|
<xs:element name="arrayOfUnsignedIntParm" type="unsignedIntParmArrayType"
|
|
substitutionGroup="unsignedIntParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="unsignedIntParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="unsignedIntElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="unsignedIntElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:unsignedInt">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__shortparm"><a name="rzahhxpcmlschemaxsd__shortparm"><!-- --></a><span class="kwd"></span></span><!-- Short integer parameter (2 bytes on server) -->
|
|
<xs:element name="shortParm" type="shortParmType" nillable="true" substitutionGroup="shortParmGroup"/>
|
|
<xs:complexType name="shortParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="shortFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofshortparm"><a name="rzahhxpcmlschemaxsd__arrayofshortparm"><!-- --></a><span class="kwd"></span></span><!-- shortParm array type -->
|
|
<xs:element name="arrayOfShortParm" type="shortParmArrayType" substitutionGroup="shortParmArrayGroup"
|
|
nillable="true" />
|
|
<xs:complexType name="shortParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="shortElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="shortElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:short">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__unsignedshortparm"><a name="rzahhxpcmlschemaxsd__unsignedshortparm"><!-- --></a><span class="kwd"></span></span><!-- Unsigned Short integer parameter (2 bytes on server) -->
|
|
<xs:element name="unsignedShortParm" type="unsignedShortParmType" nillable="true"
|
|
substitutionGroup="unsignedShortParmGroup" />
|
|
<xs:complexType name="unsignedShortParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="unsignedShortFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofunsignedshortparm"><a name="rzahhxpcmlschemaxsd__arrayofunsignedshortparm"><!-- --></a><span class="kwd"></span></span><!-- unsignedShortParm array type -->
|
|
<xs:element name="arrayOfUnsignedShortParm" type="unsignedShortParmArrayType"
|
|
substitutionGroup="unsignedShortParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="unsignedShortParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="unsignedShortElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="unsignedShortElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:unsignedShort">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__longparm"><a name="rzahhxpcmlschemaxsd__longparm"><!-- --></a><span class="kwd"></span></span><!-- Long integer parameter (8 bytes on server) -->
|
|
<xs:element name="longParm" type="longParmType" nillable="true" substitutionGroup="longParmGroup" />
|
|
<xs:complexType name="longParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="longFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayoflongparm"><a name="rzahhxpcmlschemaxsd__arrayoflongparm"><!-- --></a><span class="kwd"></span></span><!-- longParm array type -->
|
|
<xs:element name="arrayOfLongParm" type="longParmArrayType" substitutionGroup="longParmArrayGroup"
|
|
nillable="true" />
|
|
<xs:complexType name="longParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="longElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="longElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:long">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__zoneddecimalparm"><a name="rzahhxpcmlschemaxsd__zoneddecimalparm"><!-- --></a><span class="kwd"></span></span><!-- ZonedDecimal parameter -->
|
|
<xs:element name="zonedDecimalParm" type="zonedDecimalParmType" nillable="true"
|
|
substitutionGroup="zonedDecimalParmGroup" />
|
|
<xs:complexType name="zonedDecimalParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="zonedDecimalFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofzoneddecimalparm"><a name="rzahhxpcmlschemaxsd__arrayofzoneddecimalparm"><!-- --></a><span class="kwd"></span></span><!-- zonedDecimalParm array type -->
|
|
<xs:element name="arrayOfZonedDecimalParm" type="zonedDecimalParmArrayType"
|
|
substitutionGroup="zonedDecimalParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="zonedDecimalParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="zonedDecimalElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<!-- The total number of digits in the field ('length' in PCML). -->
|
|
<xs:attribute name="totalDigits" type="xs:positiveInteger"/>
|
|
<!-- The number of fractional digits ('precision' in PCML). -->
|
|
<xs:attribute name="fractionDigits" type="xs:nonNegativeInteger"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="zonedDecimalElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:decimal">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__packeddecimalparm"><a name="rzahhxpcmlschemaxsd__packeddecimalparm"><!-- --></a><span class="kwd"></span></span><!-- packedDecimal parameter -->
|
|
<xs:element name="packedDecimalParm" type="packedDecimalParmType" nillable="true"
|
|
substitutionGroup="packedDecimalParmGroup" />
|
|
<xs:complexType name="packedDecimalParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="packedDecimalFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofpackeddecimalparm"><a name="rzahhxpcmlschemaxsd__arrayofpackeddecimalparm"><!-- --></a><span class="kwd"></span></span><!-- packedDecimalParm array type -->
|
|
<xs:element name="arrayOfPackedDecimalParm" type="packedDecimalParmArrayType"
|
|
substitutionGroup="packedDecimalParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="packedDecimalParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="packedDecimalElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attribute name="totalDigits" type="xs:positiveInteger"/>
|
|
<xs:attribute name="fractionDigits" type="xs:nonNegativeInteger"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="packedDecimalElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:decimal">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__floatparm"><a name="rzahhxpcmlschemaxsd__floatparm"><!-- --></a><span class="kwd"></span></span><!-- Float parameter (4 bytes on server) -->
|
|
<xs:element name="floatParm" type="floatParmType" nillable="true" substitutionGroup="floatParmGroup"/>
|
|
<xs:complexType name="floatParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="floatFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayoffloatparm"><a name="rzahhxpcmlschemaxsd__arrayoffloatparm"><!-- --></a><span class="kwd"></span></span><!-- floatParm array type -->
|
|
<xs:element name="arrayOfFloatParm" type="floatParmArrayType" substitutionGroup="floatParmArrayGroup"
|
|
nillable="true" />
|
|
<xs:complexType name="floatParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="floatElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="floatElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:float">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__doubleparm"><a name="rzahhxpcmlschemaxsd__doubleparm"><!-- --></a><span class="kwd"></span></span><!-- Double parameter (8 bytes on server) -->
|
|
<xs:element name="doubleParm" type="doubleParmType" nillable="true"
|
|
substitutionGroup="doubleParmGroup" />
|
|
<xs:complexType name="doubleParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="doubleFieldType">
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofdoubleparm"><a name="rzahhxpcmlschemaxsd__arrayofdoubleparm"><!-- --></a><span class="kwd"></span></span><!-- doubleParm array type -->
|
|
<xs:element name="arrayOfDoubleParm" type="doubleParmArrayType"
|
|
substitutionGroup="doubleParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="doubleParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="doubleElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="doubleElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:double">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__hexbinaryparm"><a name="rzahhxpcmlschemaxsd__hexbinaryparm"><!-- --></a><span class="kwd"></span></span><!-- Hex binary parameter (any number of bytes; unsigned) -->
|
|
<xs:element name="hexBinaryParm" type="hexBinaryParmType" substitutionGroup="hexBinaryParmGroup" />
|
|
<xs:complexType name="hexBinaryParmType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="hexBinaryFieldType">
|
|
<!-- The field length in bytes ('length' in PCML). -->
|
|
<xs:attribute name="totalBytes" type="xs:string"/>
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofhexbinaryparm"><a name="rzahhxpcmlschemaxsd__arrayofhexbinaryparm"><!-- --></a><span class="kwd"></span></span><!-- hexBinaryParm array type -->
|
|
<xs:element name="arrayOfHexBinaryParm" type="hexBinaryParmArrayType"
|
|
substitutionGroup="hexBinaryParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="hexBinaryParmArrayType">
|
|
<xs:sequence>
|
|
<xs:element name="i" type="hexBinaryElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="totalBytes" type="xs:string"/>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="hexBinaryElementType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:hexBinary">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__structparm"><a name="rzahhxpcmlschemaxsd__structparm"><!-- --></a><span class="kwd"></span></span><!-- Structure parm type -->
|
|
<xs:element name="structParm" type="structParmType" substitutionGroup="structParmGroup" />
|
|
<xs:complexType name="structParmType">
|
|
<xs:complexContent>
|
|
<xs:extension base="structureParmArray">
|
|
<xs:attribute name="struct" type="string50"/>
|
|
<!-- Specifies whether the parameter is passed by value or reference ('passby' in PCML).-->
|
|
<!-- Value only allowed for integer parameters. -->
|
|
<xs:attribute name="passMode" type="passModeType"/>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string"/>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofstructparm"><a name="rzahhxpcmlschemaxsd__arrayofstructparm"><!-- --></a><span class="kwd"></span></span><!-- Structure parm array type -->
|
|
<xs:element name="arrayOfStructParm" type="structParmArrayType"
|
|
substitutionGroup="structParmArrayGroup" nillable="true" />
|
|
<xs:complexType name="structParmArrayType">
|
|
<xs:sequence>
|
|
<!-- struct_i tag represents struct or struct parm array elements. -->
|
|
<xs:element name="struct_i" type="structElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<xs:attributeGroup ref="commonParmAttrs"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
<xs:attribute name="struct" type="string50"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="structElementType">
|
|
<xs:complexContent>
|
|
<xs:extension base="structureParmArray">
|
|
<xs:attribute name="index" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__struct"><a name="rzahhxpcmlschemaxsd__struct"><!-- --></a><span class="kwd"></span></span><!-- Struct element -->
|
|
<xs:element name="struct" type="structureParmArray" substitutionGroup="structOrProgram" />
|
|
|
|
<span class="synph" id="rzahhxpcmlschemaxsd__arrayofstruct"><a name="rzahhxpcmlschemaxsd__arrayofstruct"><!-- --></a><span class="kwd"></span></span><!-- Struct array type -->
|
|
<xs:element name="arrayOfStruct" type="structArrayType" substitutionGroup="structArrayGroup"
|
|
nillable="true" />
|
|
<xs:complexType name="structArrayType">
|
|
<xs:sequence>
|
|
<!-- struct_i tag represents struct elements in an array. -->
|
|
<xs:element name="struct_i" type="structElementType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<!-- The name of the struct. -->
|
|
<xs:attribute name="name" type="string50"/>
|
|
<!-- Number of elements in the array. -->
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string" />
|
|
<!-- Specifies whether this is an input, output, or input-output struct ('usage' in PCML). -->
|
|
<xs:attribute name="passDirection" type="passDirectionType"/>
|
|
<!-- The offset to the struct within an output parameter. -->
|
|
<xs:attribute name="offset" type="xs:string" />
|
|
<!-- The base location from which the 'offset' attribute is relative. -->
|
|
<xs:attribute name="offsetFrom" type="xs:string" />
|
|
<!-- The number of bytes to reserve for output data for the element. -->
|
|
<xs:attribute name="outputSize" type="xs:string" />
|
|
<!-- The lowest version of i5/OS on which this element exists. -->
|
|
<xs:attribute name="minvrm" type="string10" />
|
|
<!-- The highest version of i5/OS on which this element exists. -->
|
|
<xs:attribute name="maxvrm" type="string10" />
|
|
</xs:complexType>
|
|
|
|
|
|
<!-- Attributes that are common to all data field types. -->
|
|
<xs:attributeGroup name="commonParmAttrs">
|
|
<!-- Specifies whether this is an input, output, or input-output parameter ('usage' in PCML). -->
|
|
<!-- The default value if none is specified is 'inherit'. -->
|
|
<xs:attribute name="passDirection" type="passDirectionType"/>
|
|
<!-- Specifies whether the parameter is passed by reference or value ('passby' in PCML). -->
|
|
<!-- The default value if none is specified is 'reference'. -->
|
|
<xs:attribute name="passMode" type="passModeType" />
|
|
<!-- The offset to the element within an output parameter. -->
|
|
<!-- The default value if none is specified is 0. -->
|
|
<xs:attribute name="offset" type="xs:string" />
|
|
<!-- The base location from which the 'offset' attribute is relative. -->
|
|
<xs:attribute name="offsetFrom" type="xs:string" />
|
|
<!-- The number of bytes to reserve for output data for the element. -->
|
|
<xs:attribute name="outputSize" type="xs:string" />
|
|
<!-- The lowest version of i5/OS to which this field applies. -->
|
|
<!-- If not specified, we assume this field applies to all versions. -->
|
|
<xs:attribute name="minvrm" type="string10" />
|
|
<!-- The highest version of i5/OS to which this field applies. -->
|
|
<!-- If not specified, we assume this field applies to all versions. -->
|
|
<xs:attribute name="maxvrm" type="string10" />
|
|
</xs:attributeGroup>
|
|
|
|
<xs:simpleType name="passDirectionType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="in"/>
|
|
<xs:enumeration value="inout"/>
|
|
<xs:enumeration value="out"/>
|
|
<xs:enumeration value="inherit"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="passModeType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="value"/>
|
|
<xs:enumeration value="reference"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<!-- Following types are to maintain compatibility with PCML -->
|
|
<xs:simpleType name="bidiStringTypeType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="ST4"/>
|
|
<xs:enumeration value="ST5"/>
|
|
<xs:enumeration value="ST6"/>
|
|
<xs:enumeration value="ST7"/>
|
|
<xs:enumeration value="ST8"/>
|
|
<xs:enumeration value="ST9"/>
|
|
<xs:enumeration value="ST10"/>
|
|
<xs:enumeration value="ST11"/>
|
|
<xs:enumeration value="DEFAULT"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="charType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="onebyte"/>
|
|
<xs:enumeration value="twobyte"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="trimType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="none"/>
|
|
<xs:enumeration value="left"/>
|
|
<xs:enumeration value="right"/>
|
|
<xs:enumeration value="both"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="returnValueType">
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="void"/>
|
|
<xs:enumeration value="integer"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
|
|
<xs:complexType name="structureParmArray">
|
|
<xs:sequence>
|
|
<xs:group ref="structureParm" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="name" type="string50"/>
|
|
<xs:attribute name="passDirection" type="passDirectionType"/>
|
|
<xs:attribute name="offset" type="xs:string" />
|
|
<xs:attribute name="offsetFrom" type="xs:string" />
|
|
<xs:attribute name="outputSize" type="xs:string" />
|
|
<xs:attribute name="minvrm" type="string10" />
|
|
<xs:attribute name="maxvrm" type="string10" />
|
|
</xs:complexType>
|
|
|
|
|
|
<!-- A structureParm is exactly one of the following: stringParm, intParm,
|
|
shortParm, longParm, zonedDecimalParm, packedDecimalParm, floatParm,
|
|
doubleParm, or hexBinaryParm. -->
|
|
<xs:group name="structureParm">
|
|
<xs:choice>
|
|
<xs:element ref="stringParmGroup" />
|
|
<xs:element ref="stringParmArrayGroup" />
|
|
<xs:element ref="intParmGroup" />
|
|
<xs:element ref="intParmArrayGroup" />
|
|
<xs:element ref="unsignedIntParmGroup" />
|
|
<xs:element ref="unsignedIntParmArrayGroup" />
|
|
<xs:element ref="shortParmGroup" />
|
|
<xs:element ref="shortParmArrayGroup" />
|
|
<xs:element ref="unsignedShortParmGroup" />
|
|
<xs:element ref="unsignedShortParmArrayGroup" />
|
|
<xs:element ref="longParmGroup" />
|
|
<xs:element ref="longParmArrayGroup" />
|
|
<xs:element ref="zonedDecimalParmGroup" />
|
|
<xs:element ref="zonedDecimalParmArrayGroup" />
|
|
<xs:element ref="packedDecimalParmGroup" />
|
|
<xs:element ref="packedDecimalParmArrayGroup" />
|
|
<xs:element ref="floatParmGroup" />
|
|
<xs:element ref="floatParmArrayGroup" />
|
|
<xs:element ref="doubleParmGroup" />
|
|
<xs:element ref="doubleParmArrayGroup" />
|
|
<xs:element ref="hexBinaryParmGroup" />
|
|
<xs:element ref="hexBinaryParmArrayGroup" />
|
|
<xs:element ref="structParmGroup" />
|
|
<xs:element ref="structParmArrayGroup"/>
|
|
<xs:element ref="structArrayGroup"/>
|
|
<xs:element ref="struct"/>
|
|
</xs:choice>
|
|
</xs:group>
|
|
|
|
|
|
<!-- Field Definition schema. -->
|
|
|
|
<!-- Define basic iSeries native data types. -->
|
|
|
|
<xs:complexType name="zonedDecimal">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:decimal">
|
|
<xs:attribute name="totalDigits" type="xs:positiveInteger" />
|
|
<xs:attribute name="fractionDigits" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<xs:complexType name="packedDecimal">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:decimal">
|
|
<xs:attribute name="totalDigits" type="xs:positiveInteger" />
|
|
<xs:attribute name="fractionDigits" type="xs:nonNegativeInteger" />
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<xs:complexType name="structureFieldArray">
|
|
<xs:sequence>
|
|
<xs:group ref="structureField" minOccurs="1" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="name" type="string50"/>
|
|
<!-- 'count' is required if you want to input and/or output array data as XPCML. -->
|
|
<xs:attribute name="count" type="xs:string"/>
|
|
</xs:complexType>
|
|
|
|
|
|
|
|
<!-- Abstract type for "struct or program". -->
|
|
<xs:element name="structOrProgram" abstract="true" />
|
|
|
|
|
|
<!-- Abstract type for all data field types. -->
|
|
<xs:element name="stringFieldGroup" type="stringFieldType" abstract="true" />
|
|
<xs:element name="intFieldGroup" type="intFieldType" abstract="true" />
|
|
<xs:element name="unsignedIntFieldGroup" type="unsignedIntFieldType" abstract="true" />
|
|
<xs:element name="shortFieldGroup" type="shortFieldType" abstract="true" />
|
|
<xs:element name="unsignedShortFieldGroup" type="unsignedShortFieldType" abstract="true" />
|
|
<xs:element name="longFieldGroup" type="longFieldType" abstract="true" />
|
|
<xs:element name="zonedDecimalFieldGroup" type="zonedDecimalFieldType" abstract="true" />
|
|
<xs:element name="packedDecimalFieldGroup" type="packedDecimalFieldType" abstract="true" />
|
|
<xs:element name="floatFieldGroup" type="floatFieldType" abstract="true" />
|
|
<xs:element name="doubleFieldGroup" type="doubleFieldType" abstract="true" />
|
|
<xs:element name="hexBinaryFieldGroup" type="hexBinaryFieldType" abstract="true" />
|
|
<xs:element name="structFieldGroup" type="structFieldType" abstract="true" />
|
|
|
|
|
|
|
|
<!-- Declare each field element to be a specific field type. -->
|
|
<xs:element name="stringField" type="stringFieldType" substitutionGroup="stringFieldGroup"
|
|
nillable="true"/>
|
|
<xs:element name="intField" type="intFieldType" nillable="true"
|
|
substitutionGroup="intFieldGroup" />
|
|
<xs:element name="unsignedIntField" type="unsignedIntFieldType"
|
|
substitutionGroup="unsignedIntFieldGroup" nillable="true"/>
|
|
<xs:element name="shortField" type="shortFieldType" nillable="true"
|
|
substitutionGroup="shortFieldGroup" />
|
|
<xs:element name="unsignedShortField" type="unsignedShortFieldType" nillable="true"
|
|
substitutionGroup="unsignedShortFieldGroup" />
|
|
<xs:element name="longField" type="longFieldType" nillable="true"
|
|
substitutionGroup="longFieldGroup" />
|
|
<xs:element name="hexBinaryField" type="hexBinaryFieldType" nillable="true"
|
|
substitutionGroup="hexBinaryFieldGroup" />
|
|
<xs:element name="zonedDecimalField" type="zonedDecimalFieldType" nillable="true"
|
|
substitutionGroup="zonedDecimalFieldGroup" />
|
|
<xs:element name="packedDecimalField" type="packedDecimalFieldType" nillable="true"
|
|
substitutionGroup="packedDecimalFieldGroup" />
|
|
<xs:element name="doubleField" type="doubleFieldType" nillable="true"
|
|
substitutionGroup="doubleFieldGroup" />
|
|
<xs:element name="floatField" type="floatFieldType" nillable="true"
|
|
substitutionGroup="floatFieldGroup" />
|
|
|
|
|
|
<xs:element name="structField" type="structFieldType" nillable="true"
|
|
substitutionGroup="structFieldGroup" />
|
|
|
|
<!-- A StructureField is exactly one of the following: stringField, intField,
|
|
shortField, longField, zonedDecimalField, packedDecimalField, floatField,
|
|
doubleField, or hexBinaryField. -->
|
|
<xs:group name="structureField">
|
|
<xs:choice>
|
|
<xs:element ref="stringFieldGroup"/>
|
|
<xs:element ref="intFieldGroup"/>
|
|
<xs:element ref="unsignedIntFieldGroup"/>
|
|
<xs:element ref="shortFieldGroup"/>
|
|
<xs:element ref="unsignedShortFieldGroup"/>
|
|
<xs:element ref="longFieldGroup"/>
|
|
<xs:element ref="zonedDecimalFieldGroup"/>
|
|
<xs:element ref="packedDecimalFieldGroup"/>
|
|
<xs:element ref="floatFieldGroup"/>
|
|
<xs:element ref="doubleFieldGroup"/>
|
|
<xs:element ref="hexBinaryFieldGroup"/>
|
|
<xs:element ref="structParmGroup"/>
|
|
<xs:element ref="struct"/>
|
|
</xs:choice>
|
|
</xs:group>
|
|
|
|
<!-- Character field -->
|
|
<!-- Maps to AS400Text. -->
|
|
<xs:complexType name="stringFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<!-- Number of characters. -->
|
|
<xs:attribute name="length" type="xs:string"/>
|
|
<!-- Indicates the field's encoding (CCSID) on the server. -->
|
|
<xs:attribute name="ccsid" type="xs:string"/>
|
|
<xs:attribute name="trim" type="trimType" />
|
|
<xs:attribute name="bytesPerChar" type="charType" />
|
|
<xs:attribute name="bidiStringType" type="bidiStringTypeType" />
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<!-- hexBinary field -->
|
|
<!-- Maps to AS400ByteArray. -->
|
|
<xs:complexType name="hexBinaryFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:hexBinary">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<!-- Float field -->
|
|
<!-- Maps to AS400Float4. -->
|
|
<xs:complexType name="floatFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:float">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- zonedDecimal field -->
|
|
<!-- Maps to AS400ZonedDecimal. -->
|
|
<xs:complexType name="zonedDecimalFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="zonedDecimal">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- packedDecimal field -->
|
|
<!-- Maps to AS400PackedDecimal. -->
|
|
<xs:complexType name="packedDecimalFieldType">
|
|
<xs:simpleContent>
|
|
<!-- In DDS, "binary" values are 1-18 digits; if field length is
|
|
greater than 9, then decimal positions value must be 0. -->
|
|
<xs:extension base="packedDecimal">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- int field -->
|
|
<!-- Maps to AS400Bin4. -->
|
|
<xs:complexType name="intFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:int">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- unsigned int field -->
|
|
<!-- Maps to AS400Bin4. -->
|
|
<xs:complexType name="unsignedIntFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:unsignedInt">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- short field -->
|
|
<!-- Maps to AS400Bin2. -->
|
|
<xs:complexType name="shortFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:short">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- unsigned short field -->
|
|
<!-- Maps to AS400Bin2. -->
|
|
<xs:complexType name="unsignedShortFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:unsignedShort">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<!-- long field -->
|
|
<!-- Maps to AS400Bin8. -->
|
|
<xs:complexType name="longFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:long">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<!-- double field -->
|
|
<!-- Maps to AS400Float8. -->
|
|
<xs:complexType name="doubleFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:double">
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
|
|
<!-- struct Field -->
|
|
<xs:complexType name="structFieldType">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<xs:attribute name="struct" type="string50"/>
|
|
<xs:attributeGroup ref="commonFieldAttrs"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
|
|
<!-- Attributes that are common to all data field types. -->
|
|
<xs:attributeGroup name="commonFieldAttrs">
|
|
<xs:attribute name="name" type="string50"/>
|
|
<xs:attribute name="columnHeading1" type="string20"/>
|
|
<xs:attribute name="columnHeading2" type="string20"/>
|
|
<xs:attribute name="columnHeading3" type="string20"/>
|
|
<xs:attribute name="description" type="string50"/>
|
|
<xs:attribute name="defaultValue" type="xs:string"/><!-- Max length of string is 65535 characters. -->
|
|
<xs:attribute name="nullable" type="xs:boolean"/>
|
|
<xs:attribute name="isEmptyString" type="xs:boolean"/><!-- Indicate this is an empty string. -->
|
|
</xs:attributeGroup>
|
|
|
|
<!-- Utility types. -->
|
|
|
|
<xs:simpleType name="ccsidType">
|
|
<xs:restriction base="xs:nonNegativeInteger">
|
|
<xs:maxInclusive value="65535"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="string10">
|
|
<xs:restriction base="xs:string">
|
|
<xs:maxLength value="10"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="string20">
|
|
<xs:restriction base="xs:string">
|
|
<xs:maxLength value="20"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="string50">
|
|
<xs:restriction base="xs:string">
|
|
<xs:maxLength value="50"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:schema></pre>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzahhxpcmlschema.htm" title="XPCML documents, called XPCML source files, contain tags and data that fully define calls to programs on your iSeries server.">XPCML schema and syntax</a></div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html> |