Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 Sep 2002 14:46:11 -0400 (EDT)
From:      Garrett Wollman <wollman@lcs.mit.edu>
To:        standards@FreeBSD.org
Cc:        doc@FreeBSD.org
Subject:   POSIX options concordance in XML
Message-ID:  <200209211846.g8LIkB0X070102@khavrinen.lcs.mit.edu>

next in thread | raw e-mail | index | archive | help
After spending about eight hours poring over two of the four volumes
of 1003.1-2001, I have created a machine-readable (XML) description of
all of the official and the interfaces which are associated with them.
Currently, this covers all optional behavior described in the
interface reference sections of XBD and XSI, with a few exceptions.
Some interfaces are described in more detail than others.  For example,
the description of the Threads option simply states ``the <pthread.h>
header is required''; the description of the Barriers option (which is
represented as a sub-option of Threads) states explicitly the names of
types and functions which are required to be implemented in
<pthread.h> for this particular option.

I expect that this concordance can be used in a number of ways:

- Generating automatic option testing scripts and test-coverage reports.
- Creating documentation of the implementation's choice of options.
- Creating a script to interactively query any implementation as to
  choice of options (using the getconf utility).

Some amount of conformance information has been encoded in the
concordance, specifically for implementation-defined limits and
constants required to have a specific value; however, this is not a
substitute for a full conformance-testing suite.  In particular, some
elements of optional behavior are described in English rather than in
machine-readable form.  It might at some point be extended along this
axis to cover mandatory interfaces as well as optional ones.  (In
fact, I think the schema is ready for this, but my wrists are not
going to tolerate that.)

I have not created an official schema, but it should be fairly obvious
from the vocabulary and the structure of the file.

If it proves useful, and I manage to write some of the tools I've
described, I'll check this in to the tree.

URL: <http://people.freebsd.org/~wollman/posix-options.xml>;
PGP: <http://people.freebsd.org/~wollman/posix-options.xml.asc>;

-GAWollman


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-doc" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200209211846.g8LIkB0X070102>