(no commit message)
authorKatja Luther <k.luther@bgbm.org>
Wed, 30 Sep 2009 13:45:49 +0000 (13:45 +0000)
committerKatja Luther <k.luther@bgbm.org>
Wed, 30 Sep 2009 13:45:49 +0000 (13:45 +0000)
cdmlib-io/src/main/resources/schema/cdm/agent.xsd
cdmlib-io/src/main/resources/schema/cdm/cdm.xsd
cdmlib-io/src/main/resources/schema/cdm/common.xsd
cdmlib-io/src/main/resources/schema/cdm/description.xsd
cdmlib-io/src/main/resources/schema/cdm/media.xsd
cdmlib-io/src/main/resources/schema/cdm/name.xsd
cdmlib-io/src/main/resources/schema/cdm/occurrence.xsd
cdmlib-io/src/main/resources/schema/cdm/reference.xsd
cdmlib-io/src/main/resources/schema/cdm/taxon.xsd

index f577ef846f913fefd55340fc889aaf5ae568fe67..daeef6b1c1d0c1341f610a1b276d5ae9ef7a9a2e 100644 (file)
@@ -1,9 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
-       attributeFormDefault="unqualified" version="1.0"
-       targetNamespace="http://etaxonomy.eu/cdm/model/agent/1.0" xmlns:agent="http://etaxonomy.eu/cdm/model/agent/1.0"
-       xmlns:common="http://etaxonomy.eu/cdm/model/common/1.0" xmlns:location="http://etaxonomy.eu/cdm/model/location/1.0"
-       xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:media="http://etaxonomy.eu/cdm/model/media/1.0"
+<xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified"
+       version="1.0" 
+       targetNamespace="http://etaxonomy.eu/cdm/model/agent/1.0" 
+       xmlns:media="http://etaxonomy.eu/cdm/model/media/1.0" 
+       xmlns:common="http://etaxonomy.eu/cdm/model/common/1.0" 
+       xmlns:location="http://etaxonomy.eu/cdm/model/location/1.0" 
+       xmlns:agent="http://etaxonomy.eu/cdm/model/agent/1.0" 
+       xmlns:xs="http://www.w3.org/2001/XMLSchema"
        xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
        jxb:extensionBindingPrefixes="xjc" jxb:version="2.1"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
index a847620bad88a521d7802a51c0a4e924c4cfd2aa..83eb51c999acb4f75d75c13e06532dc9f1ebe68a 100644 (file)
           </xs:complexType>
         </xs:element>
         <xs:element name="Occurrences" minOccurs="0">
-          <xs:complexType>
-            <xs:sequence>
-              <xs:choice minOccurs="0" maxOccurs="unbounded">
-                <xs:element ref="occurrence:DerivedUnit"/>
-                <xs:element ref="occurrence:DnaSample"/>
-                <xs:element ref="occurrence:FieldObservation"/>
-                <xs:element ref="occurrence:Fossil"/>
-                <xs:element ref="occurrence:LivingBeing"/>
-                <xs:element ref="occurrence:Observation"/>
-                <xs:element ref="occurrence:Specimen"/>
-              </xs:choice>
-            </xs:sequence>
-            <xs:attribute ref="xml:base"/>
-          </xs:complexType>
-        </xs:element>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:choice minOccurs="0" maxOccurs="unbounded">
+              <xs:element ref="occurrence:DerivedUnit"/>
+              <xs:element ref="occurrence:DnaSample"/>
+              <xs:element ref="occurrence:FieldObservation"/>
+              <xs:element ref="occurrence:Fossil"/>
+              <xs:element ref="occurrence:LivingBeing"/>
+              <xs:element ref="occurrence:Observation"/>
+              <xs:element ref="occurrence:Specimen"/>
+            </xs:choice>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
         <xs:element name="EventBases" minOccurs="0">
           <xs:complexType>
             <xs:sequence>
