[ 
https://issues.apache.org/jira/browse/YOKO-361?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Edell Nolan updated YOKO-361:
-----------------------------

    Affects Version/s: 1.0.1

> Const expression suport for idltowsdl
> -------------------------------------
>
>                 Key: YOKO-361
>                 URL: https://issues.apache.org/jira/browse/YOKO-361
>             Project: Yoko - CORBA Server
>          Issue Type: Bug
>          Components: Idl2Wsdl
>    Affects Versions: 1.0.1
>            Reporter: Edell Nolan
>            Assignee: Edell Nolan
>
> Matteo Vescovi [25/Apr/07 06:07 AM] 
> I have a few questions about const declarators... Let's use the following 
> const declarations as examples: 
> const string s1 = "hello"; 
> const string<10> s2 = "hello"; 
> const string<10 + 2> s3 = "hello"; 
> const string s4 = "hello" + "world"; 
> const string s5 = "hello" << "world"; 
> const string<10 + 2> s6 = "hello" + "world"; 
> const long l1 = 10; 
> const long l2 = 10 + 20; 
> const long l3 = 10 + ((10 | 20 * (100 << 2)) / 2); 
> const float f1 = 3.14 * 10; 
> ...and now for the questions: 
> - do we need to differentiate between const strings and const bounded 
> strings? For example, strings s1 and s2 both have the constant value of 
> "hello". The information about the bound is only used when validating the idl 
> or when converting the wsdl back to idl. Can we relax our tool and generate 
> the same XmlSchema and CorbaTypeMap for both? 
> - do expressions on const strings even make sense? Take constant strings s4 
> and s5 for example. The IDL grammar allows to produce those declarations, but 
> are they semantically valid? How do you shift "hello" by "world"? Is the + 
> operator overloaded to concatenate strings? 
> - if we differentiate between const strings and const bounded strings, then 
> we will have to compute the <10 + 2> bound spec for string s6, as we can't 
> assign a string to the Corba anonstring type bound member. But if we do that, 
> we lose information and cannot get the original IDL back. 
> - in general, I think we should assign the full string of const_exp to the 
> value="" attribute of the corba:const element in the corbatypemap. That is 
> the value="10 + ((10 | 20 * (100 << 2)) / 2)" for the const long l3 or 
> value="10 + 20" for const long l2, instead of value="30". Will the code 
> generator (wsdl2java) be able to handle this? 
> [ Show » ] Matteo Vescovi [25/Apr/07 06:07 AM] I have a few questions about 
> const declarators... Let's use the following const declarations as examples: 
> const string s1 = "hello"; const string<10> s2 = "hello"; const string<10 + 
> 2> s3 = "hello"; const string s4 = "hello" + "world"; const string s5 = 
> "hello" << "world"; const string<10 + 2> s6 = "hello" + "world"; const long 
> l1 = 10; const long l2 = 10 + 20; const long l3 = 10 + ((10 | 20 * (100 << 
> 2)) / 2); const float f1 = 3.14 * 10; ...and now for the questions: - do we 
> need to differentiate between const strings and const bounded strings? For 
> example, strings s1 and s2 both have the constant value of "hello". The 
> information about the bound is only used when validating the idl or when 
> converting the wsdl back to idl. Can we relax our tool and generate the same 
> XmlSchema and CorbaTypeMap for both? - do expressions on const strings even 
> make sense? Take constant strings s4 and s5 for example. The IDL grammar 
> allows to produce those declarations, but are they semantically valid? How do 
> you shift "hello" by "world"? Is the + operator overloaded to concatenate 
> strings? - if we differentiate between const strings and const bounded 
> strings, then we will have to compute the <10 + 2> bound spec for string s6, 
> as we can't assign a string to the Corba anonstring type bound member. But if 
> we do that, we lose information and cannot get the original IDL back. - in 
> general, I think we should assign the full string of const_exp to the 
> value="" attribute of the corba:const element in the corbatypemap. That is 
> the value="10 + ((10 | 20 * (100 << 2)) / 2)" for the const long l3 or 
> value="10 + 20" for const long l2, instead of value="30". Will the code 
> generator (wsdl2java) be able to handle this? 
> [ Permlink | Delete | « Hide ] Balaji Ravi [26/Apr/07 06:19 AM] 
> const strings & const bounded strings: I think we should map them 
> differently. We should use a simple type with a restriction on the maxLength 
> for bounded strings. 
> expressions: Can we process these expressions and then output the result in 
> the wsdl... 
> I dont think we need to reproduce the same idl for these expressions. This is 
> an edge case which we need not tackle. I would say we can process these 
> expressions and simplify the wsdl generated. 
> [ Show » ] Balaji Ravi [26/Apr/07 06:19 AM] const strings & const bounded 
> strings: I think we should map them differently. We should use a simple type 
> with a restriction on the maxLength for bounded strings. expressions: Can we 
> process these expressions and then output the result in the wsdl... I dont 
> think we need to reproduce the same idl for these expressions. This is an 
> edge case which we need not tackle. I would say we can process these 
> expressions and simplify the wsdl generated. 
> [ Permlink | Delete | « Hide ] Edell Nolan [26/Apr/07 08:00 AM] 
> But what happens in the case 
> const string<10 + 2> s6 = "hello" + "world"; 
> Should we print the string then as "hello world" but this does not 
> necessarily have to be another string. Its just another const expression. 
> Edell. 
> [ Show » ] Edell Nolan [26/Apr/07 08:00 AM] But what happens in the case 
> const string<10 + 2> s6 = "hello" + "world"; Should we print the string then 
> as "hello world" but this does not necessarily have to be another string. Its 
> just another const expression. Edell. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to