[OpenAjaxIDE] Some questions for Ingo (and everyone else)

Ingo Muschenetz ingo at aptana.com
Tue Jul 1 17:52:47 PDT 2008

Hi All,

Apologies for missing the call.

1) Attributes element: yes, editorial error. I've corrected that.
5) Alias: yes, the IDE would show the shortened version in content assist. I would suggest it must reference an available method or property or else the IDE won't be able to show proper content assist. It's a shortcut for having to define an item multiple times in the XML.

Let me know if there are other questions I can help answer.


On 7/1/08  Jul1 6:33 AM, "Jon Ferraiolo" <jferrai at us.ibm.com> wrote:

Here are some of the remaining questions relating to the API chapter of the metadata spec:

(1) (QUESTION SPECIFICALLY FOR INGO) The ScriptDoc XML page says that a <method> can have an <attributes> child element, but there is no <attributes> element listed in the ScriptDoc XML page. Is this an editorial error?

(2) Let's suppose your Ajax library uses a JavaScript class that is located at "MyLibrary.io.xhr". Which one of the following is correct:

(a) <class name="MyLibrary.io.xhr" ...>...</class>
(b) <class datatype="MyLibrary.io.xhr" ...>...</class>
(c) <class type="MyLibrary.io.xhr" ...>...</class>

I have been assuming (a), where we use the 'name' attribute in *definitions*, whereas we use the 'datatype' attribute when *referencing* a class (or whatever).

(3) Same question applies to <interface>, but one more thing on <interface>. Our spec right now has a 'type' attribute. Assuming we use 'name' to give the interface a referenceable name, I assume we don't need 'type' (or 'datatype'). Correct?

(4) For the <alias> element, we only have a 'name' attribute, whereas Aptana ScriptDoc XML has both 'name' and 'type'. My thinking is that our metadata spec should have both 'name' and 'datatype', where 'name' is alias's name/handle and 'datatype' is a reference to thing that is being aliased. Correct?

(5) Further questions for <alias> so that the spec can be clear. How is <alias> used by an IDE exactly? Is the main thing that the IDE has the option to substitute the shorter-friendlier name of the alias (e.g., "io") in place of a longer-unfriendly name (e.g., "MyLibrary.shared.crossplatform.communications.io")? If there is an alias in the metadata file, must there be a real JavaScript variable that implements this alias (e.g., io=MyLibrary.shared.crossplatform.communications.io)?

(6) Right now, our spec shows a 'visibility' attribute on <constructor>, <interface> and <class> (and presumably <field>, where I recently fixed some editorial errors), where visibility="public|private|protected|internal|protected-internal". Aptana has 'visibility' and <class>, <constructor>, <method> and <property>. It seems like 'visibility' should be on <class>, <constructor>, <method>, <property> and <field>. Does 'visibility' make sense on <interface> and <mixin>?

(7) I forgot what <namespace> does. Can someone remind me so I can add text to the spec?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://openajax.org/pipermail/ide/attachments/20080701/b4962cde/attachment-0001.html 

More information about the IDE mailing list