index 06753867170e3c8036da0d95bc4316c36d82823e..5c6ea28af6fc38852e9135ef201234b60c4eac7d 100644 (file)
     <xs:complexContent>
       <xs:extension base="common:AnnotatableEntity">
         <xs:sequence>
-          <xs:element name="Text" type="common:FormattedText" minOccurs="1"/>
-          <xs:element name="Language" type="xs:IDREF" minOccurs="1"/>
+          <xs:element name="Text" type="common:FormattedText" minOccurs="0"/>
+          <xs:element name="Language" type="xs:IDREF" minOccurs="0"/>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
   <xs:complexType name="MarkerType">
     <xs:complexContent>
       <xs:extension base="common:DefinedTermBase">
-        <xs:sequence/>
+        <xs:attribute name="isTechnical" type="xs:boolean"/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
     <xs:sequence>
       <xs:element name="Start" type="common:Partial" minOccurs="0"/>
       <xs:element name="End" type="common:Partial" minOccurs="0"/>
+      <xs:element name="FreeText" type="xs:string" minOccurs="0"/>
     </xs:sequence>
   </xs:complexType>
 
     </xs:complexContent>
   </xs:complexType>
   
+  <xs:complexType name="DescriptionElementSource">
+    <xs:complexContent>
+      <xs:extension base="common:OriginalSource">
+        <xs:sequence>
+          <xs:element name="SourcedObject" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="nameUsedInSource" type="xs:IDREF" minOccurs="0"/>
+        </xs:sequence>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+  
    <xs:complexType name="OrderedTermVocabulary">
     <xs:complexContent>
       <xs:extension base="common:TermVocabulary">
index 9849606b8056cafba6807f12498d623b8ad2fc09..47f3e6182a501ac6c2078caf2d3b1eba4b9ab4c9 100644 (file)
       <xs:extension base="common:DefinedTermBase">
         <xs:sequence>
           <xs:element ref="common:KindOf" minOccurs="0"/>
-          <xs:element ref="common:Generalizations" minOccurs="0"/>
+          <xs:element ref="common:Generalizations"/>
           <xs:element ref="common:PartOf" minOccurs="0"/>
-          <xs:element ref="common:Includes" minOccurs="0"/>
+          <xs:element ref="common:Includes"/>
           <xs:element name="SupportsTextData" type="xs:boolean"/>
           <xs:element name="SupportsQuantitativeData" type="xs:boolean"/>
           <xs:element name="SupportsDistribution" type="xs:boolean"/>
           <xs:element name="SupportsCommonTaxonName" type="xs:boolean"/>
           <xs:element name="SupportsCategoricalData" type="xs:boolean"/>
           <xs:element name="RecommendedModifierEnumerations" minOccurs="0">
-           <xs:complexType>
+            <xs:complexType>
               <xs:sequence>
                 <xs:element name="RecommendedModifierEnumeration" type="xs:IDREF" minOccurs="0" maxOccurs="unbounded"/>
               </xs:sequence>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
-           <xs:element name="RecommendedMeasurementUnits" minOccurs="0">
+          <xs:element name="RecommendedMeasurementUnits" minOccurs="0">
             <xs:complexType>
               <xs:sequence>
                 <xs:element name="RecommendedMeasurementUnit" type="xs:IDREF" minOccurs="0" maxOccurs="unbounded"/>
           <xs:element name="DescriptiveSystem" minOccurs="0">
             <xs:complexType>
               <xs:sequence>
-                <xs:element ref="description:Feature" minOccurs="0" maxOccurs="unbounded"/>
+                <xs:element name="Feature" type="xs:IDREF" minOccurs="0" maxOccurs="unbounded"/>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
             <xs:complexType>
               <xs:sequence>
                 <xs:choice minOccurs="0" maxOccurs="unbounded">
