[tdwg-tapir] Schema modification: r529 - trunk/protocol

tdwg-tapir at lists.tdwg.org tdwg-tapir at lists.tdwg.org
Tue May 16 11:17:45 CEST 2006


Author: markus
Date: 2006-05-16 11:17:45 +0200 (Tue, 16 May 2006)
New Revision: 529

Modified:
   trunk/protocol/tapir.xsd
Log:
representing related entities in metadata with the help of georss and vcard.

Modified: trunk/protocol/tapir.xsd
===================================================================
--- trunk/protocol/tapir.xsd	2006-05-16 08:56:41 UTC (rev 528)
+++ trunk/protocol/tapir.xsd	2006-05-16 09:17:45 UTC (rev 529)
@@ -1,6 +1,5 @@
 <?xml version="1.0"?>
 <!-- $Id$ -->
-<!-- unified and extended protocol based on DiGIR and BioCASE -->
 <xsd:schema targetNamespace="http://res.tdwg.org/tapir/1.0" 
 	xmlns="http://res.tdwg.org/tapir/1.0" 
 	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
@@ -12,11 +11,13 @@
 	attributeFormDefault="unqualified" version="1.0" xml:lang="EN" >
 	<xsd:annotation>
 		<xsd:documentation xml:lang="en">
-			TAPIR XML Schema
+			TAPIR XML Schema. 
+			A unified and extended protocol based on DiGIR and BioCASE.
 		</xsd:documentation>		
 		<xsd:appinfo>
 			<dc:title>TAPIR XML Schema</dc:title>
-			<dc:creator>TDWG</dc:creator>
+			<dc:creator>Markus Döring [m.doering at bgbm.org]</dc:creator>
+			<dc:creator>Renato De Giovanni [renato at cria.org.br]</dc:creator>
 			<dc:relation>http://ww3.bgbm.org/protocolwiki</dc:relation>
 		</xsd:appinfo>
 	</xsd:annotation>
@@ -24,8 +25,7 @@
 	<!-- NAMESPACE IMPORTS -->
 	<!-- ============================================= -->
 	<xsd:import namespace="http://www.w3.org/XML/1998/namespace"
-		schemaLocation="http://www.w3.org/2001/03/xml.xsd">
-	</xsd:import>
+		schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>	
 	<xsd:import namespace="http://purl.org/dc/elements/1.1/" 
 		schemaLocation="http://www.dublincore.org/schemas/xmls/simpledc20021212.xsd"/>
 	<xsd:import namespace="http://purl.org/dc/terms/" 
@@ -1411,34 +1411,7 @@
 			<xsd:documentation>Global element to validate external metadata XML
 			files.</xsd:documentation>
 		</xsd:annotation>
-		<xsd:unique name="meta_label_lang">
-			<xsd:selector xpath="label"/>
-			<xsd:field xpath="@lang"/>
-		</xsd:unique>
-		<xsd:unique name="meta_abstract_lang">
-			<xsd:selector xpath="abstract"/>
-			<xsd:field xpath="@lang"/>
-		</xsd:unique>
-		<xsd:unique name="meta_keywords_lang">
-			<xsd:selector xpath="keywords"/>
-			<xsd:field xpath="@lang"/>
-		</xsd:unique>
-		<xsd:unique name="meta_citation_lang">
-			<xsd:selector xpath="citation"/>
-			<xsd:field xpath="@lang"/>
-		</xsd:unique>
-		<xsd:unique name="meta_rights_lang">
-			<xsd:selector xpath="rights"/>
-			<xsd:field xpath="@lang"/>
-		</xsd:unique>
 	</xsd:element>
-	<xsd:element name="entity" type="entityInformationType">
-		<xsd:annotation>
-			<xsd:documentation>Global element to validate external XML representations of entities.
-				An entity here could be a company, organisation, institution, or
-			person.</xsd:documentation>
-		</xsd:annotation>
-	</xsd:element>
 	<xsd:complexType name="metadataResultType">
 		<xsd:annotation>
 			<xsd:documentation>Format of metadata operation result.</xsd:documentation>
@@ -1508,33 +1481,21 @@
 			<xsd:element ref="custom"/>
 		</xsd:sequence>
 	</xsd:complexType>
-	<xsd:complexType name="contactInformationType">
+	<xsd:complexType name="relatedEntityInformationType">
 		<xsd:annotation>
-			<xsd:documentation>Contact information.</xsd:documentation>
+			<xsd:documentation>Information about an entity that may have some relationship with the
+				service being provided.</xsd:documentation>
 		</xsd:annotation>
 		<xsd:sequence>
-			<xsd:element name="name" type="xsd:string"/>
-			<xsd:element name="title" type="languageAwareElementType" minOccurs="0"/>
-			<xsd:element name="email" type="xsd:string"/>
-			<xsd:element name="phone" type="xsd:string" minOccurs="0"/>
-			<xsd:element name="role" type="contactRoleExtensionType" maxOccurs="unbounded">
+			<xsd:element name="role" type="entityRoleExtensionType" maxOccurs="unbounded">
 				<xsd:annotation>
