XCONCUR and XCONCUR-CL


A very brief overview

XCONCUR is an experimental markup language with the major goal to provide a convenient method to express concurrent hierarchies in an XML-like fashion. XCONCUR-CL is a validation component in XCONCUR and allows cross-layer validation.

Notation
The XCONCUR Syntax is similar to SGML with the CONCUR option set to 'YES'.
Model
The data model of XCONCUR are multi-rooted trees. A set of trees span over the same primary data.
Validation
Each annotation layer in an XCONCUR document may be validated against a schema written in one of the common "XML schema languages" (such as DTD, XML Schema or RelaxNG). XCONCUR-CL is a constraint language, which allows to define a set of constraints which are used in a cross-layer validation process.

An example XCONCUR instance

The following code shows a small XCONCUR instance:

<?xconcur version="1.1" encoding="iso-8859-1"?>
<?xconcur-schema layer="l1" root="div" system="teispok2.dtd"?>
<?xconcur-schema layer="l2" root="text" system="teiana2.dtd"?>
<?xconcur-constraint system="example.xcs" xconcur:l1="L1" xconcur:l2="L2"?>
<(l1)div type="dialog" org="uniform">
  <(l2)text>
      <(l1)u who="Peter">
    <(l2)s>Hey Paul!</(l2)s>
      <(l2)s>Would you give me
    </(l1)u>
    <(l1)u who="Paul">
      the hammer?</(l2)s>
    </(l1)u>
  </(l2)text>
</(l1)div>

References

The following publications provide more information about XCONCUR: