Hi Christian,

You have a point there :).

I personally like the wiki as a documentation tool and I like even more your offer to help :). You have enough karma to start this on the wiki.

Thanks
Hadrian


On May 19, 2009, at 3:33 PM, Christian Schneider wrote:

Hi Claus,

some time ago I thought the same as you. That api documentation should come from javadoc and a tool should make html out of it. My experience with this approach is quite bad though. The Javadoc html is quite ugly and people quite seldomly really use it. The xsds currently also do not include the javadoc. There is not much tooling around and creating the tooling normally gets low priority so the effect is most times bad documentation in the end.

So on the one hand I think the javadoc should be kept in good shape so people that use the java api can read some documentation in their ide. On the other hand it is quite unattractive to improve the javadoc. You have to check out the code change the java code, make sure it still builds and send a patch to the committers. If you are a committer it is a little easier as you probably have the code ready already. Still I have the feeling that people outside the commiters will not help much with the documentation.

On the other hand there is a really good example of api documentation on the web. The php documentation (e.g. http://www.php.net/manual/en/function.str-getcsv.php) . There is a part of the documentation that is written by the developers and then people can comment and discuss below. I have found some of the best hints in these comments. Perhaps camel could do such a thing too. The fixed part could be extracted from javadoc. Then there should be the possibility to add comments to the api function. The best thing would be to even not require people to have to create a user for the wiki. I could imagine that there would be quite a lot of help from the community. In any case the java documentation for an api function should contain a link to the wiki page where people can also read the community comments.

Apart from this I think we should not wait till the tooling is written. I would suggest to start documenting the API in the wiki without any tooling. Later when the tooling is finished we could consolidate it. The big advantage would be that the camel user see improved documentation from the start. The tooling solution can take a long time to do and in the mean time users will see absolutely no improvement. In any way I would volunteer to help a bit documenting the functions I use whatever solution you choose.

Greetings

Christian




Claus Ibsen schrieb:
On Sun, May 17, 2009 at 11:16 AM, Christian Schneider
<ch...@die-schneider.net> wrote:

Hi,

the current documentation of camel lacks one very important part: The Camel DSL. I have not found an index and detail pages about the different DSL
functions.
Is there any documentation already and I simply did not find it?

If not I would like to help in building some documentation. The question is
what would be a good structure?
I could imagine having one main page that holds an alphabetic and or
categorised list of DSL functions. Then below there could be one page per
function.
The categories could be done via labels so the lists on the index page could
be kept in sync automatically.

Any ideas about this?

Hi

We have debated this from time to time. The concensus is that we would
like this to be automated by scripts/tooling.
It would be impossible to keep the confluence wiki updated (I dislike
this wiki as its online based only) with all the DSL.

What would be better is that we could reuse the javadoc we have on the
DSL in the code and use tooling to extract that.

For starters it would be best if the tooling could enhance the
camel-spring.xsd generator to add <xsd:documentation> (I think the tag
is named) based on the model javadoc. Then we could improve the model
javadoc. Also each JAXB @ annotation we have for the model could be
documented as well and the tooling being able to slurp that as well.

Then we will have nice documentation in the XSD.
This XSD can maybe then be transformed into some HTML or whatever that
can be used in the wiki documentation.

However the XSD would be the best as it allows 3rd party visual
tooling to leverage this documentation, that is also best suited for
end users that uses these tools and are on a more beginner level and
thus requires better documentation.

There is ticket about this already in the Camel JIRA: CAMEL-632




Greetings

Christian

--

Christian Schneider
---
http://www.liquid-reality.de









--

Christian Schneider
---
http://www.liquid-reality.de


Reply via email to