Re: [tap] W3C Evaluation and Report Language (EARL)

Steffen Schwigon <> Wed, 09 November 2011 20:25 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 34E7B1F0C53 for <>; Wed, 9 Nov 2011 12:25:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, J_CHICKENPOX_43=0.6]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Qts+DoMi8b9w for <>; Wed, 9 Nov 2011 12:25:06 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 34D211F0C7F for <>; Wed, 9 Nov 2011 12:25:05 -0800 (PST)
Received: by (Postfix, from userid 1000) id 4B4583F23ED; Wed, 9 Nov 2011 20:25:04 +0000 (GMT)
From: Steffen Schwigon <>
To: Christophe Strobbe <>
References: <>
Date: Wed, 09 Nov 2011 20:25:04 +0000
In-Reply-To: <> (Christophe Strobbe's message of "Wed, 09 Nov 2011 14:23:18 +0100")
Message-ID: <>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Cc:, Shadi Abou-Zahra <>
Subject: Re: [tap] W3C Evaluation and Report Language (EARL)
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Test Anything Protocol WG discussions <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 09 Nov 2011 20:25:07 -0000

Christophe Strobbe <> writes:
> Report Language (EARL) and a few related specifications. EARL's core
> use case is reporting the results of accessibility evaluations of
> websites (i.e. accessibility for persons with disabilities), but the
> language itself is generic, so it can also be used in other
> contexts. The language is based on RDF;
> […]
> During our last call for comments, one of the reviewers asked the
> working group if EARL duplicates TAP's efforts, or vice versa. The
> working group thinks that this is not the case; we think that EARL
> could be an alternative report format for TAP if a TAP consumer could
> be written that produces EARL. For this reason, we thought it would be
> interesting to contact you and to make sure we are aware of each
> other's work.

Thanks for sync'ing this back to us. I just skimmed through the specs
and it was indeed interesting. As far as I understand from my (very
short) skimming I think it's not that many duplication of effort as the
main difference is a philosophical one.

- EARL is similar to other W3C specs in respect to specifying a
  comprehensive snapshot of known existing topics. For example, it
  particularly covers all known HTTP methods (POST, GET, PUT, …). That
  enables it to build tools on top of it that sematically “know” what
  the document is about.

- TAP in contrast is about specifying test results, really just the
  *result* focus without hard specification of the tested topic, i.e., a
  single test has a “description”, so someone reading it knows what it
  is about but that part does not have a specification. 

  For instance, a test about a HTTP method could have any description
  from “POST” to “that strange other method that I never remember but
  always use when GET is not sufficient”.

See [1] for some related discussion of this aspect.

In this respect I think TAP is more like your RDF with some extensions
from EARL to describe test success.

That makes the use-cases of TAP and EARL a bit different: 

- TAP allows to be produced by anything simple without toolchain
  support, like embedded devices with nothing but a “print” function,
  but you can not *sematically* evaluate results.

- EARL seems to require more heavy toolchain support to produce but
  allows more semantic result evaluation.

Converting TAP to EARL is difficult. 
Converting EARL to TAP is easy.

On the evaluation of TAP I can point to TAP::DOM and Data::DPath, which
provide a more structured approach to evaluate test results, see my “TAP
Juggling” slides[2], page 30ff.

Kind regards,



Steffen Schwigon <>
Dresden Perl Mongers <>