UBL Naming and Design Rules SC

 View Only

Re: [ubl-ndrsc] Derivation of complexTypes with attributes andelement-values

  • 1.  Re: [ubl-ndrsc] Derivation of complexTypes with attributes andelement-values

    Posted 11-07-2002 15:37
     MHonArc v2.5.2 -->
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    ubl-ndrsc message

    [Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


    Subject: Re: [ubl-ndrsc] Derivation of complexTypes with attributes andelement-values


    
    This looks great to me -- as long as we're sure that, by leaving the
    faceted versions unnamed, we're not tossing away a really good
    opportunity for reuse.  Customizers can always easily do their own
    faceting (and naming if they want), so I think we're okay.
    
          Eve
    
    Stuhec, Gunther wrote:
     > Hello Bill,
     >
     > I checked all possibilities of supplementary restrictions of BCCs 
    now. A found a solution without changes our defined structure of the CCTs.
     >
     > I will show you on the following example.
     >
     > The following complexType represents the BCC "CompactAttribute". It 
    includes all information in it. It bases on the built-in datatype 
    "xsd:decimal" and have included the additional attribute "currencyId" 
    which represents the supplementary component "Currency. Identification" 
    and the attribute group "cct:commonAttributes" with all global defined 
    attributes.
     >
     > 	<xsd:complexType name="CompactAttribute">
     > 		<xsd:simpleContent>
     > 			<xsd:extension base="xsd:decimal">
     > 				<xsd:attribute name="currencyId" type="xsd:token" use="required"/>
     > 				<xsd:attributeGroup ref="cct:commonAttributes"/>
     > 			</xsd:extension>
     > 		</xsd:simpleContent>
     > 	</xsd:complexType>
     >
     > With that construct is the tuple "complexType/simpleType" (like the 
    following one) not necessary anymore.
     >
     > 	<xsd:simpleType name="AmountContent" id="000106">
     > 		<xsd:restriction base="xsd:decimal"/>
     > 	</xsd:simpleType>
     > 	<xsd:complexType name="AmountType" id="000105">
     > 		<xsd:simpleContent>
     > 			<xsd:extension base="cct:AmountContent"/>
     > 		</xsd:simpleContent>
     > 	</xsd:complexType>
     >
     > This will be an big advantage. Because you need only one construct 
    for representing the complete BCC. But this construct will have another 
    big advantage.
     >
     > If you will restrict the content component or the supplementary 
    components in another derived BBIE, you can do that without any copying 
    of the complete structure. In the following example I restricted the 
    length of the specific BBIE by the facets totalDigits and fractionDigits 
    without influencing the BCC itself:
     >
     > 	<xsd:element name="CompactTaxAmountRestriction">
     > 		<xsd:complexType>
     > 			<xsd:simpleContent>
     > 				<xsd:restriction base="cct:CompactAttribute">
     > 					<xsd:totalDigits value="10"/>
     > 					<xsd:fractionDigits value="5"/>
     > 				</xsd:restriction>
     > 			</xsd:simpleContent>
     > 		</xsd:complexType>
     > 	</xsd:element>
     >
     > If you would like to restrict the supplementary component "Currency. 
    Identification" too. It will be possible now, without any difficult 
    definitions. The following example shows this restriction:
     >
     > 	<xsd:element name="CompactTaxAmountRestriction">
     > 		<xsd:complexType>
     > 			<xsd:simpleContent>
     > 				<xsd:restriction base="cct:CompactAttribute">
     > 					<xsd:totalDigits value="10"/>
     > 					<xsd:fractionDigits value="5"/>
     > 					<xsd:attribute name="currencyId">
     > 						<xsd:simpleType>
     > 							<xsd:restriction base="xsd:token">
     > 								<xsd:length value="5"/>
     > 							</xsd:restriction>
     > 						</xsd:simpleType>
     > 					</xsd:attribute>
     > 				</xsd:restriction>
     > 			</xsd:simpleContent>
     > 		</xsd:complexType>
     > 	</xsd:element>
     >
     > And, if you change anything inside of the BCC "CompactAttribute". It 
    will impact all BBIE, which are derived from it, without any problems.
     >
     > I guess, this solves my problem.
     >
     > What do you think about it?
     >
     > Kind regards,
     >
     > 	Gunther
     >
     > ----------------------------------------------------------------
     > To subscribe or unsubscribe from this elist use the subscription
     > manager: <http://lists.oasis-open.org/ob/adm.pl>
     >
    
    -- 
    Eve Maler                                        +1 781 442 3190
    Sun Microsystems                     NEW!!! cell +1 781 354 9441
    Web Technologies and Standards               eve.maler @ sun.com
    
    
    


    [Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


    Powered by eList eXpress LLC