-                  <xs:element ref="description:CategoricalData"/>
+                  <xs:element name="CategorialData" type="description:CategoricalData"/>
                   <xs:element ref="description:CommonTaxonName"/>
                   <xs:element ref="description:Distribution"/>
                   <xs:element ref="description:IndividualsAssociation"/>
 
   <xs:complexType name="DescriptionElementBase" abstract="true">
     <xs:complexContent>
-      <xs:extension base="common:ReferencedEntityBase">
+      <xs:extension base="common:AnnotatableEntity">
         <xs:sequence>
-          <xs:element name="Feature" type="xs:IDREF" minOccurs="0"/>
+          <xs:element ref="description:Feature" minOccurs="0"/>
           <xs:element name="Modifiers" minOccurs="0">
             <xs:complexType>
               <xs:sequence>
-                <xs:element name="Modifier" type="xs:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+                <xs:element ref="description:Modifier" minOccurs="0" maxOccurs="unbounded"/>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
             </xs:complexType>
           </xs:element>
           <xs:element name="InDescription" type="xs:IDREF" minOccurs="0"/>
-          <xs:element name="nameUsedInReference" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="Sources" minOccurs="0">
+            <xs:complexType>
+              <xs:sequence>
+                <xs:element name="OriginalSource" type="common:DescriptionElementSource" minOccurs="0" maxOccurs="unbounded"/>
+              </xs:sequence>
+            </xs:complexType>
+          </xs:element>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
index 89781fbcdd7cc2b7ce214592691c982e12352001..8ea8836d1554aaec2ef34fc1fe1515d7791d0962 100644 (file)
 
   <xs:complexType name="Media">
     <xs:complexContent>
-      <xs:extension base="common:AnnotatableEntity">
+      <xs:extension base="common:IdentifiableEntity">
         <xs:sequence>
           <xs:element name="MediaTitle" type="common:MultilanguageText" minOccurs="0"/>
-          <xs:element name="MediaCreated" type="xs:dateTime" minOccurs="0"/>
+          <xs:element name="MediaCreated" type="xs:string" minOccurs="0"/>
           <xs:element name="MediaDescription" type="common:MultilanguageText" minOccurs="0"/>
           <xs:element name="MediaRepresentations" minOccurs="0">
             <xs:complexType>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
-          <xs:element name="Rights" minOccurs="0">
-            <xs:complexType>
-              <xs:sequence>
-                <xs:element name="Right" type="media:Rights" minOccurs="0" maxOccurs="unbounded"/>
-              </xs:sequence>
-            </xs:complexType>
-          </xs:element>
           <xs:element name="Artist" type="xs:IDREF" minOccurs="0"/>
         </xs:sequence>
       </xs:extension>
index 6dd99b5cd21425ad45d0c39e9546aa1c12146b84..bd6634cbcfb09f9601270b36603ecc2a72801e83 100644 (file)
           </xs:element>
           <xs:element name="HomotypicalGroup" type="xs:IDREF" minOccurs="0"/>
           <xs:element name="IsNotDesignated" type="xs:boolean"/>
+          <xs:element name="TypeStatus" type="xs:IDREF" minOccurs="0"/>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
 
   <xs:complexType name="SpecimenTypeDesignation">
     <xs:complexContent>
-      <xs:extension base="name:TypeDesignationStatusBase">
+      <xs:extension base="name:TypeDesignationBase">
         <xs:sequence>
           <xs:element name="TypeSpecimen" type="xs:IDREF" minOccurs="0"/>
-          <xs:element name="TypeStatus" type="xs:IDREF" minOccurs="0"/>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
-
+  
   <xs:complexType name="NonViralName">
     <xs:complexContent>
       <xs:extension base="name:TaxonNameBase">
           <xs:element name="AuthorshipCache" type="xs:string" minOccurs="0"/>
           <xs:element name="ProtectedAuthorshipCache" type="xs:boolean"/>
           <xs:element name="ProtectedNameCache" type="xs:boolean"/>
