dataTypes.xsd
Click here to get the file
Size
3.1 kB
-
File type
text/xml
File contents
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" elementFormDefault="qualified" version="LOMFRv1.0">
<xsd:annotation>
<xsd:documentation>Fichier décrivant les types de base utilisés dans LOMFR</xsd:documentation>
<xsd:appinfo>Voir documentation dans lomfr.xsd</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType name="CharacterString">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
<!-- VCard -->
<xsd:simpleType name="vCard">
<xsd:restriction base="CharacterString"/>
</xsd:simpleType>
<!-- URI -->
<xsd:simpleType name="URI">
<xsd:restriction base="xsd:anyURI"/>
</xsd:simpleType>
<!-- MimeType -->
<xsd:simpleType name="MimeType">
<xsd:restriction base="CharacterString"/>
</xsd:simpleType>
<!-- Size -->
<xsd:simpleType name="Size">
<xsd:restriction base="xsd:nonNegativeInteger"/>
</xsd:simpleType>
<!-- Language -->
<xsd:simpleType name="Language">
<xsd:restriction base="CharacterString"/>
</xsd:simpleType>
<!-- LangString -->
<xsd:complexType name="LangString">
<xsd:sequence maxOccurs="unbounded">
<xsd:element name="string">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="CharacterString">
<xsd:attribute name="language" type="Language" use="required"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- DateTime -->
<!-- Regular expresion from Christian Klaue (IEEE LOM)-->
<xsd:simpleType name="DateTimeString">
<xsd:restriction base="CharacterString">
<xsd:pattern value="([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})(\-(0[1-9]|1[0-2])(\-(0[1-9]|[1-2][0-9]|3[0-1])(T([0-1][0-9]|2[0-3])(:[0-5][0-9](:[0-5][0-9](\.[0-9]{1,}(Z|((\+|\-)([0-1][0-9]|2[0-3]):[0-5][0-9]))?)?)?)?)?)?)?"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="Date">
<xsd:sequence>
<xsd:element name="dateTime" type="DateTimeString" minOccurs="0"/>
<xsd:element name="description" type="LangString" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<!-- Duration -->
<!-- Regular expresion from Christian Klaue (IEEE LOM)-->
<xsd:simpleType name="DurationString">
<xsd:restriction base="CharacterString">
<xsd:pattern value="P([0-9]{1,}Y){0,1}([0-9]{1,}M){0,1}([0-9]{1,}D){0,1}(T([0-9]{1,}H){0,1}([0-9]{1,}M){0,1}([0-9]{1,}(\.[0-9]{1,}){0,1}S){0,1}){0,1}"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="Duration">
<xsd:sequence>
<xsd:element name="duration" type="DurationString" minOccurs="0"/>
<xsd:element name="description" type="LangString" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<!-- Vocabular -->
<xsd:simpleType name="LomfrVocab">
<xsd:restriction base="xsd:token">
<xsd:enumeration value="LOMFRv1.0"/>
<xsd:enumeration value="LOMv1.0"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="Vocabular" abstract="true">
<xsd:sequence>
<xsd:element name="source" type="LomfrVocab"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>