source: FederatedSearch/ccsResource.xsd @ 1662

Last change on this file since 1662 was 1662, checked in by vronk, 12 years ago

changed namespace to: http://clarin.eu/fcs/1.0
Resource.xsd SUPERSEDES ccsResource.xsd

File size: 4.4 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3    targetNamespace="http://clarin.eu/schemas/ccs" xmlns:ccs="http://clarin.eu/schemas/ccs">
4    <xs:annotation>
5        <xs:documentation>
6            This schema is SUPERSEDED BY: Resource.xsd
7                with a NEW namespace: http://clarin.eu/fcs/1.0
8        </xs:documentation>
9    </xs:annotation>
10   
11    <xs:annotation>
12        <xs:documentation>This schema shall define the generic inner structure
13            of one record within the (federated) CLARIN content search.
14            This means it would validate the xml-fragment inside sru:record/sru:recordData
15            and would be referenced in sru:record/sru:recordSchema
16            of the sru:searchRetrieveResponse.
17           
18            It shall allow:
19            a) any metadata about the matched record, including reference to a CMD-record
20            b) separate (metadata) description of full Resource and ResourceFragment (matching part of the resource)
21            c) providing metadata AND content
22            d) various views on the data delivered (text-snippet, image, individual annotation-layers, ...)
23            e) providing links (either as PID or as simple URLs) to any of:
24               Resource, ResourceFragment, Metadata (CMD-record), DataViews           
25         </xs:documentation>
26    </xs:annotation>
27
28    <xs:element name="Resource" type="ccs:ResourceType"> </xs:element>
29    <xs:complexType name="ResourceType">
30        <xs:sequence>
31            <xs:element maxOccurs="unbounded" minOccurs="0" name="Resource" type="ccs:ResourceType"/>
32            <xs:element maxOccurs="unbounded" minOccurs="0" name="DataView" type="ccs:DataViewType"/>
33            <xs:element maxOccurs="unbounded" minOccurs="0" name="ResourceFragment"
34                type="ccs:ResourceFragmentType"/>
35        </xs:sequence>
36        <xs:attribute name="pid" type="ccs:pidType" use="optional"/>
37        <xs:attribute name="ref" type="ccs:refType" use="optional"/>
38    </xs:complexType>
39
40
41    <xs:complexType name="ResourceFragmentType">
42        <xs:sequence>
43            <xs:element maxOccurs="unbounded" minOccurs="0" name="DataView" type="ccs:DataViewType"
44            />
45        </xs:sequence>
46        <xs:attribute name="pid" type="ccs:pidType" use="optional"/>
47        <xs:attribute name="ref" type="ccs:refType" use="optional"/>
48    </xs:complexType>
49
50    <xs:complexType name="DataViewType">
51        <xs:annotation>
52            <xs:documentation>the content expressed in XML that complies with another XML Schema (namespace=#other). </xs:documentation>
53        </xs:annotation>
54        <xs:sequence>
55            <xs:any namespace="##other" processContents="strict"/>
56        </xs:sequence>
57        <xs:attribute name="type" type="ccs:DataViewTypeType"/>
58        <xs:attribute name="pid" type="ccs:pidType"/>
59        <xs:attribute name="ref" type="ccs:refType"/>
60        <xs:attribute name="schema" type="ccs:schemaType"/>
61    </xs:complexType>
62
63    <xs:simpleType name="DataViewTypeType">
64        <xs:annotation>
65            <xs:documentation>This is obviously not exhaustive.
66
67Could this be a superset of of MIME-type?</xs:documentation>
68        </xs:annotation>
69        <xs:restriction base="xs:string">
70            <xs:enumeration value="kwic"/>
71            <xs:enumeration value="fulltext"/>
72            <xs:enumeration value="image"/>
73        </xs:restriction>
74    </xs:simpleType>
75
76    <xs:simpleType name="pidType">
77        <xs:annotation>
78            <xs:documentation>a persistent! identifier of given entity. This should be really only used, when a PID is available. Provider should also fill the sru:record/sru:recordIdentifier-element. If there are more PIDs in one record (for Resource, Metadata, DataView), provider selects the "most important"/primary PID to put into sru:recordIdentifier</xs:documentation>
79        </xs:annotation>
80        <xs:restriction base="xs:anyURI"/>
81    </xs:simpleType>
82
83    <xs:simpleType name="refType">
84        <xs:annotation>
85            <xs:documentation>a URL to given entity, that can be invoked directly (via HTTP)</xs:documentation>
86        </xs:annotation>
87        <xs:restriction base="xs:anyURI"/>
88    </xs:simpleType>
89
90
91    <xs:simpleType name="schemaType">
92        <xs:annotation>
93            <xs:documentation>a reference to a schema, describing the content of the DataView</xs:documentation>
94        </xs:annotation>
95        <xs:restriction base="xs:anyURI"/>
96    </xs:simpleType>
97</xs:schema>
Note: See TracBrowser for help on using the repository browser.