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

Jon Ferraiolo jferrai at us.ibm.com
Tue Jul 1 06:33:14 PDT 2008

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

(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.,

(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/3d541779/attachment.html 

More information about the IDE mailing list