OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: Remember to RELAX (was RE: Are there still a lot of people usingDTD)

[ Lists Home | Date Index | Thread Index ]
  • From: Murata Makoto <mura034@attglobal.net>
  • To: xml-dev@xml.org
  • Date: Thu, 03 Aug 2000 00:01:52 +0900

Simon St. Laurent wrote:
> At 04:11 PM 8/1/00 -0400, Bob Kline wrote:
> >I've assumed (from a distance) based on statements that use phrases like
> >"upward compatibility" and "easy transition" that the functionality
> >provided by RELAX was a subset of that provided by XML Schema. However,
> >I haven't found anything in the latter comparable to the attribute- 
> >sensitive content models supported by RELAX. Is this because XML Schema
> >doesn't have such a feature, or just because it's harder to find things
> >in the more densely-worded Schema documentation (or perhaps just because
> >I'm not reading carefully enough)?
> 
> I think there may be a fundamental mismatch between the models used by the
> two systems. XML Schemas seems to take a top-down typing and inheritance
> approach, whie RELAX uses a bottom-up approach with what feels to me like
> set theory. (They did announce the addition of a top-down model as well
> recently.)

RELAX is rather a modest improvement of DTDs, while XML Schema is an
attempt for a grand unification theory of DTDs, object-oriented
programming, and RDB.  As a result, there are some impedence mismatches.  

> For me, RELAX descriptions read more naturally, but it seems to be the
> other way around for the object-oriented developers I always seem to end up
> presenting to.

Next time, you might want to use examples in STEPs 9 and 10 
of "HOW TO RELAX" (http://www.xml.gr.jp/relax).  These STEPs 
was translated only recently.

For example, 

  <tag name="Point"/>

  <elementRule role="Point">
    <sequence>
      <element name="x" type="int"/>
      <element name="y" type="int"/>
    </sequence>
  </elementRule>

permits the following instance:

<Point>
  <x>10</x>
  <y>20</y>
</Point>

Moreover, from a RELAX module containing the above elementRule, 
Relaxer automatically generates a Java class as below:

public class Point implements java.io.Serializable {
    private int x;
    private int y;

....

I will give a talk about Relaxer in Extreme Markup Language 2000. 

Cheers,

MURATA Makoto




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS