<?xml version="1.0" encoding="utf-8"?>

<!-- This document defines standard mappings from types -->
<!-- defined in XML Schema Part 2: Datatypes to some of -->
<!-- the more common programming languages.             -->

<!-- This is an experimental mapping, and very much     -->
<!-- work-in-progress                                   -->

<!-- (C) 2001 University of Edinburgh                   -->

<map:pings
  xmlns:map="http://www.cogsci.ed.ac.uk/~kari/schema-mapping"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
  <map:simpleType name="string">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="boolean">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="true">boolean</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="float">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="true">float</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="double">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="true">double</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="decimal">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.math.BigDecimal</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="duration">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="dateTime">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.util.Date</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="time">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.util.Date</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="date">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.util.Date</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="gYearMonth">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="gYear">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="gMonthDay">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="gDay">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="gMonth">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="hexBinary">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">byte[]</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="base64Binary">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">byte[]</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="anyURI">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.net.URL</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="QName">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="NOTATION">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="normalizedString">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="token">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="language">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="IDREFS">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <!-- this might be better represented by java.lang.Object[] or void * -->
    <map:ping map:lang="Java" primitive="false">java.lang.String[]</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="ENTITIES">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String[]</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="NMTOKEN">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="NMTOKENS">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String[]</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="Name">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="NCName">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="ID">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="IDREF">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <!-- this might be better represented by java.lang.Object or void * -->
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="ENTITY">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.String</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="integer">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.math.BigInteger</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="nonPositiveInteger">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.math.BigInteger</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="negativeInteger">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.math.BigInteger</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="long">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java"  primitive="true">long</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="int">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="true">int</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="short">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="true">short</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="byte">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="true">byte</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="nonNegativeInteger">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.math.BigInteger</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="unsignedLong">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <!-- There are no unsigned types in Java. Should this be promoted to java.math.BigInteger ? -->
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="unsignedInt">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <!-- There are no unsigned types in Java. Should this be promoted to long ? -->
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="unsignedShort">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <!-- There are no unsigned types in Java. Should this be promoted to int ? -->
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="unsignedByte">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <!-- There are no unsigned types in Java. Should this be promoted to short ? -->
    <map:ping map:lang="Java">##unavailable</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="positiveInteger">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.math.BigInteger</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
  <map:simpleType name="anyType">
    <map:ping map:lang="ANSI-C">##unavailable</map:ping>
    <map:ping map:lang="Java" primitive="false">java.lang.Object</map:ping>
    <map:ping map:lang="ISO-SQL">##unavailable</map:ping>
    <map:ping map:lang="Python">##unavailable</map:ping>
    <map:ping map:lang="perl">##unavailable</map:ping>
  </map:simpleType>
</map:pings>
