Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
489 blopes 1
<?xml version="1.0" encoding="utf-8"?>
2
<!-- ***************************************************-->
3
<!-- ***   Schema específico para assinaturas XML    ***-->
4
<!-- *** a partir de certificados do padrão (X509)   ***-->
5
<!-- *** ICP-Brasil - Projeto Nota Fiscal Eletrônica ***-->
6
<!-- ***************************************************-->
7
<!-- Schema for XML Signatures-->
8
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.1">
9
        <element name="Signature" type="ds:SignatureType"/>
10
        <complexType name="SignatureType">
11
                <sequence>
12
                        <element name="SignedInfo" type="ds:SignedInfoType"/>
13
                        <element name="SignatureValue" type="ds:SignatureValueType"/>
14
                        <element name="KeyInfo" type="ds:KeyInfoType"/>
15
                </sequence>
16
                <attribute name="Id" type="ID" use="optional"/>
17
        </complexType>
18
        <complexType name="SignatureValueType">
19
                <simpleContent>
20
                        <extension base="base64Binary">
21
                                <attribute name="Id" type="ID" use="optional"/>
22
                        </extension>
23
                </simpleContent>
24
        </complexType>
25
        <complexType name="SignedInfoType">
26
                <sequence>
27
                        <element name="CanonicalizationMethod">
28
                                <complexType>
29
                                        <attribute name="Algorithm" type="anyURI" use="required" fixed="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
30
                                </complexType>
31
                        </element>
32
                        <element name="SignatureMethod">
33
                                <complexType>
34
                                        <attribute name="Algorithm" type="anyURI" use="required" fixed="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
35
                                </complexType>
36
                        </element>
37
                        <element name="Reference" type="ds:ReferenceType"/>
38
                </sequence>
39
                <attribute name="Id" type="ID" use="optional"/>
40
        </complexType>
41
        <complexType name="ReferenceType">
42
                <sequence>
43
                        <element name="Transforms" type="ds:TransformsType">
44
                                <!-- Garante a unicidade do atributo -->
45
                                <unique name="unique_Transf_Alg">
46
                                        <selector xpath="./*"/>
47
                                        <field xpath="@Algorithm"/>
48
                                </unique>
49
                        </element>
50
                        <element name="DigestMethod">
51
                                <complexType>
52
                                        <attribute name="Algorithm" type="anyURI" use="required" fixed="http://www.w3.org/2000/09/xmldsig#sha1"/>
53
                                </complexType>
54
                        </element>
55
                        <element name="DigestValue" type="ds:DigestValueType"/>
56
                </sequence>
57
                <attribute name="Id" type="ID" use="optional"/>
58
                <attribute name="URI" use="required">
59
                        <simpleType>
60
                                <restriction base="anyURI">
61
                                        <minLength value="2"/>
62
                                </restriction>
63
                        </simpleType>
64
                </attribute>
65
                <attribute name="Type" type="anyURI" use="optional"/>
66
        </complexType>
67
        <complexType name="TransformsType">
68
                <sequence>
69
                        <element name="Transform" type="ds:TransformType" minOccurs="2" maxOccurs="2"/>
70
                </sequence>
71
        </complexType>
72
        <complexType name="TransformType">
73
                <sequence minOccurs="0" maxOccurs="unbounded">
74
                        <element name="XPath" type="string"/>
75
                </sequence>
76
                <attribute name="Algorithm" type="ds:TTransformURI" use="required"/>
77
        </complexType>
78
        <complexType name="KeyInfoType">
79
                <sequence>
80
                        <element name="X509Data" type="ds:X509DataType"/>
81
                </sequence>
82
                <attribute name="Id" type="ID" use="optional"/>
83
        </complexType>
84
        <complexType name="X509DataType">
85
                <sequence>
86
                        <element name="X509Certificate" type="base64Binary"/>
87
                </sequence>
88
        </complexType>
89
        <simpleType name="DigestValueType">
90
                <restriction base="base64Binary"/>
91
        </simpleType>
92
        <simpleType name="TTransformURI">
93
                <restriction base="anyURI">
94
                        <enumeration value="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
95
                        <enumeration value="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
96
                </restriction>
97
        </simpleType>
98
</schema>