Sample BC4JService.xsd

To access BC4JService.xsd for the common service operations and the XSDs that it references for a cloud instance, replace the external virtual host and port in the URL:

https://(FADomain,FSCMServices)/fscmService/ServiceCatalogService?XSD=/META-INF/wsdl/BC4JService.xsd

The following is a sample BC4JService.xsd:

<xsd:schema xmlns:errors="http://xmlns.oracle.com/adf/svc/errors/"   
xmlns:sdo="commonj.sdo" xmlns:sdoJava="commonj.sdo/java"
xmlns:sdoXML="commonj.sdo/xml" xmlns="http://xmlns.oracle.com/adf/svc/types/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"elementFormDefault="qualified" targetNamespace=
"http://xmlns.oracle.com/adf/svc/types/" sdoJava:package="oracle.jbo.common.service.types">
    <xsd:import namespace="http://xmlns.oracle.com/adf/svc/errors/"
    schemaLocation="https://fs-your-cloud-hostname:port/
    fscmService/ServiceCatalogService?XSD=/META-INF/wsdl/ServiceException.xsd"/>
    <xsd:import namespace="commonj.sdo" schemaLocation="https://fs-your-cloud-hostname:port/
    fscmService/ServiceCatalogService?XSD=/xml/sdoModel.xsd"/>
    <xsd:import namespace="commonj.sdo/java" schemaLocation="https://fs-your-cloud-hostname:port/
    fscmService/ServiceCatalogService?XSD=/xml/sdoJava.xsd"/>
    <xsd:import namespace="commonj.sdo/xml" schemaLocation="https://fs-your-cloud-hostname:port/
    fscmService/ServiceCatalogService>?XSD=/xml/sdoXML.xsd"/
    <xsd:element name="findCriteria" type="FindCriteria"/>
    <xsd:complexType name="FindCriteria">
        <xsd:sequence>
            <xsd:element default="0" name="fetchStart" type="xsd:int"/>
            <xsd:element default="-1" name="fetchSize" type="xsd:int"/>
            <xsd:element minOccurs="0" name="filter" type="ViewCriteria"/>
            <xsd:element minOccurs="0" name="sortOrder" type="SortOrder"/>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="findAttribute" 
            type="xsd:string"/>
            <xsd:element default="false" name="excludeAttribute" type="xsd:boolean"/>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="childFindCriteria"
            type="ChildFindCriteria"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="ViewCriteria">
        <xsd:sequence>
            <xsd:element minOccurs="0" name="conjunction" type="Conjunction"/>
            <xsd:element maxOccurs="unbounded" name="group" type="ViewCriteriaRow"/>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="nested" type="ViewCriteria"/>
        </xsd:sequence>
    </xsd:complexType>       
    <xsd:complexType name="ViewCriteriaRow">
        <xsd:sequence>
            <xsd:element minOccurs="0" name="conjunction" type="Conjunction"/>
            <xsd:element default="false" name="upperCaseCompare" type="xsd:boolean"/>
            <xsd:element maxOccurs="unbounded" name="item" type="ViewCriteriaItem"/>
        /xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="ViewCriteriaItem">
        <xsd:sequence>
            <xsd:element minOccurs="0" name="conjunction" type="Conjunction"/>
            <xsd:element default="false" name="upperCaseCompare" type="xsd:boolean"/>
            <xsd:element name="attribute" type="xsd:string"/>
            <xsd:element name="operator" type="xsd:string"/>
            <xsd:choice>
                <xsd:element maxOccurs="unbounded" minOccurs="0" name="value" 
                type="xsd:anySimpleType"/>
                <xsd:element name="nested" type="ViewCriteria"/>
            </xsd:choice>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:simpleType name="Conjunction" sdoJava:instanceClass="java.lang.String">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="And"/>
            <xsd:enumeration value="Or"/>
            <xsd:enumeration value="Not"/>
            <xsd:enumeration value="AndNot"/>
            <xsd:enumeration value="OrNot"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:complexType name="SortOrder">
        <xsd:sequence>
            <xsd:element maxOccurs="unbounded" name="sortAttribute" type="SortAttribute"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="SortAttribute">
        <xsd:sequence>
            <xsd:element name="name" type="xsd:string"/>
            <xsd:element default="false" name="descending" type="xsd:boolean"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="ChildFindCriteria">
        <xsd:complexContent>
            <xsd:extension base="FindCriteria">
                <xsd:sequence>
                    <xsd:element name="childAttrName" type="xsd:string"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:simpleType name="ChangeOperation" sdoJava:instanceClass="java.lang.String">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="Create"/>
            <xsd:enumeration value="Update"/>
            <xsd:enumeration value="Merge"/>
            <xsd:enumeration value="Delete"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:element name="findControl" type="FindControl"/>
    <xsd:complexType name="FindControl">
        <xsd:sequence>
            <xsd:element default="false" name="retrieveAllTranslations" type="xsd:boolean"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:element name="processControl" type="ProcessControl"/>
    <xsd:complexType name="ProcessControl">
        <xsd:sequence>
            <xsd:element minOccurs="0" name="returnMode" type="ReturnMode"/>
            <xsd:element minOccurs="0" name="exceptionReturnMode" type="ReturnMode"/>
            <xsd:element default="false" name="partialFailureAllowed" type="xsd:boolean"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:simpleType name="ReturnMode" sdoJava:instanceClass="java.lang.String">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="Full"/>
            <xsd:enumeration value="Key"/>
            <xsd:enumeration value="None"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="base64Binary-DataHandler" 
    sdoJava:instanceClass="javax.activation.DataHandler">
        <xsd:restriction base="xsd:base64Binary"/>
    </xsd:simpleType>
    <xsd:simpleType name="dateTime-Timestamp" sdoJava:instanceClass="java.sql.Timestamp">
        <xsd:restriction base="xsd:dateTime"/>
     </xsd:simpleType>
    <xsd:simpleType name="time-Time" sdoJava:instanceClass="java.sql.Time">
        <xsd:restriction base="xsd:time"/>
    </xsd:simpleType>
    <xsd:simpleType name="date-Date" sdoJava:instanceClass="java.sql.Date">
        <xsd:restriction base="xsd:date"/>
    </xsd:simpleType>
    <xsd:complexType name="AmountType">
        <xsd:simpleContent>
            <xsd:extension base="xsd:decimal">
                <xsd:attribute name="currencyCode" type="xsd:normalizedString" use="optional"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    <xsd:complexType name="MeasureType">
        <xsd:simpleContent>
            <xsd:extension base="xsd:decimal">
                <xsd:attribute name="unitCode" type="xsd:normalizedString" use="optional"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    <xsd:complexType name="MethodResult">
        <xsd:sequence>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="Message" 
            type="errors:ServiceMessage"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="BigDecimalResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:decimal"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="BigIntegerResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:integer"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="BooleanResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:boolean"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="ByteResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:byte"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="BytesResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:hexBinary"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="TimestampResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value"
                    type="xsd:dateTime" sdoXML:dataType="dateTime-Timestamp"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="TimeResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value"  
                    type="xsd:time" sdoXML:dataType="time-Time"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="DateResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:date" sdoXML:dataType="date-Date"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="DoubleResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:double"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FloatResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:float"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="IntegerResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:int"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="LongResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:long"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="ShortResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:short"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="StringResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:string"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="DataHandlerResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="base64Binary-DataHandler"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="DataObjectResult">
        <xsd:complexContent>
            <xsd:extension base="MethodResult">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="Value" 
                    type="xsd:anyType" sdoXML:dataType="sdo:DataObject"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    <xsd:complexType name="ObjAttrHints">
        <xsd:sequence>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="objHint" type="CtrlHint"/>
            <xsd:element maxOccurs="unbounded" name="attrHints" type="AttrCtrlHints"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="AttrCtrlHints">
        <xsd:sequence>
            <xsd:element name="attrName" type="xsd:string"/>
            <xsd:element maxOccurs="unbounded" name="ctrlHint" type="CtrlHint"/>
        </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="CtrlHint">
        <xsd:sequence>
            <xsd:element name="key" type="xsd:string"/>
            <xsd:element name="value" type="xsd:anySimpleType"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="ServiceViewInfo">
        <xsd:sequence>
            <xsd:element name="name" type="xsd:string"/>
            <xsd:element name="typeName" type="xsd:string"/>
            <xsd:element default="false" minOccurs="0" name="canCreate" type="xsd:boolean"/>
            <xsd:element default="false" minOccurs="0" name="canUpdate" type="xsd:boolean"/>
            <xsd:element default="false" minOccurs="0" name="canMerge" type="xsd:boolean"/>
            <xsd:element default="false" minOccurs="0" name="canDelete" type="xsd:boolean"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:schema>