summaryrefslogtreecommitdiffstats
path: root/sandbox/ant/sca/trunk/modules/assembly-xsd-osoa/src/main/resources/sca-contributions.xsd
blob: caf5d8010f3f4cd338c31b3bbb2107fbca5ec063 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?xml version="1.0" encoding="UTF-8"?>
<!-- (c) Copyright SCA Collaboration 2007 -->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
        targetNamespace="http://www.osoa.org/xmlns/sca/1.0"
        xmlns:sca="http://www.osoa.org/xmlns/sca/1.0"
        elementFormDefault="qualified">
       
    <include schemaLocation="sca-core.xsd"/>
       
    <element name="contribution" type="sca:ContributionType"/>        
    <complexType name="ContributionType">
         <sequence>
             <element name="deployable" type="sca:DeployableType" minOccurs="0" maxOccurs="unbounded"/>
             <element ref="sca:import" minOccurs="0" maxOccurs="unbounded"/>
             <element ref="sca:export" minOccurs="0" maxOccurs="unbounded"/>
             <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
        <anyAttribute namespace="##other" processContents="lax"/>
    </complexType>        

    <complexType name="DeployableType">
         <sequence>
             <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
        <attribute name="composite" type="QName" use="required"/>
        <anyAttribute namespace="##other" processContents="lax"/>
    </complexType>        

    <element name="import" type="sca:ImportType"/>
    <complexType name="ImportType">
         <sequence>
             <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
        <attribute name="namespace" type="string" use="required"/>
        <attribute name="location" type="anyURI" use="required"/>
        <anyAttribute namespace="##other" processContents="lax"/>
    </complexType>        

    <element name="export" type="sca:ExportType"/>
    <complexType name="ExportType">
         <sequence>
             <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
        <attribute name="namespace" type="string" use="required"/>
        <anyAttribute namespace="##other" processContents="lax"/>
    </complexType>  
    
    <element name="import.resource" type="sca:ImportResourceType" substitutionGroup="sca:import"/>
    <complexType name="ImportResourceType">
        <complexContent>
            <extension base="sca:ImportType">
                 <attribute name="uri" type="anyURI" use="optional"/>
            </extension>
        </complexContent>
    </complexType>   
    
    <element name="export.resource" type="sca:ExportResourceType" substitutionGroup="sca:export"/>
    <complexType name="ExportResourceType">
        <complexContent>
            <extension base="sca:ExportType">
                <attribute name="uri" type="anyURI" use="optional"/>
            </extension>
        </complexContent>
    </complexType>  
</schema>