RE: changes between schema versions

>Is there any more intelligible description of what's changed between schema
>versions than Appendix G:
>
>diff by hand on a document this size

A diff on the whole document is cumbersome, but a dtddiff (see
http://www.oac.uci.edu/indiv/ehood/perlSGML.html) on the appendix with the
DTD is still useful. For earlier versions of the draft, I had posted dtddiff
output comparing each new one with the previous one onto xml-dev, and I
didn't realize that I hadn't done that with the April one until I saw
Simon's post, so here it is. If you don't see it in a monospaced font, it
will look better in one. 

I just noticed that xmldiff maps everything to lower-case. It's still useful
to pinpoint big changes. In fact, this lower-case mapping has some use,
because all upper-case is sometimes used to identify new parts. 

I called the two versions xmlschema12-99.dtd and xsdl4-00.dtd on my hard
disk, so that's what it's actually comparing.

Bob DuCharme          www.snee.com/bob           <bob@  
snee.com>  "The elements be kind to thee, and make thy
spirits all of comfort!" Anthony and Cleopatra, III ii

    ----------------------------------------------------------------------
                    New Elements/Attributes (xsdl4-00.dtd)
    ----------------------------------------------------------------------
	<all>                            <all id>
	<all maxoccurs>                  <all minoccurs>
	<any processcontents>            <attribute form>
	<attribute id>                   <attribute ref>
	<attribute use>                  <attribute value>
	<attributegroup id>              <choice>
	<choice id>                      <choice maxoccurs>
	<choice minoccurs>               <complextype>
	<complextype abstract>           <complextype base>
	<complextype block>              <complextype content>
	<complextype derivedby>          <complextype final>
	<complextype id>                 <complextype name>
	<documentation>                  <documentation source>
	<documentation xml:lang>         <duration>
	<duration value>                 <element (qualified|unqualified)>
	<element (true|false)>           <element cdata>
	<element id>                     <element nmtoken>
	<element refcdata>               <group cdata>
	<group id>                       <group nmtoken>
	<group refcdata>                 <key id>
	<keyref id>                      <notation id>
	<schema attributeformdefault>    <schema blockdefault>
	<schema elementformdefault>      <schema id>
	<sequence>                       <sequence id>
	<sequence maxoccurs>             <sequence minoccurs>
	<simpletype>                     <simpletype base>
	<simpletype name>                <unique id>
    ----------------------------------------------------------------------
             Old/removed Elements/Attributes (xmlschema12-99.dtd)
    ----------------------------------------------------------------------
	<attribute default>              <attribute fixed>
	<attribute maxoccurs>            <attribute minoccurs>
	<datatype>                       <datatype abstract>
	<datatype final>                 <datatype name>
	<datatype source>                <element abstract>
	<element default>                <element equivclass>
	<element exact>                  <element final>
	<element fixed>                  <element maxoccurs>
	<element minoccurs>              <element nullable>
	<element ref>                    <element type>
	<group maxoccurs>                <group minoccurs>
	<group order>                    <group ref>
	<info>                           <info source>
	<info xml:lang>                  <restrictions>
	<schema exactdefault>            <sic>
	<type>                           <type abstract>
	<type content>                   <type derivedby>
	<type exact>                     <type final>
	<type name>                      <type source>
    ----------------------------------------------------------------------
                           Content Rule Differences
    ----------------------------------------------------------------------
         ------------------------------------------------------------
	                         <ANNOTATION>

  << old content rule <<
  (appinfo|INFO)*

  >> new content rule >>
  (appinfo|documentation)*

         ------------------------------------------------------------
	                            <ANY>

  << old content rule <<
  EMPTY

  >> new content rule >>
  (annotation)?

         ------------------------------------------------------------
	                        <ANYATTRIBUTE>

  << old content rule <<
  EMPTY

  >> new content rule >>
  (annotation)?

         ------------------------------------------------------------
	                         <ATTRIBUTE>

  << old content rule <<
  ((annotation)?,
   (DATATYPE)?)

  >> new content rule >>
  ((annotation)?,
   (simpletype)?)

         ------------------------------------------------------------
	                          <ELEMENT>

  << old content rule <<
  ((annotation)?,
   (TYPE|DATATYPE)?,
   (unique|key|keyref)*)

  >> new content rule >>
  ((annotation)?,
   (complextype|simpletype)?,
   (unique|key|keyref)*)

         ------------------------------------------------------------
	                           <GROUP>

  << old content rule <<
  ((annotation)?,
   (element|group|any)*)

  >> new content rule >>
  (all|choice|sequence)?

         ------------------------------------------------------------
	                           <IMPORT>

  << old content rule <<
  EMPTY

  >> new content rule >>
  (annotation)?

         ------------------------------------------------------------
	                          <INCLUDE>

  << old content rule <<
  EMPTY

  >> new content rule >>
  (annotation)?

         ------------------------------------------------------------
	                            <KEY>

  << old content rule <<
  (selector,
   (field)+)

  >> new content rule >>
  ((annotation)?,selector,
   (field)+)

         ------------------------------------------------------------
	                           <KEYREF>

  << old content rule <<
  (selector,
   (field)+)

  >> new content rule >>
  ((annotation)?,selector,
   (field)+)

         ------------------------------------------------------------
	                          <NOTATION>

  << old content rule <<
  EMPTY

  >> new content rule >>
  (annotation)?

         ------------------------------------------------------------
	                           <SCHEMA>

  << old content rule <<
  ((include|import|annotation)*,
   (DATATYPE|TYPE|element|attributegroup|group|notation),
   (annotation|DATATYPE|TYPE|element|attributegroup|group|notation|unique|
    key|keyref)*)

  >> new content rule >>
  ((include|import|annotation)*,
   (simpletype|complextype|element|attribute|attributegroup|group|
    notation),
   (annotation|simpletype|complextype|element|attribute|attributegroup|
    group|notation)*)

         ------------------------------------------------------------
	                           <UNIQUE>

  << old content rule <<
  (selector,
   (field)+)

  >> new content rule >>
  ((annotation)?,selector,
   (field)+)

Received on Tuesday, 23 May 2000 14:14:42 UTC