<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
    targetNamespace="http://www.ivoa.net/xml/theory/SNAPOntology/v0.1" 
    xmlns="http://www.ivoa.net/xml/theory/SNAPOntology/v0.1">
    
  <xsd:simpleType name="OntologyObject">
    <xsd:annotation>
      <xsd:documentation>
        The type representing a generic ontology term.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string"/>
  </xsd:simpleType>
    
    
  <xsd:simpleType name="UCD">
    <xsd:annotation>
      <xsd:documentation>
        The type representing an IVOA UCD.
        TBD add reference
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="OntologyObject">
      <xsd:enumeration value=""/>
    </xsd:restriction>
  </xsd:simpleType>  


  <xsd:simpleType name="AstroJournalKeyword">
    <xsd:annotation>
      <xsd:documentation>
        The type representing a subject keyword from the "standard" list of keywords from
        ApJ/A&amp;A/MNRAS/ ...
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="OntologyObject">
      <xsd:enumeration value=""/>
    </xsd:restriction>
  </xsd:simpleType>  

  <xsd:simpleType name="AstroObject">
    <xsd:annotation>
      <xsd:documentation>
        The type representing an entry from the IVOA AstroObject ontology.
        TBD add reference
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="OntologyObject">
      <xsd:enumeration value=""/>
    </xsd:restriction>
  </xsd:simpleType>  

  <xsd:simpleType name="PhysicalProcess">
    <xsd:annotation>
      <xsd:documentation>
        The type representing an entry from the IVOA ontology of physical processes.
        TBD add reference and create that list ...
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="OntologyObject">
    </xsd:restriction>
  </xsd:simpleType>  

  <xsd:simpleType name="SNAPRepresentationObject">
    <xsd:annotation>
      <xsd:documentation>
        The type representing an object that can be used in SNAP experiments to build a representation of the world.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="OntologyObject">
      <xsd:enumeration value="point particle"/>
      <xsd:enumeration value="SPH particle"/>
      <xsd:enumeration value="extended particle"/>
      <xsd:enumeration value="simple mesh cell"/>
      <xsd:enumeration value="hierarchical mesh cell"/>
      <xsd:enumeration value="model astro object"/>
      <xsd:enumeration value="custom"/>
    </xsd:restriction>
  </xsd:simpleType>  
    
  <xsd:simpleType name="IdentifiedObject">
    <xsd:annotation>
      <xsd:documentation>
        The type representing an entry from a list of names of identified objects.
        For example Simbad [TBD link] might provide this list.
        TBD do something about how to represent this further. String ?
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="OntologyObject">
      <xsd:annotation>
        <xsd:documentation>
        Restricts the OnbtologyObject in the sense of the usual inheritance, "is-a" relation.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:restriction>
  </xsd:simpleType>  
    
</xsd:schema>