-          <xs:element name="HybridRelationships" minOccurs="0">
+          <xs:element name="HybridRelationsFromThisName" minOccurs="0">
+            <xs:complexType>
+              <xs:sequence>
+                <xs:element name="HybridRelationsFromThisName" type="name:HybridRelationship" minOccurs="0" maxOccurs="unbounded"/>
+              </xs:sequence>
+            </xs:complexType>
+          </xs:element>
+          <xs:element name="HybridRelationsToThisName" minOccurs="0">
             <xs:complexType>
               <xs:sequence>
-                <xs:element name="HybridRelationship" type="name:HybridRelationship" minOccurs="0" maxOccurs="unbounded"/>
+                <xs:element name="HybridRelationsToThisName" type="name:HybridRelationship" minOccurs="0" maxOccurs="unbounded"/>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
+          <xs:element name="IsHybridFormula" type="xs:boolean"/>
+          <xs:element name="IsMonomHybrid" type="xs:boolean"/>
+          <xs:element name="IsBinomHybrid" type="xs:boolean"/>
+          <xs:element name="IsTrinomHybrid" type="xs:boolean"/>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
     <xs:complexContent>
       <xs:extension base="name:NonViralName">
         <xs:sequence>
-          <xs:element name="IsHybridFormula" type="xs:boolean"/>
+          
           <xs:element name="IsMonomHybrid" type="xs:boolean"/>
           <xs:element name="IsBinomHybrid" type="xs:boolean"/>
           <xs:element name="IsTrinomHybrid" type="xs:boolean"/>
index c0aa2958da985b68ef81672bdadca08fb8fed9a3..b3fbc98f62dfc6abf3a08f9d4343cbd9ac04ddc2 100644 (file)
     </xs:complexContent>
   </xs:complexType>
 
-  <xs:complexType name="Specimen">
-    <xs:complexContent>
-      <xs:extension base="occurrence:DerivedUnitBase">
-        <xs:sequence>
-          <xs:element name="Preservation" type="xs:IDREF" minOccurs="0"/>
-        </xs:sequence>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-
-  <xs:complexType name="DerivedUnitBase" abstract="true">
-    <xs:complexContent>
-      <xs:extension base="occurrence:SpecimenOrObservationBase">
-        <xs:sequence>
-          <xs:element name="Collection" type="xs:IDREF" minOccurs="0"/>
-          <xs:element name="CatalogNumber" type="xs:string" minOccurs="0"/>
-          <xs:element name="StoredUnder" type="xs:IDREF" minOccurs="0"/>
-          <xs:element name="DerivedFrom" type="xs:IDREF" minOccurs="0"/>
-          <xs:element name="AccessionNumber" type="xs:string" minOccurs="0"/>
-          <xs:element name="CollectorsNumber" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
-      </xs:extension>
-    </xs:complexContent>
-  </xs:complexType>
-
   <xs:complexType name="SpecimenOrObservationBase" abstract="true">
     <xs:complexContent>
       <xs:extension base="media:IdentifiableMediaEntity">
           <xs:element name="Descriptions" minOccurs="0">
             <xs:complexType>
               <xs:sequence>
-                <xs:element name="Description" type="description:SpecimenDescription" minOccurs="0" maxOccurs="unbounded"/>
+                <xs:element name="Description" type="description:DescriptionBase" minOccurs="0" maxOccurs="unbounded"/>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
           <xs:element name="DerivationEvents" minOccurs="0">
             <xs:complexType>
               <xs:sequence>
-                <xs:element name="DerivationEvent" type="xs:IDREF" minOccurs="0" maxOccurs="unbounded"/>
+                <xs:element ref="occurrence:DerivationEvent" minOccurs="0" maxOccurs="unbounded"/>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
     </xs:complexContent>
   </xs:complexType>
 