-					<xsd:documentation>Used to specify the roles of a contact, such as "data
-						administrator", "system administrator", etc.</xsd:documentation>
+					<xsd:documentation>Used to specify the roles of a related entity, such as "data
+						supplier", "technical host", etc.</xsd:documentation>
 				</xsd:annotation>
 			</xsd:element>
+			<xsd:element name="entity" type="entityInformationType"/>
 		</xsd:sequence>
-		<xsd:attribute ref="lang"/>
 	</xsd:complexType>
-	<xsd:simpleType name="contactRoleType">
-		<xsd:restriction base="xsd:string">
-			<xsd:enumeration value="data administrator"/>
-			<xsd:enumeration value="system administrator"/>
-		</xsd:restriction>
-	</xsd:simpleType>
-	<xsd:simpleType name="contactRoleExtensionType">
-		<xsd:union memberTypes="contactRoleType xsd:string"/>
-	</xsd:simpleType>
 	<xsd:simpleType name="entityRoleType">
 		<xsd:restriction base="xsd:string">
 			<xsd:enumeration value="data supplier"/>
@@ -1544,6 +1505,22 @@
 	<xsd:simpleType name="entityRoleExtensionType">
 		<xsd:union memberTypes="entityRoleType xsd:string"/>
 	</xsd:simpleType>
+	<xsd:element name="entity" type="entityInformationType">
+		<xsd:annotation>
+			<xsd:documentation>Global element to validate external XML representations of entities.
+				An entity here could be a company, organisation, institution, or
+				person.</xsd:documentation>
+		</xsd:annotation>
+	</xsd:element>
+	<xsd:simpleType name="contactRoleType">
+		<xsd:restriction base="xsd:string">
+			<xsd:enumeration value="data administrator"/>
+			<xsd:enumeration value="system administrator"/>
+		</xsd:restriction>
+	</xsd:simpleType>
+	<xsd:simpleType name="contactRoleExtensionType">
+		<xsd:union memberTypes="contactRoleType xsd:string"/>
+	</xsd:simpleType>
 	<xsd:complexType name="entityInformationType">
 		<xsd:annotation>
 			<xsd:documentation>Entity information.</xsd:documentation>
@@ -1583,37 +1560,23 @@
 						specified URL.</xsd:documentation>
 				</xsd:annotation>
 			</xsd:element>
-			<xsd:element name="contact" type="contactInformationType" maxOccurs="unbounded"/>
-			<xsd:element name="geoLocation" type="geoLocationType" minOccurs="0"/>
+			<xsd:element name="hasContact" maxOccurs="unbounded">
+				<xsd:complexType>
+					<xsd:sequence>
+						<xsd:element name="role" type="contactRoleExtensionType" maxOccurs="unbounded" />
+						<xsd:element ref="vcard:VCARD"/>
+					</xsd:sequence>
+				</xsd:complexType>
+			</xsd:element>
+			<xsd:element ref="georss:where" minOccurs="0">
+				<xsd:annotation>
+					<xsd:documentation>Location of the entity in decimal WGS84 latitude and longitude as defined by GeoRSS/GML</xsd:documentation>
+				</xsd:annotation>
+			</xsd:element>
 			<xsd:element ref="custom"/>
 		</xsd:sequence>
 		<xsd:attribute ref="lang"/>
 	</xsd:complexType>
-	<xsd:complexType name="relatedEntityInformationType">
-		<xsd:annotation>
-			<xsd:documentation>Information about an entity that may have some relationship with the
-				service being provided.</xsd:documentation>
-		</xsd:annotation>
-		<xsd:complexContent>
-			<xsd:extension base="entityInformationType">
-				<xsd:sequence>
-					<xsd:element name="role" type="entityRoleExtensionType" maxOccurs="unbounded">
-						<xsd:annotation>
-							<xsd:documentation>Used to specify the roles of a related entity, such as "data
-								supplier", "technical host", etc.</xsd:documentation>
-						</xsd:annotation>
-					</xsd:element>
-				</xsd:sequence>
-			</xsd:extension>
-		</xsd:complexContent>
-	</xsd:complexType>
-	<xsd:complexType name="geoLocationType">
-		<xsd:annotation>
-			<xsd:documentation>Decimal coordinates in WGS84.</xsd:documentation>
-		</xsd:annotation>
-		<xsd:attribute name="lat" type="xsd:double" use="required"/>
-		<xsd:attribute name="long" type="xsd:double" use="required"/>
-	</xsd:complexType>
 	<!-- ===== INVENTORY===== -->
 	<xsd:complexType name="inventoryResultType">
 		<xsd:annotation>





More information about the tdwg-tag mailing list