Indivo Document Demographics SchemaΒΆ
Schema:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:indivo="http://indivo.org/vocab/xml/documents#"
elementFormDefault="qualified"
targetNamespace="http://indivo.org/vocab/xml/documents#">
<xs:complexType name="Name">
<xs:sequence>
<xs:element name="familyName" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="givenName" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="middleName" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="prefix" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="suffix" type="xs:string" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="PhoneType">
<xs:restriction base="xs:normalizedString">
<xs:enumeration value="h"/>
<xs:enumeration value="w"/>
<xs:enumeration value="c"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="GenderType">
<xs:restriction base="xs:normalizedString">
<xs:enumeration value="female"/>
<xs:enumeration value="male"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Telephone">
<xs:sequence>
<xs:element name="type" type="indivo:PhoneType" minOccurs="0" maxOccurs="1" />
<xs:element name="number" type="xs:string" minOccurs="1" maxOccurs="1" />
<xs:element name="preferred" type="xs:boolean" minOccurs="0" maxOccurs="1" default="false" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Address">
<xs:sequence>
<xs:element name="country" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="city" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="postalCode" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="region" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="street" type="xs:string" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:element name="Demographics">
<xs:complexType>
<xs:sequence>
<xs:element name="dateOfBirth" type="xs:date" minOccurs="1" />
<xs:element name="gender" type="indivo:GenderType" minOccurs="1" />
<xs:element name="email" type="xs:string" minOccurs="0" />
<xs:element name="ethnicity" type="xs:string" minOccurs="0" />
<xs:element name="preferredLanguage" type="xs:string" minOccurs="0" />
<xs:element name="race" type="xs:string" minOccurs="0" />
<xs:element name="Name" type="indivo:Name" minOccurs="1"/>
<xs:element name="Telephone" type="indivo:Telephone" minOccurs="0" maxOccurs="2" />
<xs:element name="Address" type="indivo:Address" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Example:
<?xml version="1.0" encoding="utf-8" ?>
<Demographics xmlns="http://indivo.org/vocab/xml/documents#">
<dateOfBirth>1939-11-15</dateOfBirth>
<gender>male</gender>
<email>test@fake.org</email>
<ethnicity>Scottish</ethnicity>
<preferredLanguage>EN</preferredLanguage>
<race>caucasian</race>
<Name>
<familyName>Wayne</familyName>
<givenName>Bruce</givenName>
<middleName>Quentin</middleName>
<prefix>Mr</prefix>
<suffix>Jr</suffix>
</Name>
<Telephone>
<type>h</type>
<number>555-5555</number>
<preferred>true</preferred>
</Telephone>
<Telephone>
<type>c</type>
<number>555-6666</number>
</Telephone>
<Address>
<country>USA</country>
<city>Gotham</city>
<postalCode>90210</postalCode>
<region>secret</region>
<street>1007 Mountain Drive</street>
</Address>
</Demographics>