+  <xs:complexType name="DerivedUnitBase" abstract="true">
+    <xs:complexContent>
+      <xs:extension base="occurrence:SpecimenOrObservationBase">
+        <xs:sequence>
+          <xs:element ref="occurrence:Collection" minOccurs="0"/>
+          <xs:element name="CatalogNumber" type="xs:string" minOccurs="0"/>
+          <xs:element name="StoredUnder" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="DerivedFrom" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="AccessionNumber" type="xs:string" minOccurs="0"/>
+          <xs:element name="CollectorsNumber" type="xs:string" minOccurs="0"/>
+        </xs:sequence>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
+  
+
   <xs:complexType name="DeterminationEvent">
     <xs:complexContent>
       <xs:extension base="common:EventBase">
     </xs:complexContent>
   </xs:complexType>
 
+  <xs:complexType name="Specimen">
+    <xs:complexContent>
+      <xs:extension base="occurrence:DerivedUnitBase">
+        <xs:sequence>
+          <xs:element name="Preservation" type="xs:IDREF" minOccurs="0"/>
+        </xs:sequence>
+      </xs:extension>
+    </xs:complexContent>
+  </xs:complexType>
+
   <xs:complexType name="DerivationEvent">
     <xs:complexContent>
       <xs:extension base="common:EventBase">
               </xs:sequence>
             </xs:complexType>
           </xs:element>
-          <xs:element name="DerivationEventType" type="xs:IDREF" minOccurs="0"/>
+          <xs:element ref="occurrence:DerivationEventType" minOccurs="0"/>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
         <xs:sequence>
           <xs:element name="FieldNumber" type="xs:string" minOccurs="0"/>
           <xs:element name="FieldNotes" type="xs:string" minOccurs="0"/>
-          <xs:element name="GatheringEvent" type="xs:IDREF"/>
+           <xs:element ref="occurrence:GatheringEvent" minOccurs="0"/>
         </xs:sequence>
       </xs:extension>
     </xs:complexContent>
index 7c865d442706d79ba2c4cc92e3a485c976f327b3..91325ad399aae91f8a13a39dbb977c873f266c18 100644 (file)
 
   <xs:element name="PublicationBase" type="reference:PublicationBase"/>
 
-  <xs:element name="RelationshipBase" type="reference:ReferenceBase"/>
+  <xs:element name="RelationshipBase" type="reference:Reference"/>
 
   <xs:element name="Report" type="reference:Report"/>
 
   <xs:element name="SectionBase" type="reference:SectionBase"/>
 
-  <xs:element name="StrictReferenceBase" type="reference:StrictReferenceBase"/>
+  <!-- <xs:element name="StrictReferenceBase" type="reference:StrictReferenceBase"/> --> 
 
   <xs:element name="Thesis" type="reference:Thesis"/>
 
   <xs:element name="WebPage" type="reference:WebPage"/>
 
-  <xs:complexType name="ReferenceBase" abstract="true">
+  <xs:complexType name="Reference" abstract="true">
     <xs:complexContent>
       <xs:extension base="media:IdentifiableMediaEntity">
         <xs:sequence>
-          <xs:element name="URI" type="xs:anyURI" minOccurs="0"/>
+          <xs:element name="URI" type="xs:string" minOccurs="0"/>
           <xs:element name="IsNomenclaturallyRelevant" type="xs:boolean"/>
           <xs:element name="AuthorTeam" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="Abstract" type="xs:string" minOccurs="0"/>
