• Nenhum resultado encontrado

Existem dois esquemas XSD utilizados no sistema: o primeiro é referente a uma lista de recomendações de objectos de conteúdo, a segunda é referente à representação de um item. B.2.1 Esquema XSD de Conteúdo <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://iex.ptin.pt/ctx/content" xmlns:tns="http://iex.ptin.pt/ctx/content">

Artefactos

<xsd:element name="content" type="tns:ContentType" /> <xsd:complexType name="SourceType">

<!-- URI fonte do proprio conteudo --> <xsd:attribute name="src" type="xsd:string"

use="required" />

<!-- qualidade do conteudo e’ opcional

e ajuda a decidir que URI escolher em cenario de streaming com base na largura de banda disponivel -->

<xsd:attribute name="quality" type="xsd:string"

use="optional" /> </xsd:complexType>

<xsd:complexType name="ContentType"> <xsd:sequence>

<xsd:element name="tags" minOccurs="0" maxOccurs="1"> <xsd:complexType>

<xsd:sequence>

<xsd:element name="tag"

type="tns:TagType" minOccurs="1" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element>

<xsd:element name="people" minOccurs="0" maxOccurs="1"> <xsd:complexType>

<xsd:sequence>

<xsd:element name="person"

type="tns:PersonType" minOccurs="1" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element>

<xsd:element name="sources"

minOccurs="0"

maxOccurs="1"> <xsd:complexType>

<xsd:sequence>

<xsd:element name="source"

type="tns:SourceType"

Artefactos maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- descricao / sinopse -->

<xsd:element name="description"

type="xsd:string" minOccurs="0"

maxOccurs="1" />

<!-- titulo do programa -->

<xsd:element name="title" type="xsd:string"

minOccurs="1" maxOccurs="1" /> <!-- titulo do episodio -->

<xsd:element name="episode_title"

type="xsd:string" minOccurs="0"

maxOccurs="1" />

<!-- numero do episodio -->

<xsd:element name="episode_number"

type="xsd:integer" minOccurs="0"

maxOccurs="1" />

<!-- numero de temporada -->

<xsd:element name="season_number"

type="xsd:integer" minOccurs="0"

maxOccurs="1" />

<!-- duracao em minutos --> <xsd:element name="duration"

type="xsd:integer" minOccurs="0"

maxOccurs="1" /> <!-- hora de inicio -->

<xsd:element name="start_at"

type="xsd:dateTime" minOccurs="0"

maxOccurs="1" /> <!-- hora de fim -->

<xsd:element name="end_at"

type="xsd:dateTime" minOccurs="0"

maxOccurs="1" /> <!-- canal -->

<xsd:element name="channel"

type="xsd:string" minOccurs="0"

maxOccurs="1" /> <!-- faixa etaria -->

<xsd:element name="age_classification"

type="xsd:string" minOccurs="0"

maxOccurs="1" />

<!-- categorias (e.g. drama, comedia, etc) -->

<xsd:element name="categories" minOccurs="0" maxOccurs="1"> <xsd:complexType>

Artefactos

<xsd:sequence>

<xsd:element name="category"

type="xsd:string" minOccurs="1" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:sequence>

<xsd:attribute name="type" type="tns:ContentMediaType"

use="required" />

<xsd:attribute name="purpose" type="tns:ContentPurposeType"

use="required" /> </xsd:complexType>

<xsd:complexType name="PersonType">

<xsd:attribute name="role" type="tns:PeopleRoleType"

use="required" />

<xsd:attribute name="name" type="xsd:string"

use="required" /> </xsd:complexType>

<xsd:simpleType name=’TagType’>

<xsd:restriction base="xsd:string" /> </xsd:simpleType>

<xsd:simpleType name=’PeopleRoleType’> <xsd:restriction base=’xsd:string’>

<!-- produtor -->

<xsd:enumeration value=’producer’ /> <!-- realizador -->

<xsd:enumeration value=’director’ /> <!-- argumentista -->

<xsd:enumeration value=’argument’ /> <!-- actor / atriz -->

<xsd:enumeration value=’actor’ /> <!-- apresentador -->

<xsd:enumeration value=’hoster’ /> </xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name=’ContentMediaType’> <xsd:restriction base=’xsd:string’>

<xsd:enumeration value=’video’ /> <xsd:enumeration value=’audio’ /> <xsd:enumeration value=’picture’ />

Artefactos

</xsd:restriction> </xsd:simpleType>

<xsd:simpleType name=’ContentPurposeType’> <xsd:restriction base=’xsd:string’>

<xsd:enumeration value=’ad’ />

<xsd:enumeration value=’content’ /> </xsd:restriction> </xsd:simpleType> </xsd:schema> B.2.2 Esquema XSD de Recomendação <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://iex.ptin.pt/ctx/recommendation" xmlns:tns="http://iex.ptin.pt/ctx/recommendation" xmlns:content="http://iex.ptin.pt/ctx/content">

<xsd:import namespace="http://iex.ptin.pt/ctx/content"

schemaLocation="content.xsd"/>

<xsd:complexType name="RecommendationType"> <xsd:sequence>

<xsd:element name="content"

type="content:ContentType"

maxOccurs="unbounded" minOccurs="1" /> </xsd:sequence>

<!-- date when the recommendation was calculated --> <xsd:attribute name="issueDate" type="xsd:date"

use="optional" />

<!-- recommendation’s target user -->

<xsd:attribute name="for" type="xsd:string"

use="required" /> </xsd:complexType>

<xsd:element name="recommendations"

type="tns:RecommendationType" /> </xsd:schema>

Documentos relacionados