<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.daedalus.es/TASS/tweets" 
 elementFormDefault="qualified" 
 xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
 xmlns:tt="http://www.daedalus.es/TASS/tweets">

<xsd:simpleType name="enumEntitySources">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value="PP"/>
    <xsd:enumeration value="PSOE"/>
    <xsd:enumeration value="IU"/>
    <xsd:enumeration value="UPyD"/>
  </xsd:restriction>
</xsd:simpleType>

<xsd:complexType name="typeEntity">
  <xsd:simpleContent>
    <xsd:extension base="xsd:string">
      <xsd:attribute name="source" type="tt:enumEntitySources" use="optional"/>
    </xsd:extension>
  </xsd:simpleContent>
</xsd:complexType>

<xsd:simpleType name="enumValuePolarity">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value="NONE"/>
    <xsd:enumeration value="N+"/>
    <xsd:enumeration value="N"/>
    <xsd:enumeration value="NEU"/>  
    <xsd:enumeration value="P"/>
    <xsd:enumeration value="P+"/>
  </xsd:restriction>
</xsd:simpleType>
 
<xsd:simpleType name="enumTypePolarity">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value="AGREEMENT"/>
    <xsd:enumeration value="DISAGREEMENT"/>
  </xsd:restriction>
</xsd:simpleType>

<xsd:complexType name="typePolarity">
  <xsd:sequence>
    <xsd:element name="entity" type="tt:typeEntity" minOccurs="0" />
    <xsd:element name="value" type="tt:enumValuePolarity" minOccurs="0" />
    <xsd:element name="type" type="tt:enumTypePolarity" minOccurs="0" />
  </xsd:sequence>
</xsd:complexType>
 
<xsd:element name="sentiments">
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element name="polarity" type="tt:typePolarity" maxOccurs="unbounded" />
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

<xsd:simpleType name="enumTypeTopic">
  <xsd:restriction base="xsd:string">
    <xsd:enumeration value="cine"/>
    <xsd:enumeration value="deportes"/>
    <xsd:enumeration value="economía"/>
    <xsd:enumeration value="entretenimiento"/>
    <xsd:enumeration value="fútbol"/>
    <xsd:enumeration value="literatura"/>
    <xsd:enumeration value="música"/>
    <xsd:enumeration value="otros"/>
    <xsd:enumeration value="política"/>
    <xsd:enumeration value="tecnología"/>
  </xsd:restriction>
</xsd:simpleType>

<xsd:element name="topics">
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element name="topic" type="tt:enumTypeTopic" maxOccurs="unbounded" />
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>
  
<xsd:element name="tweet">
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element name="tweetid" type="xsd:nonNegativeInteger" />
      <xsd:element name="user" type="xsd:string" />
      <xsd:element name="content" type="xsd:string" minOccurs="0" />      
      <xsd:element name="date" type="xsd:string" />
      <xsd:element name="lang" type="xsd:language" />
      <xsd:element ref="tt:sentiments" minOccurs="0" />
      <xsd:element ref="tt:topics" minOccurs="0" />
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

<xsd:element name="tweets">
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element ref="tt:tweet" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:key name="keyTwits">
    <xsd:selector xpath=".//tt:tweet" />
    <xsd:field xpath="tt:tweetid" />
  </xsd:key>
</xsd:element>

</xsd:schema>