+          <xs:element name="Title" type="xs:string" minOccurs="0"/>
+          <xs:element name="Editor" type="xs:string" minOccurs="0"/>
+          <xs:element name="Volume" type="xs:string" minOccurs="0"/>
+          <xs:element name="Pages" type="xs:string" minOccurs="0"/>
+          <xs:element name="Series" type="xs:string" minOccurs="0"/>
+          <xs:element name="Edition" type="xs:string" minOccurs="0"/>
+          <xs:element name="ISBN" type="xs:string" minOccurs="0"/>
+          <xs:element name="ISSN" type="xs:string" minOccurs="0"/>
+          <xs:element name="SeriesPart" type="xs:string" minOccurs="0"/>
+          <xs:element name="DatePublished" type="common:TimePeriod" minOccurs="0"/>
+          <xs:element name="Publisher" type="xs:string" minOccurs="0"/>
+          <xs:element name="PlacePublished" type="xs:string" minOccurs="0"/>
+          <xs:element name="Institution" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="School" type="xs:IDREF" minOccurs="0"/>
+          <xs:element name="Organization" type="xs:string" minOccurs="0"/>
+          <xs:element name="InReference" type="xs:IDREF" minOccurs="0"/>
         </xs:sequence>
+        <xs:attribute name="type" type="reference:referenceType"/>
         <xs:attribute name="parsingProblem" type="xs:int" use="required"/>
         <xs:attribute name="problemStarts" type="xs:int" use="required"/>
         <xs:attribute name="problemEnds" type="xs:int" use="required"/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
+  
+  
 
   <xs:complexType name="BibtexEntryType">
     <xs:complexContent>
 
   <xs:complexType name="Article">
     <xs:complexContent>
-      <xs:extension base="reference:StrictReferenceBase">
-        <xs:sequence>
-          <xs:element name="Volume" type="xs:string" minOccurs="0"/>
-          <xs:element name="Pages" type="xs:string" minOccurs="0"/>
-          <xs:element name="Series" type="xs:string" minOccurs="0"/>
-          <xs:element name="InJournal" type="xs:IDREF" minOccurs="0"/>
-        </xs:sequence>
+      <xs:extension base="reference:Reference">
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
 
-  <xs:complexType name="StrictReferenceBase" abstract="true">
<!-- <xs:complexType name="StrictReferenceBase" abstract="true">
     <xs:complexContent>
-      <xs:extension base="reference:ReferenceBase">
+      <xs:extension base="reference:Reference">
         <xs:sequence>
           <xs:element name="Title" type="xs:string" minOccurs="0"/>
           <xs:element name="DatePublished" type="common:TimePeriod" minOccurs="0"/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
+  -->
 
   <xs:complexType name="Journal">
     <xs:complexContent>
       <xs:extension base="reference:PublicationBase">
-        <xs:sequence>
-          <xs:element name="ISSN" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
 
   <xs:complexType name="PublicationBase" abstract="true">
     <xs:complexContent>
-      <xs:extension base="reference:StrictReferenceBase">
-        <xs:sequence>
-          <xs:element name="Publisher" type="xs:string" minOccurs="0"/>
-          <xs:element name="PlacePublished" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+      <xs:extension base="reference:Reference">
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
   <xs:complexType name="Book">
     <xs:complexContent>
       <xs:extension base="reference:PrintedUnitBase">
-        <xs:sequence>
-          <xs:element name="Edition" type="xs:string" minOccurs="0"/>
-          <xs:element name="ISBN" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
+  
+  
 
   <xs:complexType name="PrintedUnitBase" abstract="true">
     <xs:complexContent>
       <xs:extension base="reference:PublicationBase">
-        <xs:sequence>
-          <xs:element name="Editor" type="xs:string" minOccurs="0"/>
-          <xs:element name="Volume" type="xs:string" minOccurs="0"/>
-          <xs:element name="Pages" type="xs:string" minOccurs="0"/>
-          <xs:element name="InSeries" type="xs:IDREF" minOccurs="0"/>
-          <xs:element name="SeriesPart" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
   <xs:complexType name="PrintSeries">
     <xs:complexContent>
       <xs:extension base="reference:PublicationBase">
-        <xs:sequence>
-          <xs:element name="Series" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
   <xs:complexType name="BookSection">
     <xs:complexContent>
       <xs:extension base="reference:SectionBase">
