>
> * Should error messages returned by the API be translated? Or should the
> translation be left to JavaScript in the client?

I think it should be left to JavaScript in the client. The API is not a UI,
so it is not intended to function as an internationalized interface.
However, a JavaScript script that uses the API *is* part of a UI, and thus
has the burden of internationalizing whatever it does. Additionally, I
don't know much about our API clients, but adding in non-ASCII characters
may or may not cause issues.


> ** In both cases, it would be nice to have a consistent relationship
> between
> error codes and the corresponding system message.

I agree. Maybe for each error message in the api we have a "api-$code"
message that corresponds to a proper description of the error.


>
> ** If translation is done on the client, we need to pass any message
> parameters
> separately.
> ** The message key would have to somehow be derived or mapped from the
> error code.

Herein lies the biggest difficulty.

*--*
*Tyler Romeo*
Stevens Institute of Technology, Class of 2015
Major in Computer Science
www.whizkidztech.com | tylerro...@gmail.com


On Fri, Jan 25, 2013 at 8:01 AM, Daniel Kinzler <dan...@brightbyte.de>wrote:

> Hi all!
>
> Wikidata (technically, Wikibase) uses a lot of JS/API based editing, and
> we have
> several times hit upon the question of how to best report errors from the
> API.
> I'll try to break the issue down into several concrete questions. But
> first off,
> the status quo as I understand it:
>
> * errors are reported using an error code (a string) and a free form error
> message. The message is usually not internationalized, though sometimes it
> is.
> * warnings are reported as free form text.
> * Additional information can be added to both errors and warnings, but
> there is
> no standard way to do this.
> * Errors exposed by the API are often not generated but just passed
> through by
> the API; Typically, a generic error code is used with the original error
> message
> (e.g. from an exception).
>
> So, here are my questions:
>
> * Should error messages returned by the API be translated? Or should the
> translation be left to JavaScript in the client?
> ** In both cases, it would be nice to have a consistent relationship
> between
> error codes and the corresponding system message.
> ** If translation is done on the client, we need to pass any message
> parameters
> separately.
> ** The message key would have to somehow be derived or mapped from the
> error code.
>
>
> * When using system messages to translate the error codes from the API,
> these
> messages will often contain wikitext. How can we best avoid this? Wikitext
> is
> likely to be quite useless to the client - it would be better to return
> HTML; or
> pass all the message keys and parameters, and let the client generate the
> message.
>
> * Status objects are often used to collect errors and warnings the occur
> while
> trying to perform some task. It would be nice if the API would provide a
> standard way to put the contents of a Status object into the result (well,
> at
> least the errors and warnings).
>
> Any thoughts on that?
>
> -- daniel
>
> _______________________________________________
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l
>
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to