<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v. 2004 rel. 3 U (http://www.xmlspy.com) by Ola Fosheim Grøstad (University of Oslo) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
 <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
 <!-- INF5270 BESVARELSE VERSJON 0.1 av Ola Fosheim Grøstad 2004-02-02 -->
 <!-- P R O S J E K T G R U P P  E  I  D -->
 <xs:simpleType name="gruppeidType" final="restriction">
  <xs:restriction base="xs:string">
   <xs:enumeration value="dancing"/>
   <xs:enumeration value="summertime"/>
   <xs:enumeration value="rhetorical"/>
   <xs:enumeration value="underground"/>
   <xs:enumeration value="energy"/>
   <xs:enumeration value="funny"/>
   <xs:enumeration value="emotional"/>
   <xs:enumeration value="electronic"/>
   <xs:enumeration value="acoustic"/>
   <xs:enumeration value="acousticb"/>
   <xs:enumeration value="recycled"/>
   <xs:enumeration value="girrrls"/>
   <xs:enumeration value="movies"/>
   <xs:enumeration value="chaos"/>
   <xs:enumeration value="relaxation"/>
   <!-- grupper 2006 -->
   <xs:enumeration value="sex"/>
   <xs:enumeration value="sport"/>
   <xs:enumeration value="freemusic"/>
   <xs:enumeration value="training"/>
   <xs:enumeration value="guitar"/>
  </xs:restriction>
 </xs:simpleType>
 <!-- R O T E L E M E N T -->
 <xs:element name="besvarelse">
  <xs:complexType>
   <xs:sequence>
    <xs:element name="oppgave">
     <xs:complexType>
      <xs:attribute name="nummer" type="xs:positiveInteger" use="required"/>
      <xs:attribute name="link" type="xs:anyURI" use="required"/>
     </xs:complexType>
    </xs:element>
    <xs:choice>
     <xs:element name="person" type="personType"/>
     <xs:element name="prosjektgruppe">
      <xs:complexType>
       <xs:sequence>
        <xs:element name="navn" type="strengType"/>
        <xs:element name="person" type="personType" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute name="gruppeid" type="gruppeidType" use="required"/>
       <xs:attribute name="link" type="xs:anyURI" use="required"/>
      </xs:complexType>
     </xs:element>
    </xs:choice>
    <xs:element name="avsnitt" maxOccurs="unbounded">
     <xs:complexType>
      <xs:sequence>
       <xs:element name="overskrift" type="strengType"/>
       <xs:choice maxOccurs="unbounded">
        <xs:element name="p" type="brodtekstType"/>
        <xs:element name="illustrasjon">
         <xs:complexType>
          <xs:attribute name="link" type="xs:anyURI" use="required"/>
          <xs:attribute name="type" type="xs:string" use="required"/>
          <xs:attribute name="bredde" type="xs:positiveInteger" use="required"/>
          <xs:attribute name="hoyde" type="xs:positiveInteger" use="required"/>
          <xs:attribute name="beskrivelse" type="xs:normalizedString" use="required"/>
          <xs:attribute name="tittel" type="xs:normalizedString" use="required"/>
	  <xs:attribute name="fotograf" type="xs:normalizedString" use="optional"/>
         </xs:complexType>
        </xs:element>
        <xs:element name="blockquote">
         <xs:complexType>
          <xs:sequence maxOccurs="unbounded">
           <xs:element name="p" type="tekstType"/>
          </xs:sequence>
          <xs:attribute name="ref" type="xs:IDREF" use="required"/>
          <xs:attribute name="side" type="xs:string"/>
          <xs:attributeGroup ref="xml:specialAttrs"/>
         </xs:complexType>
        </xs:element>
        <xs:element name="definisjoner">
         <xs:complexType>
          <xs:sequence>
           <xs:element name="definisjon" maxOccurs="unbounded">
            <xs:complexType>
             <xs:sequence>
              <xs:element name="term" type="strengType"/>
              <xs:element name="beskrivelse" type="brodtekstType"/>
             </xs:sequence>
            </xs:complexType>
           </xs:element>
          </xs:sequence>
         </xs:complexType>
        </xs:element>
        <xs:group ref="listeGruppe"/>
       </xs:choice>
      </xs:sequence>
     </xs:complexType>
    </xs:element>
    <xs:element name="referanser" minOccurs="0">
     <xs:complexType>
      <xs:choice maxOccurs="unbounded">
       <xs:element name="bok">
        <xs:complexType>
         <xs:complexContent>
          <xs:extension base="kilde-med-aarType">
           <xs:choice>
            <xs:sequence maxOccurs="unbounded">
             <xs:element name="forfatter" type="forfatterType"/>
            </xs:sequence>
            <xs:sequence>
             <xs:sequence maxOccurs="unbounded">
              <xs:element name="redaktor" type="forfatterType"/>
             </xs:sequence>
             <xs:group ref="artikler-i-permGruppe"/>
            </xs:sequence>
           </xs:choice>
           <xs:attribute name="utgave" type="xs:positiveInteger" use="optional" default="1"/>
           <xs:attribute name="forlag" type="xs:string"/>
           <xs:attributeGroup ref="kildeAttrs"/>
          </xs:extension>
         </xs:complexContent>
        </xs:complexType>
       </xs:element>
       <xs:element name="journal">
        <xs:complexType>
         <xs:complexContent>
          <xs:extension base="kilde-med-aarType">
           <xs:group ref="artikler-i-permGruppe"/>
           <xs:attribute name="volum" type="xs:string"/>
           <xs:attribute name="nummer" type="xs:string" use="required"/>
          </xs:extension>
         </xs:complexContent>
        </xs:complexType>
       </xs:element>
       <xs:element name="artikkel">
        <xs:complexType>
         <xs:complexContent>
          <xs:extension base="artikkelType">
           <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="redaktor" type="forfatterType"/>
           </xs:sequence>
           <xs:attribute name="aar" type="xs:gYear"/>
          </xs:extension>
         </xs:complexContent>
        </xs:complexType>
       </xs:element>
      </xs:choice>
     </xs:complexType>
    </xs:element>
   </xs:sequence>
   <xs:attribute name="kurskode" type="xs:string" use="required"/>
   <xs:attribute name="levert" type="xs:string" use="required"/>
   <xs:attributeGroup ref="xml:specialAttrs"/>
  </xs:complexType>
 </xs:element>
 <xs:complexType name="personType">
  <xs:sequence>
   <xs:element name="fornavn" type="strengType"/>
   <xs:element name="mellomnavn" type="strengType" minOccurs="0"/>
   <xs:element name="etternavn" type="strengType"/>
  </xs:sequence>
  <xs:attribute name="e-post" type="xs:string" use="required"/>
  <xs:attributeGroup ref="xml:specialAttrs"/>
 </xs:complexType>
 <!--D I V E R S E-->
 <xs:complexType name="strengType">
  <xs:simpleContent>
   <xs:extension base="xs:string"/>
  </xs:simpleContent>
 </xs:complexType>
 <xs:attributeGroup name="linkAttrs">
  <xs:attribute name="link" type="xs:anyURI"/>
  <xs:attribute name="aksess" type="xs:date"/>
 </xs:attributeGroup>
 <xs:attributeGroup name="kildeAttrs">
  <xs:attribute name="id" type="xs:ID" use="optional"/>
  <xs:attribute name="navn" type="xs:string"/>
 </xs:attributeGroup>
 <xs:attributeGroup name="req-kildeAttrs">
  <xs:attribute name="id" type="xs:ID" use="required"/>
  <xs:attribute name="navn" type="xs:string"/>
 </xs:attributeGroup>
 <xs:attributeGroup name="refsideAttrs">
  <xs:attribute name="ref" type="xs:IDREF"/>
  <xs:attribute name="side" type="xs:string" use="optional"/>
 </xs:attributeGroup>
 <!--R E F E R A N S E L I S T E-->
 <xs:complexType name="kilde-med-aarType">
  <xs:complexContent>
   <xs:extension base="kildeType">
    <xs:attribute name="aar" type="xs:gYear"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
 <xs:complexType name="kildeType">
  <xs:sequence>
   <xs:element name="tittel">
    <xs:complexType>
     <xs:simpleContent>
      <xs:extension base="xs:string">
       <xs:attributeGroup ref="xml:specialAttrs"/>
      </xs:extension>
     </xs:simpleContent>
    </xs:complexType>
   </xs:element>
  </xs:sequence>
  <xs:attributeGroup ref="linkAttrs"/>
  <xs:attributeGroup ref="xml:specialAttrs"/>
 </xs:complexType>
 <xs:complexType name="artikkelType">
  <xs:complexContent>
   <xs:extension base="kildeType">
    <xs:sequence maxOccurs="unbounded">
     <xs:element name="forfatter" type="forfatterType"/>
    </xs:sequence>
    <xs:attributeGroup ref="req-kildeAttrs"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
 <xs:complexType name="artikkel-i-permType" mixed="false">
  <xs:complexContent mixed="false">
   <xs:extension base="artikkelType">
    <xs:attribute name="sider" type="xs:string"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
 <xs:complexType name="forfatterType" mixed="true">
  <xs:sequence minOccurs="0">
   <xs:element name="fornavn" type="strengType"/>
   <xs:element name="mellomnavn" type="strengType" minOccurs="0"/>
   <xs:element name="etternavn" type="strengType"/>
  </xs:sequence>
  <xs:attributeGroup ref="xml:specialAttrs"/>
 </xs:complexType>
 <!--B R Ø D T E K S T   R E F E R A N S E-->
 <xs:complexType name="websideType">
  <xs:simpleContent>
   <xs:extension base="xs:string">
    <xs:attribute name="id" type="xs:ID"/>
    <xs:attribute name="beskrivelse" type="xs:normalizedString"/>
    <xs:attribute name="ref" type="xs:IDREF"/>
    <xs:attributeGroup ref="linkAttrs"/>
    <xs:attributeGroup ref="xml:specialAttrs"/>
   </xs:extension>
  </xs:simpleContent>
 </xs:complexType>
 <xs:complexType name="refType">
  <xs:attributeGroup ref="refsideAttrs"/>
 </xs:complexType>
 <!--B R Ø D T E K S T T Y P E R-->
 <xs:group name="listeGruppe">
  <xs:choice>
   <xs:element name="ol">
    <xs:complexType>
     <xs:sequence>
      <xs:element name="li" type="listeType" maxOccurs="unbounded"/>
     </xs:sequence>
    </xs:complexType>
   </xs:element>
   <xs:element name="ul">
    <xs:complexType>
     <xs:sequence>
      <xs:element name="li" type="listeType" maxOccurs="unbounded"/>
     </xs:sequence>
    </xs:complexType>
   </xs:element>
  </xs:choice>
 </xs:group>
 <xs:group name="tekstelemGruppe">
  <xs:choice>
   <xs:element name="abbr" type="tekstType"/>
   <xs:element name="acronym" type="tekstType"/>
   <xs:element name="code" type="tekstType"/>
   <xs:element name="kbd" type="tekstType"/>
   <xs:element name="dfn" type="tekstType"/>
   <xs:element name="em" type="tekstType"/>
   <xs:element name="var" type="tekstType"/>
   <xs:element name="samp" type="tekstType"/>
   <xs:element name="strong" type="tekstType"/>
  </xs:choice>
 </xs:group>
 <xs:group name="brodtekstGruppe">
  <xs:choice>
   <xs:element name="webside">
    <xs:complexType>
     <xs:simpleContent>
      <xs:extension base="websideType"/>
     </xs:simpleContent>
    </xs:complexType>
   </xs:element>
   <xs:element name="nettsted" type="websideType"/>
   <xs:element name="navn">
    <xs:complexType>
     <xs:complexContent>
      <xs:extension base="refType"/>
     </xs:complexContent>
    </xs:complexType>
   </xs:element>
   <xs:element name="ref" type="refType"/>
   <xs:element name="q">
    <xs:complexType mixed="true">
     <xs:sequence minOccurs="0" maxOccurs="unbounded">
      <xs:group ref="tekstelemGruppe"/>
     </xs:sequence>
     <xs:attributeGroup ref="refsideAttrs"/>
     <xs:attributeGroup ref="xml:specialAttrs"/>
    </xs:complexType>
   </xs:element>
   <xs:group ref="tekstelemGruppe"/>
  </xs:choice>
 </xs:group>
 <xs:complexType name="tekstType" mixed="true">
  <xs:sequence minOccurs="0" maxOccurs="unbounded">
   <xs:group ref="tekstelemGruppe"/>
  </xs:sequence>
  <xs:attributeGroup ref="xml:specialAttrs"/>
 </xs:complexType>
 <xs:complexType name="brodtekstType" mixed="true">
  <xs:sequence minOccurs="0" maxOccurs="unbounded">
   <xs:group ref="brodtekstGruppe"/>
  </xs:sequence>
  <xs:attributeGroup ref="xml:specialAttrs"/>
 </xs:complexType>
 <xs:complexType name="listeType" mixed="true">
  <xs:choice>
   <xs:group ref="listeGruppe"/>
   <xs:sequence minOccurs="0" maxOccurs="unbounded">
    <xs:group ref="brodtekstGruppe"/>
   </xs:sequence>
  </xs:choice>
  <xs:attributeGroup ref="xml:specialAttrs"/>
 </xs:complexType>
 <xs:group name="artikler-i-permGruppe">
  <xs:sequence>
   <xs:element name="artikkel" type="artikkel-i-permType" maxOccurs="unbounded"/>
  </xs:sequence>
 </xs:group>
</xs:schema>