-        <xs:sequence>
-          <xs:element name="InBook" type="xs:IDREF" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
 
   <xs:complexType name="SectionBase" abstract="true">
     <xs:complexContent>
-      <xs:extension base="reference:StrictReferenceBase">
-        <xs:sequence>
-          <xs:element name="Pages" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+      <xs:extension base="reference:Reference">
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
 
   <xs:complexType name="Generic">
     <xs:complexContent>
-      <xs:extension base="reference:StrictReferenceBase">
-        <xs:sequence>
-          <xs:element name="Publisher" type="xs:string" minOccurs="0"/>
-          <xs:element name="PlacePublished" type="xs:string" minOccurs="0"/>
-          <xs:element name="Editor" type="xs:string" minOccurs="0"/>
-          <xs:element name="Volume" type="xs:string" minOccurs="0"/>
-          <xs:element name="Pages" type="xs:string" minOccurs="0"/>
-          <xs:element name="Series" type="xs:string" minOccurs="0"/>          
-        </xs:sequence>
+      <xs:extension base="reference:PublicationBase">
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
   <xs:complexType name="InProceedings">
     <xs:complexContent>
       <xs:extension base="reference:SectionBase">
-        <xs:sequence>
-          <xs:element name="InProceedings" type="xs:IDREF" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
   <xs:complexType name="Proceedings">
     <xs:complexContent>
       <xs:extension base="reference:PrintedUnitBase">
-        <xs:sequence>
-          <xs:element name="Organization" type="xs:string" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
 
   <xs:complexType name="Patent">
     <xs:complexContent>
-      <xs:extension base="reference:StrictReferenceBase">
+      <xs:extension base="reference:Reference">
         <xs:sequence/>
       </xs:extension>
     </xs:complexContent>
 
   <xs:complexType name="PersonalCommunication">
     <xs:complexContent>
-      <xs:extension base="reference:StrictReferenceBase">
+      <xs:extension base="reference:Reference">
         <xs:sequence/>
       </xs:extension>
     </xs:complexContent>
   <xs:complexType name="Report">
     <xs:complexContent>
       <xs:extension base="reference:PublicationBase">
-        <xs:sequence>
-          <xs:element name="Institution" type="xs:IDREF" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
   <xs:complexType name="Thesis">
     <xs:complexContent>
       <xs:extension base="reference:PublicationBase">
-        <xs:sequence>
-          <xs:element name="School" type="xs:IDREF" minOccurs="0"/>
-        </xs:sequence>
+        <xs:all/>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>
+  
+  <xs:simpleType name="referenceType">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="Article"/>
+      <xs:enumeration value="Book"/>
+      <xs:enumeration value="Book Section"/>
+      <xs:enumeration value="CD or DVD"/>
+      <xs:enumeration value="Database"/>
+      <xs:enumeration value="Generic"/>
+      <xs:enumeration value="Inproceedings"/>
+      <xs:enumeration value="Journal"/>
+      <xs:enumeration value="Map"/>
+      <xs:enumeration value="Patent"/>
+      <xs:enumeration value="Personal Communication"/>
+      <xs:enumeration value="Print Series"/>
+      <xs:enumeration value="Proceedings"/>
+      <xs:enumeration value="Report"/>
+      <xs:enumeration value="Thesis"/>
+      <xs:enumeration value="Web Page"/>
+    </xs:restriction>
+  </xs:simpleType>
+  
 </xs:schema>
 
index f0d1fa862ae150b69648584ce2c26a9a65785f66..06b7f75b0dd8c088f379d029e6f035642b3489da 100644 (file)
           <xs:element name="Sec" type="xs:IDREF" minOccurs="0"/>
         </xs:sequence>
         <xs:attribute name="isDoubtful" type="xs:boolean" use="required"/>
+        <xs:attribute name="UseNameCache" type="xs:boolean" />
       </xs:extension>
     </xs:complexContent>
   </xs:complexType>