[
https://issues.apache.org/jira/browse/TUSCANY-1083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12470697
]
Yang ZHONG commented on TUSCANY-1083:
-------------------------------------
With a little performance tradeoff (double queries to create an EPackage), it
can be simplified as
public EPackage getEPackage(XSDNamedComponent xsdNamedComponent)
{
XSDSchema containingXSDSchema = xsdNamedComponent.getSchema();
String targetNamespace =
containingXSDSchema == null ?
xsdNamedComponent.getTargetNamespace() :
containingXSDSchema.getTargetNamespace();
EPackage ePackage =
(EPackage)targetNamespaceToEPackageMap.get(targetNamespace);
if (ePackage != null)
return ePackage;
ePackage = super.getEPackage(xsdNamedComponent);
String nsPrefix =
xsdNamedComponent.getElement().lookupPrefix(targetNamespace);
if (nsPrefix != null)
ePackage.setNsPrefix(nsPrefix);
return ePackage;
}
> Shorter NameSpace prefix to speed up XML processing and reduce communication
> bandwidth
> --------------------------------------------------------------------------------------
>
> Key: TUSCANY-1083
> URL: https://issues.apache.org/jira/browse/TUSCANY-1083
> Project: Tuscany
> Issue Type: Improvement
> Components: Java SDO Implementation
> Affects Versions: Java-SDO-Mx
> Reporter: Yang ZHONG
> Fix For: Java-SDO-Mx
>
> Attachments: prefix.xsd, ShortPrefix
>
>
> Given XSD:
> <schema xmlns="http://www.w3.org/2001/XMLSchema"
> targetNamespace="http://soaassureservice.soabench.ibm.com"
> xmlns:as="http://soaassureservice.soabench.ibm.com">
> <element name="requestInfo" type="string"/>
> <element name="createClaim">
> ...
> SDO generates NameSpace prefix too long:
> <soaassureservice:createClaim
> xmlns:soaassureservice="http://soaassureservice.soabench.ibm.com">
> <soaassureservice:requestInfo>...</soaassureservice:requestInfo>
> ...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]