[Dart] Looking for XML spec on Dart-client-to-server comm

Miller, James V (GE, Research) millerjv at crd.ge.com
Wed Feb 22 10:53:14 EST 2006


In the Dart2 checkout, there are a few example XML files under the ResultData
directory.  These are Dart Classic XML files.

You can look at the DartClient.java or the CTest code to see how to construct
the XML-RPC message that wraps one of these files.

As Scott mentioned, you can look at the Digester rules to see how the 
Dart Classic XML is parsed.  These rules are under Source/dart/Resources/Server/TestProcessorRules.xml

This file handles all the XML parsing of submissions: Dart Classic, Dart 2, Cruise Control, etc.
It looks like the Dart Classic parsing starts around line 256.  The Dart Classic
pattern values of the root nodes are: "Update", "Site", "Testing", "Coverage", "CoverageLog",
"DynamicAnalysis" and "Configure". (Like I said, the various Dart Classic XML files were 
not very uniform).  

If I had to guess, the Dart 2 XML parsing starts at line 236 with the pattern value
of the root node of "DartSubmission".  To produce Dart 2 XML files, you probably need
to understand the naming conventions employed internally for tests (Build error/warnings 
show as tests under .Build.Build, regular runtime tests show up under .Test, etc.). We'll
need to provide you with a document on these conventions.

Jim


-----Original Message-----
From: Matt England [mailto:mengland at mengland.net]
Sent: Wednesday, February 22, 2006 10:24 AM
To: Miller, James V (GE, Research)
Cc: Matthew England; cmake at cmake.org; dart at public.kitware.com
Subject: RE: [Dart] Looking for XML spec on Dart-client-to-server comm


At 2/22/2006 09:16 AM, Miller, James V \(GE, Research\) wrote:
>Dart2 accepts the Dart Classic XML wrapped in an XML-RPC message.  Dart2 
>also uses an XML format
>for its data archive and reconstitution.  In the long run, you will 
>probably want to use that
>XML format since it is more consistent.

Sounds good, and thanks for the quick response.

>I'll have Dan document that XML format.

Ok, that would be great for the longer-term (ie, beyond this week or month).

Also, for quick-time-to implementation, I was looking to get just a minimal 
set of the DTD for my prototype and feasibility study on this.

One route I'm considering to do this: Does ctest use the Dart2 DTD (I hope 
I'm not mangling the concept/name/syntax)?  If so, I was hoping I could 
peek at the ctest code somewhere, learn a few pointers, and then build and 
send of a few simple "test-case messages" to  a Dart2 server just to see if 
I can get a client working ok (and then I can start forming the structure 
for a reusable C++ library for my internal project).

I'm also curious: how did the ctest folks learn to speak Dart2 DTD when 
ctest originally started?  Was it all an oral conversation?  Maybe there's 
some artifacts/docs used in that process that I might be able to borrow, 
even if they are informal/messy?  I'd even take hand-written notes if 
you're willing to send them to me (eg, via page scan or something).

-Matt 



More information about the Dart mailing list