source: VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/VirtualCollection.xsd @ 240

Last change on this file since 240 was 240, checked in by oschonef, 14 years ago
  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/xml
File size: 2.9 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
3
4        <xs:element name="VirtualCollection" type="VirtualCollectionType" />
5
6        <xs:element name="VirtualCollections" type="VirtualCollectionsType" />
7
8        <xs:complexType name="VirtualCollectionsType">
9                <xs:sequence maxOccurs="unbounded">
10                        <xs:element ref="VirtualCollection" />
11                </xs:sequence>
12                <xs:attribute name="totalCount" type="xs:integer" />
13                <xs:attribute name="offset" type="xs:integer" />
14                <xs:attribute name="result">
15                        <xs:simpleType>
16                                <xs:restriction base="xs:string">
17                                        <xs:enumeration value="full" />
18                                        <xs:enumeration value="partial" />
19                                </xs:restriction>
20                        </xs:simpleType>
21                </xs:attribute>
22        </xs:complexType>
23
24        <xs:complexType name="VirtualCollectionType">
25                <xs:sequence>
26                        <xs:element name="Name" type="xs:string" />
27                        <xs:element minOccurs="0" name="Description" type="xs:string" />
28                        <xs:element minOccurs="0" name="CreationDate" type="xs:date" />
29                        <xs:element minOccurs="0" name="Visibility" type="VisibilityType" />
30                        <xs:element name="Type" type="TypeType" />
31                        <xs:element minOccurs="0" name="Origin" type="xs:string" />
32                        <xs:element minOccurs="0" name="Creator" type="CreatorType" />
33                        <xs:element name="Resources" type="ResourcesType" />
34                </xs:sequence>
35                <xs:attribute name="id" type="xs:long" use="optional" />
36                <xs:attribute name="uuid" type="xs:string" use="optional" />
37                <xs:attribute name="persistentId" type="xs:string" use="optional" />
38        </xs:complexType>
39
40
41        <xs:complexType name="ResourcesType">
42                <xs:sequence maxOccurs="unbounded">
43                        <xs:element name="ResourceProxy" type="ResourceType" />
44                </xs:sequence>
45        </xs:complexType>
46
47        <xs:complexType name="ResourceType">
48                <xs:sequence>
49                        <xs:element name="ResourceType" type="ResourceTypeType" />
50                        <xs:element name="ResourceRef" type="ResourceRefType" />
51                </xs:sequence>
52                <xs:attribute name="id" type="xs:ID" use="required" />
53        </xs:complexType>
54
55        <xs:complexType name="CreatorType">
56                <xs:sequence>
57                        <xs:element name="Name" type="xs:string" />
58                        <xs:element minOccurs="0" name="Email" type="xs:string" />
59                        <xs:element minOccurs="0" name="Organisation" type="xs:string" />
60                </xs:sequence>
61                <xs:attribute name="ref" type="xs:IDREF" />
62        </xs:complexType>
63
64        <xs:simpleType name="ResourceTypeType">
65                <xs:restriction base="xs:string">
66                        <xs:enumeration value="Metadata" />
67                        <xs:enumeration value="Resource" />
68                </xs:restriction>
69        </xs:simpleType>
70
71        <xs:simpleType name="ResourceRefType">
72                <xs:restriction base="xs:anyURI" />
73        </xs:simpleType>
74
75        <xs:simpleType name="VisibilityType">
76                <xs:restriction base="xs:string">
77                        <xs:enumeration value="advertised" />
78                        <xs:enumeration value="non-advertised" />
79                </xs:restriction>
80        </xs:simpleType>
81
82        <xs:simpleType name="TypeType">
83                <xs:restriction base="xs:string">
84                        <xs:enumeration value="extensional" />
85                        <xs:enumeration value="intensional" />
86                </xs:restriction>
87        </xs:simpleType>
88
89</xs:schema>
Note: See TracBrowser for help on using the repository browser.