Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » XML Schema Definition (XSD) » Allowed children of a XSDSimpleTypeDefinition
Allowed children of a XSDSimpleTypeDefinition [message #33003] Wed, 12 November 2003 12:25 Go to next message
Dennis Fuglsang is currently offline Dennis Fuglsang
Messages: 77
Registered: July 2009
Member
Ed,

I am a little confused (again :-) about a piece of logic in
XSDSimpleTypeDefinitionItemProvider.collectNewChildDescripto rs(...). The
logic, shown below, adds a new child descriptor to the list regardless of
whether canAccomodateFacet(std,facet) returns true or false. Reading the
javadoc for canAccomodateFacet(...) it seems that if this method returns
false then the simple datatype cannot accomodate the given constraining
facet and should not even be returned as a permissible child. Should it be
creating a CommandParameter instance with a null feature reference?

// facets
for (Iterator i = validFacets.iterator(); i.hasNext(); )
{
XSDConstrainingFacet facet =

(XSDConstrainingFacet)xsdFactory.create((EClass)xsdPackage.g etEClassifier(fo
rmFacetTypeName(i.next())));
facet.setLexicalValue("");
feature = !canAccomodateFacet(std, facet) ? null : <<<<<
xsdPackage.getXSDSimpleTypeDefinition_FacetContents();
newChildDescriptors.add(createChildParameter(feature, facet));
}

Thanks.

Dennis
Re: Allowed children of a XSDSimpleTypeDefinition [message #33039 is a reply to message #33003] Wed, 12 November 2003 12:52 Go to previous message
Eclipse User
Originally posted by: merks.ca.ibm.com

Dennis,

This way the menu item is disabled rather than disappearing so it keeps the menu
looking consistent for every simple type.


dfuglsang wrote:

> Ed,
>
> I am a little confused (again :-) about a piece of logic in
> XSDSimpleTypeDefinitionItemProvider.collectNewChildDescripto rs(...). The
> logic, shown below, adds a new child descriptor to the list regardless of
> whether canAccomodateFacet(std,facet) returns true or false. Reading the
> javadoc for canAccomodateFacet(...) it seems that if this method returns
> false then the simple datatype cannot accomodate the given constraining
> facet and should not even be returned as a permissible child. Should it be
> creating a CommandParameter instance with a null feature reference?
>
> // facets
> for (Iterator i = validFacets.iterator(); i.hasNext(); )
> {
> XSDConstrainingFacet facet =
>
> (XSDConstrainingFacet)xsdFactory.create((EClass)xsdPackage.g etEClassifier(fo
> rmFacetTypeName(i.next())));
> facet.setLexicalValue("");
> feature = !canAccomodateFacet(std, facet) ? null : <<<<<
> xsdPackage.getXSDSimpleTypeDefinition_FacetContents();
> newChildDescriptors.add(createChildParameter(feature, facet));
> }
>
> Thanks.
>
> Dennis
Re: Allowed children of a XSDSimpleTypeDefinition [message #580758 is a reply to message #33003] Wed, 12 November 2003 12:52 Go to previous message
Ed Merks is currently offline Ed Merks
Messages: 25746
Registered: July 2009
Senior Member
Dennis,

This way the menu item is disabled rather than disappearing so it keeps the menu
looking consistent for every simple type.


dfuglsang wrote:

> Ed,
>
> I am a little confused (again :-) about a piece of logic in
> XSDSimpleTypeDefinitionItemProvider.collectNewChildDescripto rs(...). The
> logic, shown below, adds a new child descriptor to the list regardless of
> whether canAccomodateFacet(std,facet) returns true or false. Reading the
> javadoc for canAccomodateFacet(...) it seems that if this method returns
> false then the simple datatype cannot accomodate the given constraining
> facet and should not even be returned as a permissible child. Should it be
> creating a CommandParameter instance with a null feature reference?
>
> // facets
> for (Iterator i = validFacets.iterator(); i.hasNext(); )
> {
> XSDConstrainingFacet facet =
>
> (XSDConstrainingFacet)xsdFactory.create((EClass)xsdPackage.g etEClassifier(fo
> rmFacetTypeName(i.next())));
> facet.setLexicalValue("");
> feature = !canAccomodateFacet(std, facet) ? null : <<<<<
> xsdPackage.getXSDSimpleTypeDefinition_FacetContents();
> newChildDescriptors.add(createChildParameter(feature, facet));
> }
>
> Thanks.
>
> Dennis
Previous Topic:Allowed children of a XSDSimpleTypeDefinition
Next Topic:1999 schema - IndexOutOfBoundsException
Goto Forum:
  


Current Time: Sat Apr 19 02:54:24 EDT 2014

Powered by FUDForum. Page generated in 0.01557 seconds