Hi I have XSD file, which i am going paste below i create java source using option as below ava -cp %CASTORCLASSPATH% org.exolab.castor.builder.SourceGeneratorMain -i ConfirmBOD.xsd -package com.pfizer.maps.res -dest ./src
But there are lot of java code which is not getting compiled the error i get is, that the code is trying to extend itself, Can anyone try the style sheet and let me know why this happens, and what is the work around <?xml version="1.0" encoding="UTF-8"?> <xs:schema targetNamespace="http://www.pfizer.com/bod/mapslims/res" elementFormDefault="qualified" attributeFormDefault="unqualified" id="UID-28000000-6F498CF3130100-0A237752-01" xmlns=" http://www.pfizer.com/bod/mapslims/res" xmlns:xs=" http://www.w3.org/2001/XMLSchema"> <xs:element name="DocumentId" type="DocumentIdType" abstract="true"/> <xs:element name="DocumentIds" type="DocumentIds"/> <xs:element name="ErrorMessage" type="ErrorMessage"/> <xs:element name="BODSuccessMessage" type="ProcessingSuccess"/> <xs:element name="ApplicationArea" type="ApplicationArea"/> <xs:element name="BusinessObjectDocument" type="BusinessObjectDocument" abstract="true"/> <xs:element name="BODPartialSuccessMessage" type="ProcessingFailure"/> <xs:element name="NounSuccess" type="ProcessingSuccess" nillable="true"/> <xs:element name="UserArea" type="UserArea"/> <xs:element name="WarningMessage" type="WarningMessage"/> <xs:element name="BODFailureMessage" type="ProcessingFailure"/> <xs:element name="NounOutcome" type="NounOutcome"/> <xs:element name="Confirm" type="Confirm"/> <xs:element name="NounFailure" type="ProcessingFailure" nillable="true"/> <xs:element name="BOD" type="BODType"/> <xs:element name="ConfirmBOD" type="ConfirmBOD"/> <xs:complexType name="ConfirmBOD"> <xs:complexContent> <xs:extension base="BusinessObjectDocument"> <xs:sequence> <xs:element name="DataArea" type="ConfirmBODDataArea"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexType name="ConfirmBODDataArea"> <xs:sequence> <xs:element ref="Confirm" minOccurs="0"/> <xs:element ref="BOD" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="Sender"> <xs:sequence> <xs:element name="LogicalId" type="LogicalId" minOccurs="0"/> <xs:element name="ComponentId" type="xs:string" minOccurs="0"/> <xs:element name="TaskId" minOccurs="0"> <xs:simpleType> <xs:restriction base="Task"/> </xs:simpleType> </xs:element> <xs:element name="ReferenceId" minOccurs="0"> <xs:simpleType> <xs:restriction base="ReferenceId"/> </xs:simpleType> </xs:element> <xs:element name="ConfirmationCode" type="Confirmation" minOccurs="0"/> <xs:element name="AuthorizationId" type="AuthorizationId" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="TransactionRecordType"> <xs:sequence> <xs:element name="Status" type="xs:string" minOccurs="0"/> <xs:element name="Condition" type="xs:string" minOccurs="0"/> <xs:element name="Sync" type="xs:string" minOccurs="0"/> <xs:element name="TransInfo" type="xs:string" minOccurs="0"/> <xs:element name="ReceiverId" type="xs:decimal" minOccurs="0"/> <xs:element name="ProcessDate" type="xs:string" minOccurs="0"/> <xs:element name="FinishDate" type="xs:string" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="StateChange"> <xs:sequence> <xs:element name="From" type="Code" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="To" type="Code" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="ChangeDate" type="DateTimeAny" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Description" type="Description" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="BusinessObjectDocument"> <xs:sequence> <xs:element ref="ApplicationArea"/> </xs:sequence> <xs:attribute name="revision" use="required"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="\p{N}\.\p{N}\.\p{N}"/> <xs:pattern value="\p{N}\.\p{N}"/> <xs:pattern value="\p{N}\p{N}\.\p{N}\.\p{N}"/> <xs:pattern value="\p{N}\p{N}\.\p{N}"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="environment" default="Production"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Development"/> <xs:enumeration value="Test"/> <xs:enumeration value="Production"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="lang" type="xs:language" default="en-US"/> </xs:complexType> <xs:complexType name="Usage"> <xs:simpleContent> <xs:extension base="xs:string"/> </xs:simpleContent> </xs:complexType> <xs:complexType name="BODType"> <xs:sequence> <xs:element name="OriginalApplicationArea" type="ApplicationArea"/> <xs:group ref="FreeFormTextGroup"/> <xs:choice> <xs:annotation> <xs:documentation/> </xs:annotation> <xs:element ref="BODFailureMessage" minOccurs="0"/> <xs:element ref="BODSuccessMessage" minOccurs="0"/> </xs:choice> <xs:element name="UserArea" type="ConfirmBODUserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="ProcessingOutcomeMessage"> <xs:sequence> <xs:element name="Description" type="Description" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="ReasonCode" type="ReasonCode" minOccurs="0"/> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="NounStatus"> <xs:sequence/> </xs:complexType> <xs:complexType name="Name"> <xs:simpleContent> <xs:extension base="LingualString"/> </xs:simpleContent> </xs:complexType> <xs:complexType name="DocumentIds"> <xs:sequence> <xs:element ref="DocumentId" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="UserArea" block="restriction"> <xs:sequence> <xs:any namespace="##any" processContents="strict" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="NounOutcome"> <xs:sequence> <xs:element ref="DocumentIds" minOccurs="0"/> <xs:element ref="NounSuccess" minOccurs="0"/> <xs:element ref="NounFailure" minOccurs="0"/> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="ErrorMessage"> <xs:complexContent> <xs:extension base="ProcessingOutcomeMessage"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Note"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> <xs:simpleContent> <xs:extension base="LingualString"> <xs:attribute name="author" type="xs:string"/> <xs:attribute name="entryDateTime" type="DateTime"/> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:complexType name="Revision"> <xs:simpleContent> <xs:extension base="xs:string"/> </xs:simpleContent> </xs:complexType> <xs:complexType name="GenericDocumentReference"> <xs:sequence> <xs:element ref="DocumentIds" minOccurs="0"/> <xs:element name="DocumentDate" type="DateTimeAny" minOccurs="0"/> <xs:group ref="CommonReference" minOccurs="0"/> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="LingualString"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="lang" type="xs:language"/> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:complexType name="ProcessingSuccess"> <xs:sequence> <xs:element ref="WarningMessage" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="Status"> <xs:sequence> <xs:element name="Code" type="Code" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Description" type="Description" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Change" type="StateChange" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="ProcessingFailure"> <xs:sequence> <xs:element ref="ErrorMessage" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="WarningMessage" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:complexType name="Signature"> <xs:sequence> <xs:any namespace="##any" processContents="strict" minOccurs="0"/> </xs:sequence> <xs:attribute name="qualifyingAgency" type="xs:string"/> </xs:complexType> <xs:complexType name="DocumentIdType"> <xs:sequence> <xs:element name="Id" minOccurs="0"> <xs:simpleType> <xs:restriction base="SimpleId"/> </xs:simpleType> </xs:element> <xs:element name="Revision" type="Revision" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:complexType name="NounOutcomeValue"> <xs:sequence/> </xs:complexType> <xs:complexType name="WarningMessage"> <xs:complexContent> <xs:extension base="ProcessingOutcomeMessage"/> </xs:complexContent> </xs:complexType> <xs:complexType name="Confirm"> <xs:attribute name="confirm" type="ConfirmType"/> </xs:complexType> <xs:complexType name="ConfirmBODUserArea"> <xs:sequence> <xs:element name="Transaction"> <xs:complexType> <xs:sequence> <xs:element name="TransactionRecord" type="TransactionRecordType" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="Description"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> <xs:simpleContent> <xs:extension base="LingualString"> <xs:attribute name="owner" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:complexType name="ApplicationArea"> <xs:sequence> <xs:element name="Sender" type="Sender" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="CreationDateTime" type="xs:dateTime"/> <xs:element name="Signature" type="Signature" minOccurs="0"/> <xs:element name="BODId" type="xs:string" minOccurs="0"/> <xs:element ref="UserArea" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:group name="FreeFormTextGroup"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis/9"/> </xs:annotation> <xs:sequence> <xs:element name="Description" type="Description" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="Note" type="Note" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:group> <xs:group name="CommonReference"> <xs:sequence> <xs:element name="Description" type="Description" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Name" type="Name" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Status" type="Status" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Usage" type="Usage" minOccurs="0"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> <xs:element name="Note" type="Note" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:element> </xs:sequence> </xs:group> <xs:simpleType name="ConfirmationStatus"> <xs:restriction base="xs:string"> <xs:enumeration value="Valid"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:enumeration> <xs:enumeration value="Invalid"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:enumeration> <xs:enumeration value="Accepted"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:enumeration> <xs:enumeration value="Rejected"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:simpleType name="ReasonCode"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> <xs:restriction base="Code"/> </xs:simpleType> <xs:simpleType name="Code"> <xs:annotation> <xs:documentation source="http://www.openapplications.org/oagis"/> </xs:annotation> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="Task"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="DateTimeAny"> <xs:union memberTypes="Date DateTime"/> </xs:simpleType> <xs:simpleType name="AuthorizationId"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="ReferenceId"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="Date"> <xs:restriction base="xs:date"> <xs:pattern value="\d\d\d\d-\d\d-\d\d"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="DateTime"> <xs:restriction base="xs:dateTime"> <xs:pattern value="\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d(Z|(\+|-)\d\d:\d\d)"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="ConfirmType"> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Always"/> <xs:enumeration value="OnChange"/> <xs:enumeration value="Never"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="SimpleId"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="Confirmation"> <xs:restriction base="xs:string"> <xs:enumeration value="0"/> <xs:enumeration value="1"/> <xs:enumeration value="2"/> <xs:enumeration value="Never"/> <xs:enumeration value="OnError"/> <xs:enumeration value="Always"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="LogicalId"> <xs:restriction base="xs:string"/> </xs:simpleType> </xs:schema>

