Comment on XML Schema Working Draft

Dear Committee,

We would like to request a modification to the current working draft of
the XML Schema, Working Draft 7 April 2000.  Specifically, we are
interested in the implementation of a mechanism for the usage of
symbolic constants in XML Schema.

Efforts have recently begun in the High Energy Physics community to use
XML to describe the geometry of our detectors.  Several languages have
already been developed toward this aim and we have recently begun work
toward merging our efforts into a standard.

Our geeometrical description of a detector involves the construction of
a complex structure from simple components in an iterative manner.  We
create elementary solids and position instances of them in space.  These
actions require the entry of explicit values for the dimensions of the
solids and the coordinates of the positions.  In our current model, we
store these values as attributes.  This involves the entry of thousands
of values to describe these complex detectors, making it essential to
avoid data repetition.

Ideally, we would like to be able to define a symbolic constant in the
XML implementation which could be referenced throughout the document.
The constant therefore needs to have a type, a name, a value and possibly
a unit. In our case, we would include the constant as an attribute or as
element content. Most likely, this implies the need for a mechanism to
differentiate between a symbol and plain text when referencing.

To give an example for the XML implementation, we would like to be able
to describe a piece of geometry like:

<constant name="chamber_width" value="105.254" unit="mm" />
<constant name="chamber_length" value="210.508" unit="mm" />

<box name="Upper Chamber" X="$chamber_width" Y="$chamber_length" Z="32"
material="Lead" />
<box name="Lower Chamber" X="$chamber_width" Y="$chamber_length" Z="14"
material="Copper" /> 

In this example, the parser would replace the name of the symbol with the
value of the symbol. It is important that this also support type checking,
i.e. in the example above, the attributes X, Y and Z should all be defined
as 'double'.

We realise that this feature is not implemented for XML and we hope that
this will be revised in the future. However, XML schema could benefit from
this by facilitating the creation of default values. In the current XML
Schema working draft, the default values must be typed explicitly, and
cannot be a reference to a previously defined constant.

During the course of our discussions with other experts we found that the
'Express' language contains a similar mechanism to handle symbolic
constants, as well as being able to use arithmetic expresssions. Clearly,
also this community would benefit from our request.

Awaiting your response.

With Best Regards,

Stan Bentvelsen (Stan.Bentvelsen@cern.ch)
Steven Goldfarb (Steven.Goldfarb@cern.ch)

-- 
========================================================================
 Steven Goldfarb              University of Michigan / ATLAS Experiment
 Address: CERN-EP, 1211 Geneve 23, Suisse     CERN Office: Bat 40-3-D15
 Phone: +41.22.767.1226                       <Steven.Goldfarb@cern.ch> 
 Fax:   +41.22.767.8350                 <http://home.cern.ch/goldfarb/>
========================================================================

Received on Friday, 12 May 2000 17:17:02 UTC