Merge lp:~vauxoo/openerp-mexico-localization/7.0-l10n_mx_facturae-update-files-xslt-xsd-jc into lp:openerp-mexico-localization/7.0

Proposed by Juan Carlos Hernandez
Status: Merged
Approved by: Jorge Angel Naranjo Rogel - http://www.vauxoo.com
Approved revision: 379
Merged at revision: 378
Proposed branch: lp:~vauxoo/openerp-mexico-localization/7.0-l10n_mx_facturae-update-files-xslt-xsd-jc
Merge into: lp:openerp-mexico-localization/7.0
Diff against target: 3544 lines (+2247/-1136)
25 files modified
l10n_mx_facturae/SAT/cadenaoriginal_3_2/TuristaPasajeroExtranjero.xslt (+39/-40)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/aerolineas.xslt (+49/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2.xslt (+319/-303)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2_l.xslt (+332/-317)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/cfdiregistrofiscal.xslt (+18/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/consumodecombustibles.xslt (+107/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/detallista.xslt (+41/-42)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/divisas.xslt (+12/-13)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/donat11.xslt (+12/-13)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecb.xslt (+27/-28)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecc.xslt (+49/-50)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/iedu.xslt (+25/-26)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/implocal.xslt (+38/-39)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/leyendasFisc.xslt (+27/-28)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/nomina11.xslt (+326/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/notariospublicos.xslt (+300/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/pagoenespecie.xslt (+38/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/pfic.xslt (+12/-13)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/psgecfd.xslt (+11/-12)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/spei.xslt (+81/-82)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/terceros11.xslt (+107/-108)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/utilerias.xslt (+21/-22)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/valesdedespensa.xslt (+69/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/ventavehiculos11.xslt (+52/-0)
l10n_mx_facturae/SAT/cadenaoriginal_3_2/xslt_sync.py (+135/-0)
To merge this branch: bzr merge lp:~vauxoo/openerp-mexico-localization/7.0-l10n_mx_facturae-update-files-xslt-xsd-jc
Reviewer Review Type Date Requested Status
Juan Carlos Hernandez (community) Needs Resubmitting
Jorge Angel Naranjo Rogel - http://www.vauxoo.com Needs Fixing
Moisés López - http://www.vauxoo.com Pending
Review via email: mp+230163@code.launchpad.net

Description of the change

Se actualizaron los archivos .xslt y .xsd proporcionados por el SAT para la OML7.0
Se agregó el script para que puedan actualizar estos archivos cuando se necesiten.

To post a comment you must log in.
378. By Juan Carlos Hernandez

[MERGE]MERGE with lp:openerp-mexico-localization/7.0 for correct error in test

Revision history for this message
Jorge Angel Naranjo Rogel - http://www.vauxoo.com (jorge-nr) wrote :

@Carlos
Cambia lo del comentario

review: Needs Fixing
379. By Juan Carlos Hernandez

[IMP][l10n_mx_facturae]change links

Revision history for this message
Juan Carlos Hernandez (openerp1) wrote :

@Jorge
Ya están los cambios que me pediste

review: Needs Resubmitting

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/TuristaPasajeroExtranjero.xslt'
2--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/TuristaPasajeroExtranjero.xslt 2013-09-02 23:58:07 +0000
3+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/TuristaPasajeroExtranjero.xslt 2014-08-12 21:43:48 +0000
4@@ -1,40 +1,39 @@
5-<?xml version="1.0" encoding="UTF-8"?>
6-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:tpe="http://www.sat.gob.mx/TuristaPasajeroExtranjero">
7- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
8- <!-- Manejador de nodos tipo tpe:TuristaPasajeroExtranjero -->
9- <xsl:template match="tpe:TuristaPasajeroExtranjero">
10- <!--Iniciamos el tratamiento de los atributos de tpe:TuristaPasajeroExtranjero-->
11- <xsl:call-template name="Requerido">
12- <xsl:with-param name="valor" select="./@version"/>
13- </xsl:call-template>
14- <xsl:call-template name="Requerido">
15- <xsl:with-param name="valor" select="./@fechadeTransito"/>
16- </xsl:call-template>
17- <xsl:call-template name="Requerido">
18- <xsl:with-param name="valor" select="./@tipoTransito"/>
19- </xsl:call-template>
20- <xsl:apply-templates select="./tpe:datosTransito"/>
21- </xsl:template>
22- <!-- Manejador de nodos tipo datosTransito-->
23- <xsl:template match="tpe:datosTransito">
24- <!-- Iniciamos el tratamiento de los atributos de los datos de Transito-->
25- <xsl:call-template name="Requerido">
26- <xsl:with-param name="valor" select="./@Via"/>
27- </xsl:call-template>
28- <xsl:call-template name="Requerido">
29- <xsl:with-param name="valor" select="./@TipoId"/>
30- </xsl:call-template>
31- <xsl:call-template name="Requerido">
32- <xsl:with-param name="valor" select="./@NumeroId"/>
33- </xsl:call-template>
34- <xsl:call-template name="Requerido">
35- <xsl:with-param name="valor" select="./@Nacionalidad"/>
36- </xsl:call-template>
37- <xsl:call-template name="Requerido">
38- <xsl:with-param name="valor" select="./@EmpresaTransporte"/>
39- </xsl:call-template>
40- <xsl:call-template name="Opcional">
41- <xsl:with-param name="valor" select="./@IdTransporte"/>
42- </xsl:call-template>
43- </xsl:template>
44-</xsl:stylesheet>
45+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:tpe="http://www.sat.gob.mx/TuristaPasajeroExtranjero" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
46+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
47+ <!-- Manejador de nodos tipo tpe:TuristaPasajeroExtranjero -->
48+ <xsl:template match="tpe:TuristaPasajeroExtranjero">
49+ <!--Iniciamos el tratamiento de los atributos de tpe:TuristaPasajeroExtranjero-->
50+ <xsl:call-template name="Requerido">
51+ <xsl:with-param name="valor" select="./@version"/>
52+ </xsl:call-template>
53+ <xsl:call-template name="Requerido">
54+ <xsl:with-param name="valor" select="./@fechadeTransito"/>
55+ </xsl:call-template>
56+ <xsl:call-template name="Requerido">
57+ <xsl:with-param name="valor" select="./@tipoTransito"/>
58+ </xsl:call-template>
59+ <xsl:apply-templates select="./tpe:datosTransito"/>
60+ </xsl:template>
61+ <!-- Manejador de nodos tipo datosTransito-->
62+ <xsl:template match="tpe:datosTransito">
63+ <!-- Iniciamos el tratamiento de los atributos de los datos de Transito-->
64+ <xsl:call-template name="Requerido">
65+ <xsl:with-param name="valor" select="./@Via"/>
66+ </xsl:call-template>
67+ <xsl:call-template name="Requerido">
68+ <xsl:with-param name="valor" select="./@TipoId"/>
69+ </xsl:call-template>
70+ <xsl:call-template name="Requerido">
71+ <xsl:with-param name="valor" select="./@NumeroId"/>
72+ </xsl:call-template>
73+ <xsl:call-template name="Requerido">
74+ <xsl:with-param name="valor" select="./@Nacionalidad"/>
75+ </xsl:call-template>
76+ <xsl:call-template name="Requerido">
77+ <xsl:with-param name="valor" select="./@EmpresaTransporte"/>
78+ </xsl:call-template>
79+ <xsl:call-template name="Opcional">
80+ <xsl:with-param name="valor" select="./@IdTransporte"/>
81+ </xsl:call-template>
82+ </xsl:template>
83+</xsl:stylesheet>
84\ No newline at end of file
85
86=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/aerolineas.xslt'
87--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/aerolineas.xslt 1970-01-01 00:00:00 +0000
88+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/aerolineas.xslt 2014-08-12 21:43:48 +0000
89@@ -0,0 +1,49 @@
90+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:aerolineas="http://www.sat.gob.mx/aerolineas" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
91+
92+ <!-- Manejador de nodos tipo aerolineas:Aerolineas -->
93+ <xsl:template match="aerolineas:Aerolineas">
94+
95+ <!-- Iniciamos el tratamiento de los atributos de aerolineas:Aerolineas -->
96+
97+ <xsl:call-template name="Requerido">
98+ <xsl:with-param name="valor" select="./@Version"/>
99+ </xsl:call-template>
100+ <xsl:call-template name="Requerido">
101+ <xsl:with-param name="valor" select="./@TUA"/>
102+ </xsl:call-template>
103+
104+ <!-- Iniciamos el manejo de los nodos dependientes -->
105+ <xsl:apply-templates select="./aerolineas:OtrosCargos"/>
106+
107+ </xsl:template>
108+
109+ <!-- Manejador de nodos tipo aerolineas:OtrosCargos -->
110+ <xsl:template match="aerolineas:OtrosCargos">
111+
112+ <!-- Iniciamos el tratamiento de los atributos de aerolineas:OtrosCargos -->
113+ <xsl:call-template name="Requerido">
114+ <xsl:with-param name="valor" select="./@TotalCargos"/>
115+ </xsl:call-template>
116+
117+ <!-- Iniciamos el manejo de los nodos dependientes -->
118+ <xsl:for-each select="./aerolineas:Cargo">
119+ <xsl:apply-templates select="."/>
120+ </xsl:for-each>
121+
122+ </xsl:template>
123+
124+ <!-- Manejador de nodos tipo aerolineas:Cargo -->
125+ <xsl:template match="aerolineas:Cargo">
126+
127+ <!-- Iniciamos el tratamiento de los atributos de aerolineas:ConceptoConsumoDeCombustibles -->
128+
129+ <xsl:call-template name="Requerido">
130+ <xsl:with-param name="valor" select="./@CodigoCargo"/>
131+ </xsl:call-template>
132+ <xsl:call-template name="Requerido">
133+ <xsl:with-param name="valor" select="./@Importe"/>
134+ </xsl:call-template>
135+
136+ </xsl:template>
137+
138+</xsl:stylesheet>
139\ No newline at end of file
140
141=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2.xslt'
142--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2.xslt 2013-07-12 21:32:02 +0000
143+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2.xslt 2014-08-12 21:43:48 +0000
144@@ -1,317 +1,333 @@
145 <?xml version="1.0" encoding="UTF-8"?>
146-<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:ecc="http://www.sat.gob.mx/ecc" xmlns:psgecfd="http://www.sat.gob.mx/psgecfd" xmlns:donat="http://www.sat.gob.mx/donat" xmlns:divisas="http://www.sat.gob.mx/divisas" xmlns:detallista="http://www.sat.gob.mx/detallista" xmlns:ecb="http://www.sat.gob.mx/ecb" xmlns:implocal="http://www.sat.gob.mx/implocal" xmlns:terceros="http://www.sat.gob.mx/terceros" xmlns:iedu="http://www.sat.gob.mx/iedu" xmlns:ventavehiculos="http://www.sat.gob.mx/ventavehiculos" xmlns:pfic="http://www.sat.gob.mx/pfic" xmlns:tpe="http://www.sat.gob.mx/TuristaPasajeroExtranjero" xmlns:leyendasFisc="http://www.sat.gob.mx/leyendasFiscales" xmlns:spei="http://www.sat.gob.mx/spei">
147- <!-- Con el siguiente método se establece que la salida deberá ser en texto -->
148- <!-- Integración de complemento SPEI 14-08-2012> -->
149- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
150- <!--
151+<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:ecc="http://www.sat.gob.mx/ecc" xmlns:psgecfd="http://www.sat.gob.mx/psgecfd" xmlns:donat="http://www.sat.gob.mx/donat" xmlns:divisas="http://www.sat.gob.mx/divisas" xmlns:detallista="http://www.sat.gob.mx/detallista" xmlns:ecb="http://www.sat.gob.mx/ecb" xmlns:implocal="http://www.sat.gob.mx/implocal" xmlns:terceros="http://www.sat.gob.mx/terceros" xmlns:iedu="http://www.sat.gob.mx/iedu" xmlns:ventavehiculos="http://www.sat.gob.mx/ventavehiculos" xmlns:pfic="http://www.sat.gob.mx/pfic" xmlns:tpe="http://www.sat.gob.mx/TuristaPasajeroExtranjero" xmlns:leyendasFisc="http://www.sat.gob.mx/leyendasFiscales" xmlns:spei="http://www.sat.gob.mx/spei" xmlns:nomina="http://www.sat.gob.mx/nomina" xmlns:registrofiscal="http://www.sat.gob.mx/registrofiscal" xmlns:pagoenespecie="http://www.sat.gob.mx/pagoenespecie" xmlns:consumodecombustibles="http://www.sat.gob.mx/consumodecombustibles" xmlns:valesdedespensa="http://www.sat.gob.mx/valesdedespensa" xmlns:aerolineas="http://www.sat.gob.mx/aerolineas" xmlns:notariospublicos="http://www.sat.gob.mx/notariospublicos">
152+
153+ <!-- Integración de complemento Nomina 03-05-2013-->
154+ <!-- Integración de complemento CFDI Registro Fiscal 27-11-2013-->
155+ <!-- Integración de complemento Pago en Especie 18-12-2013-->
156+ <!-- Integración de complemento Consumo de combustible 05-02-2014-->
157+ <!-- Integración de complemento Vales de despensa 05-02-2014-->
158+ <!-- Integración de complemento aerolineas 07-02-2014-->
159+ <!-- Integración de complemento notarios publicos 25-03-2014-->
160+
161+ <!-- Con el siguiente método se establece que la salida deberá ser en texto -->
162+ <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
163+ <!--
164 En esta sección se define la inclusión de las plantillas de utilerías para colapsar espacios
165 -->
166- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/2/cadenaoriginal_2_0/utilerias.xslt"/>
167- <!--
168+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/2/cadenaoriginal_2_0/utilerias.xslt"/>
169+ <!--
170 En esta sección se define la inclusión de las demás plantillas de transformación para
171 la generación de las cadenas originales de los complementos fiscales
172 -->
173- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/ecc/ecc.xslt"/>
174- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/psgecfd/psgecfd.xslt"/>
175- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/donat/donat11.xslt"/>
176- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/divisas/divisas.xslt"/>
177- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/ecb/ecb.xslt"/>
178- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/detallista/detallista.xslt"/>
179- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/implocal/implocal.xslt"/>
180- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/terceros/terceros11.xslt"/>
181- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/iedu/iedu.xslt"/>
182- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/ventavehiculos/ventavehiculos.xslt"/>
183- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/pfic/pfic.xslt"/>
184- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/TuristaPasajeroExtranjero/TuristaPasajeroExtranjero.xslt"/>
185- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/leyendasFiscales/leyendasFisc.xslt"/>
186- <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/spei/spei.xslt"/>
187- <!-- Aquí iniciamos el procesamiento de la cadena original con su | inicial y el terminador || -->
188- <xsl:template match="/">|<xsl:apply-templates select="/cfdi:Comprobante"/>||</xsl:template>
189- <!-- Aquí iniciamos el procesamiento de los datos incluidos en el comprobante -->
190- <xsl:template match="cfdi:Comprobante">
191- <!-- Iniciamos el tratamiento de los atributos de comprobante -->
192- <xsl:call-template name="Requerido">
193- <xsl:with-param name="valor" select="./@version"/>
194- </xsl:call-template>
195- <xsl:call-template name="Requerido">
196- <xsl:with-param name="valor" select="./@fecha"/>
197- </xsl:call-template>
198- <xsl:call-template name="Requerido">
199- <xsl:with-param name="valor" select="./@tipoDeComprobante"/>
200- </xsl:call-template>
201- <xsl:call-template name="Requerido">
202- <xsl:with-param name="valor" select="./@formaDePago"/>
203- </xsl:call-template>
204- <xsl:call-template name="Opcional">
205- <xsl:with-param name="valor" select="./@condicionesDePago"/>
206- </xsl:call-template>
207- <xsl:call-template name="Requerido">
208- <xsl:with-param name="valor" select="./@subTotal"/>
209- </xsl:call-template>
210- <xsl:call-template name="Opcional">
211- <xsl:with-param name="valor" select="./@descuento"/>
212- </xsl:call-template>
213- <xsl:call-template name="Opcional">
214- <xsl:with-param name="valor" select="./@TipoCambio"/>
215- </xsl:call-template>
216- <xsl:call-template name="Opcional">
217- <xsl:with-param name="valor" select="./@Moneda"/>
218- </xsl:call-template>
219- <xsl:call-template name="Requerido">
220- <xsl:with-param name="valor" select="./@total"/>
221- </xsl:call-template>
222- <xsl:call-template name="Requerido">
223- <xsl:with-param name="valor" select="./@metodoDePago"/>
224- </xsl:call-template>
225- <xsl:call-template name="Requerido">
226- <xsl:with-param name="valor" select="./@LugarExpedicion"/>
227- </xsl:call-template>
228- <xsl:call-template name="Opcional">
229- <xsl:with-param name="valor" select="./@NumCtaPago"/>
230- </xsl:call-template>
231- <xsl:call-template name="Opcional">
232- <xsl:with-param name="valor" select="./@FolioFiscalOrig"/>
233- </xsl:call-template>
234- <xsl:call-template name="Opcional">
235- <xsl:with-param name="valor" select="./@SerieFolioFiscalOrig"/>
236- </xsl:call-template>
237- <xsl:call-template name="Opcional">
238- <xsl:with-param name="valor" select="./@FechaFolioFiscalOrig"/>
239- </xsl:call-template>
240- <xsl:call-template name="Opcional">
241- <xsl:with-param name="valor" select="./@MontoFolioFiscalOrig"/>
242- </xsl:call-template>
243- <!--
244- Llamadas para procesar al los sub nodos del comprobante
245- -->
246- <xsl:apply-templates select="./cfdi:Emisor"/>
247- <xsl:apply-templates select="./cfdi:Receptor"/>
248- <xsl:apply-templates select="./cfdi:Conceptos"/>
249- <xsl:apply-templates select="./cfdi:Impuestos"/>
250- <xsl:apply-templates select="./cfdi:Complemento"/>
251- </xsl:template>
252- <!-- Manejador de nodos tipo Emisor -->
253- <xsl:template match="cfdi:Emisor">
254- <!-- Iniciamos el tratamiento de los atributos del Emisor -->
255- <xsl:call-template name="Requerido">
256- <xsl:with-param name="valor" select="./@rfc"/>
257- </xsl:call-template>
258- <xsl:call-template name="Opcional">
259- <xsl:with-param name="valor" select="./@nombre"/>
260- </xsl:call-template>
261- <!--
262- Llamadas para procesar al los sub nodos del comprobante
263- -->
264- <xsl:apply-templates select="./cfdi:DomicilioFiscal"/>
265- <xsl:if test="./cfdi:ExpedidoEn">
266- <xsl:call-template name="Domicilio">
267- <xsl:with-param name="Nodo" select="./cfdi:ExpedidoEn"/>
268- </xsl:call-template>
269- </xsl:if>
270- <xsl:for-each select="./cfdi:RegimenFiscal">
271- <xsl:call-template name="Requerido">
272- <xsl:with-param name="valor" select="./@Regimen"/>
273- </xsl:call-template>
274- </xsl:for-each>
275- </xsl:template>
276- <!-- Manejador de nodos tipo Receptor -->
277- <xsl:template match="cfdi:Receptor">
278- <!-- Iniciamos el tratamiento de los atributos del Receptor -->
279- <xsl:call-template name="Requerido">
280- <xsl:with-param name="valor" select="./@rfc"/>
281- </xsl:call-template>
282- <xsl:call-template name="Opcional">
283- <xsl:with-param name="valor" select="./@nombre"/>
284- </xsl:call-template>
285- <!--
286+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/ecc/ecc.xslt"/>
287+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/psgecfd/psgecfd.xslt"/>
288+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/donat/donat11.xslt"/>
289+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/divisas/divisas.xslt"/>
290+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/ecb/ecb.xslt"/>
291+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/detallista/detallista.xslt"/>
292+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/implocal/implocal.xslt"/>
293+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/terceros/terceros11.xslt"/>
294+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/iedu/iedu.xslt"/>
295+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/ventavehiculos/ventavehiculos11.xslt"/>
296+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/pfic/pfic.xslt"/>
297+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/TuristaPasajeroExtranjero/TuristaPasajeroExtranjero.xslt"/>
298+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/leyendasFiscales/leyendasFisc.xslt"/>
299+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/spei/spei.xslt"/>
300+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/nomina/nomina11.xslt"/>
301+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/cfdiregistrofiscal/cfdiregistrofiscal.xslt"/>
302+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/pagoenespecie/pagoenespecie.xslt"/>
303+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/consumodecombustibles/consumodecombustibles.xslt"/>
304+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/valesdedespensa/valesdedespensa.xslt"/>
305+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/aerolineas/aerolineas.xslt"/>
306+ <xsl:include href="http://www.sat.gob.mx/sitio_internet/cfd/notariospublicos/notariospublicos.xslt"/>
307+
308+ <!-- Aquí iniciamos el procesamiento de la cadena original con su | inicial y el terminador || -->
309+ <xsl:template match="/">|<xsl:apply-templates select="/cfdi:Comprobante"/>||</xsl:template>
310+ <!-- Aquí iniciamos el procesamiento de los datos incluidos en el comprobante -->
311+ <xsl:template match="cfdi:Comprobante">
312+ <!-- Iniciamos el tratamiento de los atributos de comprobante -->
313+ <xsl:call-template name="Requerido">
314+ <xsl:with-param name="valor" select="./@version"/>
315+ </xsl:call-template>
316+ <xsl:call-template name="Requerido">
317+ <xsl:with-param name="valor" select="./@fecha"/>
318+ </xsl:call-template>
319+ <xsl:call-template name="Requerido">
320+ <xsl:with-param name="valor" select="./@tipoDeComprobante"/>
321+ </xsl:call-template>
322+ <xsl:call-template name="Requerido">
323+ <xsl:with-param name="valor" select="./@formaDePago"/>
324+ </xsl:call-template>
325+ <xsl:call-template name="Opcional">
326+ <xsl:with-param name="valor" select="./@condicionesDePago"/>
327+ </xsl:call-template>
328+ <xsl:call-template name="Requerido">
329+ <xsl:with-param name="valor" select="./@subTotal"/>
330+ </xsl:call-template>
331+ <xsl:call-template name="Opcional">
332+ <xsl:with-param name="valor" select="./@descuento"/>
333+ </xsl:call-template>
334+ <xsl:call-template name="Opcional">
335+ <xsl:with-param name="valor" select="./@TipoCambio"/>
336+ </xsl:call-template>
337+ <xsl:call-template name="Opcional">
338+ <xsl:with-param name="valor" select="./@Moneda"/>
339+ </xsl:call-template>
340+ <xsl:call-template name="Requerido">
341+ <xsl:with-param name="valor" select="./@total"/>
342+ </xsl:call-template>
343+ <xsl:call-template name="Requerido">
344+ <xsl:with-param name="valor" select="./@metodoDePago"/>
345+ </xsl:call-template>
346+ <xsl:call-template name="Requerido">
347+ <xsl:with-param name="valor" select="./@LugarExpedicion"/>
348+ </xsl:call-template>
349+ <xsl:call-template name="Opcional">
350+ <xsl:with-param name="valor" select="./@NumCtaPago"/>
351+ </xsl:call-template>
352+ <xsl:call-template name="Opcional">
353+ <xsl:with-param name="valor" select="./@FolioFiscalOrig"/>
354+ </xsl:call-template>
355+ <xsl:call-template name="Opcional">
356+ <xsl:with-param name="valor" select="./@SerieFolioFiscalOrig"/>
357+ </xsl:call-template>
358+ <xsl:call-template name="Opcional">
359+ <xsl:with-param name="valor" select="./@FechaFolioFiscalOrig"/>
360+ </xsl:call-template>
361+ <xsl:call-template name="Opcional">
362+ <xsl:with-param name="valor" select="./@MontoFolioFiscalOrig"/>
363+ </xsl:call-template>
364+ <!--
365+ Llamadas para procesar al los sub nodos del comprobante
366+ -->
367+ <xsl:apply-templates select="./cfdi:Emisor"/>
368+ <xsl:apply-templates select="./cfdi:Receptor"/>
369+ <xsl:apply-templates select="./cfdi:Conceptos"/>
370+ <xsl:apply-templates select="./cfdi:Impuestos"/>
371+ <xsl:apply-templates select="./cfdi:Complemento"/>
372+ </xsl:template>
373+ <!-- Manejador de nodos tipo Emisor -->
374+ <xsl:template match="cfdi:Emisor">
375+ <!-- Iniciamos el tratamiento de los atributos del Emisor -->
376+ <xsl:call-template name="Requerido">
377+ <xsl:with-param name="valor" select="./@rfc"/>
378+ </xsl:call-template>
379+ <xsl:call-template name="Opcional">
380+ <xsl:with-param name="valor" select="./@nombre"/>
381+ </xsl:call-template>
382+ <!--
383+ Llamadas para procesar al los sub nodos del comprobante
384+ -->
385+ <xsl:apply-templates select="./cfdi:DomicilioFiscal"/>
386+ <xsl:if test="./cfdi:ExpedidoEn">
387+ <xsl:call-template name="Domicilio">
388+ <xsl:with-param name="Nodo" select="./cfdi:ExpedidoEn"/>
389+ </xsl:call-template>
390+ </xsl:if>
391+ <xsl:for-each select="./cfdi:RegimenFiscal">
392+ <xsl:call-template name="Requerido">
393+ <xsl:with-param name="valor" select="./@Regimen"/>
394+ </xsl:call-template>
395+ </xsl:for-each>
396+ </xsl:template>
397+ <!-- Manejador de nodos tipo Receptor -->
398+ <xsl:template match="cfdi:Receptor">
399+ <!-- Iniciamos el tratamiento de los atributos del Receptor -->
400+ <xsl:call-template name="Requerido">
401+ <xsl:with-param name="valor" select="./@rfc"/>
402+ </xsl:call-template>
403+ <xsl:call-template name="Opcional">
404+ <xsl:with-param name="valor" select="./@nombre"/>
405+ </xsl:call-template>
406+ <!--
407 Llamadas para procesar al los sub nodos del Receptor
408 -->
409- <xsl:if test="./cfdi:Domicilio">
410- <xsl:call-template name="Domicilio">
411- <xsl:with-param name="Nodo" select="./cfdi:Domicilio"/>
412- </xsl:call-template>
413- </xsl:if>
414- </xsl:template>
415- <!-- Manejador de nodos tipo Conceptos -->
416- <xsl:template match="cfdi:Conceptos">
417- <!-- Llamada para procesar los distintos nodos tipo Concepto -->
418- <xsl:for-each select="./cfdi:Concepto">
419- <xsl:apply-templates select="."/>
420- </xsl:for-each>
421- </xsl:template>
422- <!-- Manejador de nodos tipo Impuestos -->
423- <xsl:template match="cfdi:Impuestos">
424- <xsl:for-each select="./cfdi:Retenciones/cfdi:Retencion">
425- <xsl:apply-templates select="."/>
426- </xsl:for-each>
427- <xsl:call-template name="Opcional">
428- <xsl:with-param name="valor" select="./@totalImpuestosRetenidos"/>
429- </xsl:call-template>
430- <xsl:for-each select="./cfdi:Traslados/cfdi:Traslado">
431- <xsl:apply-templates select="."/>
432- </xsl:for-each>
433- <xsl:call-template name="Opcional">
434- <xsl:with-param name="valor" select="./@totalImpuestosTrasladados"/>
435- </xsl:call-template>
436- </xsl:template>
437- <!-- Manejador de nodos tipo Retencion -->
438- <xsl:template match="cfdi:Retencion">
439- <xsl:call-template name="Requerido">
440- <xsl:with-param name="valor" select="./@impuesto"/>
441- </xsl:call-template>
442- <xsl:call-template name="Requerido">
443- <xsl:with-param name="valor" select="./@importe"/>
444- </xsl:call-template>
445- </xsl:template>
446- <!-- Manejador de nodos tipo Traslado -->
447- <xsl:template match="cfdi:Traslado">
448- <xsl:call-template name="Requerido">
449- <xsl:with-param name="valor" select="./@impuesto"/>
450- </xsl:call-template>
451- <xsl:call-template name="Requerido">
452- <xsl:with-param name="valor" select="./@tasa"/>
453- </xsl:call-template>
454- <xsl:call-template name="Requerido">
455- <xsl:with-param name="valor" select="./@importe"/>
456- </xsl:call-template>
457- </xsl:template>
458- <!-- Manejador de nodos tipo Complemento -->
459- <xsl:template match="cfdi:Complemento">
460- <xsl:for-each select="./*">
461- <xsl:apply-templates select="."/>
462- </xsl:for-each>
463- </xsl:template>
464- <!--
465+ <xsl:if test="./cfdi:Domicilio">
466+ <xsl:call-template name="Domicilio">
467+ <xsl:with-param name="Nodo" select="./cfdi:Domicilio"/>
468+ </xsl:call-template>
469+ </xsl:if>
470+ </xsl:template>
471+ <!-- Manejador de nodos tipo Conceptos -->
472+ <xsl:template match="cfdi:Conceptos">
473+ <!-- Llamada para procesar los distintos nodos tipo Concepto -->
474+ <xsl:for-each select="./cfdi:Concepto">
475+ <xsl:apply-templates select="."/>
476+ </xsl:for-each>
477+ </xsl:template>
478+ <!-- Manejador de nodos tipo Impuestos -->
479+ <xsl:template match="cfdi:Impuestos">
480+ <xsl:for-each select="./cfdi:Retenciones/cfdi:Retencion">
481+ <xsl:apply-templates select="."/>
482+ </xsl:for-each>
483+ <xsl:call-template name="Opcional">
484+ <xsl:with-param name="valor" select="./@totalImpuestosRetenidos"/>
485+ </xsl:call-template>
486+ <xsl:for-each select="./cfdi:Traslados/cfdi:Traslado">
487+ <xsl:apply-templates select="."/>
488+ </xsl:for-each>
489+ <xsl:call-template name="Opcional">
490+ <xsl:with-param name="valor" select="./@totalImpuestosTrasladados"/>
491+ </xsl:call-template>
492+ </xsl:template>
493+ <!-- Manejador de nodos tipo Retencion -->
494+ <xsl:template match="cfdi:Retencion">
495+ <xsl:call-template name="Requerido">
496+ <xsl:with-param name="valor" select="./@impuesto"/>
497+ </xsl:call-template>
498+ <xsl:call-template name="Requerido">
499+ <xsl:with-param name="valor" select="./@importe"/>
500+ </xsl:call-template>
501+ </xsl:template>
502+ <!-- Manejador de nodos tipo Traslado -->
503+ <xsl:template match="cfdi:Traslado">
504+ <xsl:call-template name="Requerido">
505+ <xsl:with-param name="valor" select="./@impuesto"/>
506+ </xsl:call-template>
507+ <xsl:call-template name="Requerido">
508+ <xsl:with-param name="valor" select="./@tasa"/>
509+ </xsl:call-template>
510+ <xsl:call-template name="Requerido">
511+ <xsl:with-param name="valor" select="./@importe"/>
512+ </xsl:call-template>
513+ </xsl:template>
514+ <!-- Manejador de nodos tipo Complemento -->
515+ <xsl:template match="cfdi:Complemento">
516+ <xsl:for-each select="./*">
517+ <xsl:apply-templates select="."/>
518+ </xsl:for-each>
519+ </xsl:template>
520+ <!--
521 Manejador de nodos tipo Concepto
522 -->
523- <xsl:template match="cfdi:Concepto">
524- <!-- Iniciamos el tratamiento de los atributos del Concepto -->
525- <xsl:call-template name="Requerido">
526- <xsl:with-param name="valor" select="./@cantidad"/>
527- </xsl:call-template>
528- <xsl:call-template name="Requerido">
529- <xsl:with-param name="valor" select="./@unidad"/>
530- </xsl:call-template>
531- <xsl:call-template name="Opcional">
532- <xsl:with-param name="valor" select="./@noIdentificacion"/>
533- </xsl:call-template>
534- <xsl:call-template name="Requerido">
535- <xsl:with-param name="valor" select="./@descripcion"/>
536- </xsl:call-template>
537- <xsl:call-template name="Requerido">
538- <xsl:with-param name="valor" select="./@valorUnitario"/>
539- </xsl:call-template>
540- <xsl:call-template name="Requerido">
541- <xsl:with-param name="valor" select="./@importe"/>
542- </xsl:call-template>
543- <!--
544+ <xsl:template match="cfdi:Concepto">
545+ <!-- Iniciamos el tratamiento de los atributos del Concepto -->
546+ <xsl:call-template name="Requerido">
547+ <xsl:with-param name="valor" select="./@cantidad"/>
548+ </xsl:call-template>
549+ <xsl:call-template name="Requerido">
550+ <xsl:with-param name="valor" select="./@unidad"/>
551+ </xsl:call-template>
552+ <xsl:call-template name="Opcional">
553+ <xsl:with-param name="valor" select="./@noIdentificacion"/>
554+ </xsl:call-template>
555+ <xsl:call-template name="Requerido">
556+ <xsl:with-param name="valor" select="./@descripcion"/>
557+ </xsl:call-template>
558+ <xsl:call-template name="Requerido">
559+ <xsl:with-param name="valor" select="./@valorUnitario"/>
560+ </xsl:call-template>
561+ <xsl:call-template name="Requerido">
562+ <xsl:with-param name="valor" select="./@importe"/>
563+ </xsl:call-template>
564+ <!--
565 Manejo de los distintos sub nodos de información aduanera de forma indistinta
566 a su grado de dependencia
567 -->
568- <xsl:for-each select=".//cfdi:InformacionAduanera">
569- <xsl:apply-templates select="."/>
570- </xsl:for-each>
571- <!-- Llamada al manejador de nodos de Cuenta Predial en caso de existir -->
572- <xsl:if test="./cfdi:CuentaPredial">
573- <xsl:apply-templates select="./cfdi:CuentaPredial"/>
574- </xsl:if>
575- <!-- Llamada al manejador de nodos de ComplementoConcepto en caso de existir -->
576- <xsl:if test="./cfdi:ComplementoConcepto">
577- <xsl:apply-templates select="./cfdi:ComplementoConcepto"/>
578- </xsl:if>
579- </xsl:template>
580- <!-- Manejador de nodos tipo Información Aduanera -->
581- <xsl:template match="cfdi:InformacionAduanera">
582- <!-- Manejo de los atributos de la información aduanera -->
583- <xsl:call-template name="Requerido">
584- <xsl:with-param name="valor" select="./@numero"/>
585- </xsl:call-template>
586- <xsl:call-template name="Requerido">
587- <xsl:with-param name="valor" select="./@fecha"/>
588- </xsl:call-template>
589- <xsl:call-template name="Opcional">
590- <xsl:with-param name="valor" select="./@aduana"/>
591- </xsl:call-template>
592- </xsl:template>
593- <!-- Manejador de nodos tipo Información CuentaPredial -->
594- <xsl:template match="cfdi:CuentaPredial">
595- <xsl:call-template name="Requerido">
596- <xsl:with-param name="valor" select="./@numero"/>
597- </xsl:call-template>
598- </xsl:template>
599- <!-- Manejador de nodos tipo ComplementoConcepto -->
600- <xsl:template match="cfdi:ComplementoConcepto">
601- <xsl:for-each select="./*">
602- <xsl:apply-templates select="."/>
603- </xsl:for-each>
604- </xsl:template>
605- <!-- Manejador de nodos tipo Domicilio fiscal -->
606- <xsl:template match="cfdi:DomicilioFiscal">
607- <!-- Iniciamos el tratamiento de los atributos del Domicilio Fiscal -->
608- <xsl:call-template name="Requerido">
609- <xsl:with-param name="valor" select="./@calle"/>
610- </xsl:call-template>
611- <xsl:call-template name="Opcional">
612- <xsl:with-param name="valor" select="./@noExterior"/>
613- </xsl:call-template>
614- <xsl:call-template name="Opcional">
615- <xsl:with-param name="valor" select="./@noInterior"/>
616- </xsl:call-template>
617- <xsl:call-template name="Opcional">
618- <xsl:with-param name="valor" select="./@colonia"/>
619- </xsl:call-template>
620- <xsl:call-template name="Opcional">
621- <xsl:with-param name="valor" select="./@localidad"/>
622- </xsl:call-template>
623- <xsl:call-template name="Opcional">
624- <xsl:with-param name="valor" select="./@referencia"/>
625- </xsl:call-template>
626- <xsl:call-template name="Requerido">
627- <xsl:with-param name="valor" select="./@municipio"/>
628- </xsl:call-template>
629- <xsl:call-template name="Requerido">
630- <xsl:with-param name="valor" select="./@estado"/>
631- </xsl:call-template>
632- <xsl:call-template name="Requerido">
633- <xsl:with-param name="valor" select="./@pais"/>
634- </xsl:call-template>
635- <xsl:call-template name="Requerido">
636- <xsl:with-param name="valor" select="./@codigoPostal"/>
637- </xsl:call-template>
638- </xsl:template>
639- <!-- Manejador de nodos tipo Domicilio -->
640- <xsl:template name="Domicilio">
641- <xsl:param name="Nodo"/>
642- <!-- Iniciamos el tratamiento de los atributos del Domicilio -->
643- <xsl:call-template name="Opcional">
644- <xsl:with-param name="valor" select="$Nodo/@calle"/>
645- </xsl:call-template>
646- <xsl:call-template name="Opcional">
647- <xsl:with-param name="valor" select="$Nodo/@noExterior"/>
648- </xsl:call-template>
649- <xsl:call-template name="Opcional">
650- <xsl:with-param name="valor" select="$Nodo/@noInterior"/>
651- </xsl:call-template>
652- <xsl:call-template name="Opcional">
653- <xsl:with-param name="valor" select="$Nodo/@colonia"/>
654- </xsl:call-template>
655- <xsl:call-template name="Opcional">
656- <xsl:with-param name="valor" select="$Nodo/@localidad"/>
657- </xsl:call-template>
658- <xsl:call-template name="Opcional">
659- <xsl:with-param name="valor" select="$Nodo/@referencia"/>
660- </xsl:call-template>
661- <xsl:call-template name="Opcional">
662- <xsl:with-param name="valor" select="$Nodo/@municipio"/>
663- </xsl:call-template>
664- <xsl:call-template name="Opcional">
665- <xsl:with-param name="valor" select="$Nodo/@estado"/>
666- </xsl:call-template>
667- <xsl:call-template name="Requerido">
668- <xsl:with-param name="valor" select="$Nodo/@pais"/>
669- </xsl:call-template>
670- <xsl:call-template name="Opcional">
671- <xsl:with-param name="valor" select="$Nodo/@codigoPostal"/>
672- </xsl:call-template>
673- </xsl:template>
674+ <xsl:for-each select=".//cfdi:InformacionAduanera">
675+ <xsl:apply-templates select="."/>
676+ </xsl:for-each>
677+ <!-- Llamada al manejador de nodos de Cuenta Predial en caso de existir -->
678+ <xsl:if test="./cfdi:CuentaPredial">
679+ <xsl:apply-templates select="./cfdi:CuentaPredial"/>
680+ </xsl:if>
681+ <!-- Llamada al manejador de nodos de ComplementoConcepto en caso de existir -->
682+ <xsl:if test="./cfdi:ComplementoConcepto">
683+ <xsl:apply-templates select="./cfdi:ComplementoConcepto"/>
684+ </xsl:if>
685+ </xsl:template>
686+ <!-- Manejador de nodos tipo Información Aduanera -->
687+ <xsl:template match="cfdi:InformacionAduanera">
688+ <!-- Manejo de los atributos de la información aduanera -->
689+ <xsl:call-template name="Requerido">
690+ <xsl:with-param name="valor" select="./@numero"/>
691+ </xsl:call-template>
692+ <xsl:call-template name="Requerido">
693+ <xsl:with-param name="valor" select="./@fecha"/>
694+ </xsl:call-template>
695+ <xsl:call-template name="Opcional">
696+ <xsl:with-param name="valor" select="./@aduana"/>
697+ </xsl:call-template>
698+ </xsl:template>
699+ <!-- Manejador de nodos tipo Información CuentaPredial -->
700+ <xsl:template match="cfdi:CuentaPredial">
701+ <xsl:call-template name="Requerido">
702+ <xsl:with-param name="valor" select="./@numero"/>
703+ </xsl:call-template>
704+ </xsl:template>
705+ <!-- Manejador de nodos tipo ComplementoConcepto -->
706+ <xsl:template match="cfdi:ComplementoConcepto">
707+ <xsl:for-each select="./*">
708+ <xsl:apply-templates select="."/>
709+ </xsl:for-each>
710+ </xsl:template>
711+ <!-- Manejador de nodos tipo Domicilio fiscal -->
712+ <xsl:template match="cfdi:DomicilioFiscal">
713+ <!-- Iniciamos el tratamiento de los atributos del Domicilio Fiscal -->
714+ <xsl:call-template name="Requerido">
715+ <xsl:with-param name="valor" select="./@calle"/>
716+ </xsl:call-template>
717+ <xsl:call-template name="Opcional">
718+ <xsl:with-param name="valor" select="./@noExterior"/>
719+ </xsl:call-template>
720+ <xsl:call-template name="Opcional">
721+ <xsl:with-param name="valor" select="./@noInterior"/>
722+ </xsl:call-template>
723+ <xsl:call-template name="Opcional">
724+ <xsl:with-param name="valor" select="./@colonia"/>
725+ </xsl:call-template>
726+ <xsl:call-template name="Opcional">
727+ <xsl:with-param name="valor" select="./@localidad"/>
728+ </xsl:call-template>
729+ <xsl:call-template name="Opcional">
730+ <xsl:with-param name="valor" select="./@referencia"/>
731+ </xsl:call-template>
732+ <xsl:call-template name="Requerido">
733+ <xsl:with-param name="valor" select="./@municipio"/>
734+ </xsl:call-template>
735+ <xsl:call-template name="Requerido">
736+ <xsl:with-param name="valor" select="./@estado"/>
737+ </xsl:call-template>
738+ <xsl:call-template name="Requerido">
739+ <xsl:with-param name="valor" select="./@pais"/>
740+ </xsl:call-template>
741+ <xsl:call-template name="Requerido">
742+ <xsl:with-param name="valor" select="./@codigoPostal"/>
743+ </xsl:call-template>
744+ </xsl:template>
745+ <!-- Manejador de nodos tipo Domicilio -->
746+ <xsl:template name="Domicilio">
747+ <xsl:param name="Nodo"/>
748+ <!-- Iniciamos el tratamiento de los atributos del Domicilio -->
749+ <xsl:call-template name="Opcional">
750+ <xsl:with-param name="valor" select="$Nodo/@calle"/>
751+ </xsl:call-template>
752+ <xsl:call-template name="Opcional">
753+ <xsl:with-param name="valor" select="$Nodo/@noExterior"/>
754+ </xsl:call-template>
755+ <xsl:call-template name="Opcional">
756+ <xsl:with-param name="valor" select="$Nodo/@noInterior"/>
757+ </xsl:call-template>
758+ <xsl:call-template name="Opcional">
759+ <xsl:with-param name="valor" select="$Nodo/@colonia"/>
760+ </xsl:call-template>
761+ <xsl:call-template name="Opcional">
762+ <xsl:with-param name="valor" select="$Nodo/@localidad"/>
763+ </xsl:call-template>
764+ <xsl:call-template name="Opcional">
765+ <xsl:with-param name="valor" select="$Nodo/@referencia"/>
766+ </xsl:call-template>
767+ <xsl:call-template name="Opcional">
768+ <xsl:with-param name="valor" select="$Nodo/@municipio"/>
769+ </xsl:call-template>
770+ <xsl:call-template name="Opcional">
771+ <xsl:with-param name="valor" select="$Nodo/@estado"/>
772+ </xsl:call-template>
773+ <xsl:call-template name="Requerido">
774+ <xsl:with-param name="valor" select="$Nodo/@pais"/>
775+ </xsl:call-template>
776+ <xsl:call-template name="Opcional">
777+ <xsl:with-param name="valor" select="$Nodo/@codigoPostal"/>
778+ </xsl:call-template>
779+ </xsl:template>
780 </xsl:stylesheet>
781
782=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2_l.xslt'
783--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2_l.xslt 2013-09-02 23:58:07 +0000
784+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/cadenaoriginal_3_2_l.xslt 2014-08-12 21:43:48 +0000
785@@ -1,317 +1,332 @@
786-<?xml version="1.0" encoding="UTF-8"?>
787-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:ecc="http://www.sat.gob.mx/ecc" xmlns:psgecfd="http://www.sat.gob.mx/psgecfd" xmlns:donat="http://www.sat.gob.mx/donat" xmlns:divisas="http://www.sat.gob.mx/divisas" xmlns:detallista="http://www.sat.gob.mx/detallista" xmlns:ecb="http://www.sat.gob.mx/ecb" xmlns:implocal="http://www.sat.gob.mx/implocal" xmlns:terceros="http://www.sat.gob.mx/terceros" xmlns:iedu="http://www.sat.gob.mx/iedu" xmlns:ventavehiculos="http://www.sat.gob.mx/ventavehiculos" xmlns:pfic="http://www.sat.gob.mx/pfic" xmlns:tpe="http://www.sat.gob.mx/TuristaPasajeroExtranjero" xmlns:leyendasFisc="http://www.sat.gob.mx/leyendasFiscales" xmlns:spei="http://www.sat.gob.mx/spei">
788- <!-- Con el siguiente método se establece que la salida deberá ser en texto -->
789- <!-- Integración de complemento SPEI 14-08-2012> -->
790- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
791- <!--
792- En esta sección se define la inclusión de las plantillas de utilerías para colapsar espacios
793- -->
794- <xsl:include href="utilerias.xslt"/>
795- <!--
796- En esta sección se define la inclusión de las demás plantillas de transformación para
797- la generación de las cadenas originales de los complementos fiscales
798- -->
799- <xsl:include href="ecc.xslt"/>
800- <xsl:include href="psgecfd.xslt"/>
801- <xsl:include href="donat11.xslt"/>
802- <xsl:include href="divisas.xslt"/>
803- <xsl:include href="ecb.xslt"/>
804- <xsl:include href="detallista.xslt"/>
805- <xsl:include href="implocal.xslt"/>
806- <xsl:include href="terceros11.xslt"/>
807- <xsl:include href="iedu.xslt"/>
808- <xsl:include href="ventavehiculos.xslt"/>
809- <xsl:include href="pfic.xslt"/>
810- <xsl:include href="TuristaPasajeroExtranjero.xslt"/>
811- <xsl:include href="leyendasFisc.xslt"/>
812- <xsl:include href="spei.xslt"/>
813- <!-- Aquí iniciamos el procesamiento de la cadena original con su | inicial y el terminador || -->
814- <xsl:template match="/">|<xsl:apply-templates select="/cfdi:Comprobante"/>||</xsl:template>
815- <!-- Aquí iniciamos el procesamiento de los datos incluidos en el comprobante -->
816- <xsl:template match="cfdi:Comprobante">
817- <!-- Iniciamos el tratamiento de los atributos de comprobante -->
818- <xsl:call-template name="Requerido">
819- <xsl:with-param name="valor" select="./@version"/>
820- </xsl:call-template>
821- <xsl:call-template name="Requerido">
822- <xsl:with-param name="valor" select="./@fecha"/>
823- </xsl:call-template>
824- <xsl:call-template name="Requerido">
825- <xsl:with-param name="valor" select="./@tipoDeComprobante"/>
826- </xsl:call-template>
827- <xsl:call-template name="Requerido">
828- <xsl:with-param name="valor" select="./@formaDePago"/>
829- </xsl:call-template>
830- <xsl:call-template name="Opcional">
831- <xsl:with-param name="valor" select="./@condicionesDePago"/>
832- </xsl:call-template>
833- <xsl:call-template name="Requerido">
834- <xsl:with-param name="valor" select="./@subTotal"/>
835- </xsl:call-template>
836- <xsl:call-template name="Opcional">
837- <xsl:with-param name="valor" select="./@descuento"/>
838- </xsl:call-template>
839- <xsl:call-template name="Opcional">
840- <xsl:with-param name="valor" select="./@TipoCambio"/>
841- </xsl:call-template>
842- <xsl:call-template name="Opcional">
843- <xsl:with-param name="valor" select="./@Moneda"/>
844- </xsl:call-template>
845- <xsl:call-template name="Requerido">
846- <xsl:with-param name="valor" select="./@total"/>
847- </xsl:call-template>
848- <xsl:call-template name="Requerido">
849- <xsl:with-param name="valor" select="./@metodoDePago"/>
850- </xsl:call-template>
851- <xsl:call-template name="Requerido">
852- <xsl:with-param name="valor" select="./@LugarExpedicion"/>
853- </xsl:call-template>
854- <xsl:call-template name="Opcional">
855- <xsl:with-param name="valor" select="./@NumCtaPago"/>
856- </xsl:call-template>
857- <xsl:call-template name="Opcional">
858- <xsl:with-param name="valor" select="./@FolioFiscalOrig"/>
859- </xsl:call-template>
860- <xsl:call-template name="Opcional">
861- <xsl:with-param name="valor" select="./@SerieFolioFiscalOrig"/>
862- </xsl:call-template>
863- <xsl:call-template name="Opcional">
864- <xsl:with-param name="valor" select="./@FechaFolioFiscalOrig"/>
865- </xsl:call-template>
866- <xsl:call-template name="Opcional">
867- <xsl:with-param name="valor" select="./@MontoFolioFiscalOrig"/>
868- </xsl:call-template>
869- <!--
870- Llamadas para procesar al los sub nodos del comprobante
871- -->
872- <xsl:apply-templates select="./cfdi:Emisor"/>
873- <xsl:apply-templates select="./cfdi:Receptor"/>
874- <xsl:apply-templates select="./cfdi:Conceptos"/>
875- <xsl:apply-templates select="./cfdi:Impuestos"/>
876- <xsl:apply-templates select="./cfdi:Complemento"/>
877- </xsl:template>
878- <!-- Manejador de nodos tipo Emisor -->
879- <xsl:template match="cfdi:Emisor">
880- <!-- Iniciamos el tratamiento de los atributos del Emisor -->
881- <xsl:call-template name="Requerido">
882- <xsl:with-param name="valor" select="./@rfc"/>
883- </xsl:call-template>
884- <xsl:call-template name="Opcional">
885- <xsl:with-param name="valor" select="./@nombre"/>
886- </xsl:call-template>
887- <!--
888- Llamadas para procesar al los sub nodos del comprobante
889- -->
890- <xsl:apply-templates select="./cfdi:DomicilioFiscal"/>
891- <xsl:if test="./cfdi:ExpedidoEn">
892- <xsl:call-template name="Domicilio">
893- <xsl:with-param name="Nodo" select="./cfdi:ExpedidoEn"/>
894- </xsl:call-template>
895- </xsl:if>
896- <xsl:for-each select="./cfdi:RegimenFiscal">
897- <xsl:call-template name="Requerido">
898- <xsl:with-param name="valor" select="./@Regimen"/>
899- </xsl:call-template>
900- </xsl:for-each>
901- </xsl:template>
902- <!-- Manejador de nodos tipo Receptor -->
903- <xsl:template match="cfdi:Receptor">
904- <!-- Iniciamos el tratamiento de los atributos del Receptor -->
905- <xsl:call-template name="Requerido">
906- <xsl:with-param name="valor" select="./@rfc"/>
907- </xsl:call-template>
908- <xsl:call-template name="Opcional">
909- <xsl:with-param name="valor" select="./@nombre"/>
910- </xsl:call-template>
911- <!--
912- Llamadas para procesar al los sub nodos del Receptor
913- -->
914- <xsl:if test="./cfdi:Domicilio">
915- <xsl:call-template name="Domicilio">
916- <xsl:with-param name="Nodo" select="./cfdi:Domicilio"/>
917- </xsl:call-template>
918- </xsl:if>
919- </xsl:template>
920- <!-- Manejador de nodos tipo Conceptos -->
921- <xsl:template match="cfdi:Conceptos">
922- <!-- Llamada para procesar los distintos nodos tipo Concepto -->
923- <xsl:for-each select="./cfdi:Concepto">
924- <xsl:apply-templates select="."/>
925- </xsl:for-each>
926- </xsl:template>
927- <!-- Manejador de nodos tipo Impuestos -->
928- <xsl:template match="cfdi:Impuestos">
929- <xsl:for-each select="./cfdi:Retenciones/cfdi:Retencion">
930- <xsl:apply-templates select="."/>
931- </xsl:for-each>
932- <xsl:call-template name="Opcional">
933- <xsl:with-param name="valor" select="./@totalImpuestosRetenidos"/>
934- </xsl:call-template>
935- <xsl:for-each select="./cfdi:Traslados/cfdi:Traslado">
936- <xsl:apply-templates select="."/>
937- </xsl:for-each>
938- <xsl:call-template name="Opcional">
939- <xsl:with-param name="valor" select="./@totalImpuestosTrasladados"/>
940- </xsl:call-template>
941- </xsl:template>
942- <!-- Manejador de nodos tipo Retencion -->
943- <xsl:template match="cfdi:Retencion">
944- <xsl:call-template name="Requerido">
945- <xsl:with-param name="valor" select="./@impuesto"/>
946- </xsl:call-template>
947- <xsl:call-template name="Requerido">
948- <xsl:with-param name="valor" select="./@importe"/>
949- </xsl:call-template>
950- </xsl:template>
951- <!-- Manejador de nodos tipo Traslado -->
952- <xsl:template match="cfdi:Traslado">
953- <xsl:call-template name="Requerido">
954- <xsl:with-param name="valor" select="./@impuesto"/>
955- </xsl:call-template>
956- <xsl:call-template name="Requerido">
957- <xsl:with-param name="valor" select="./@tasa"/>
958- </xsl:call-template>
959- <xsl:call-template name="Requerido">
960- <xsl:with-param name="valor" select="./@importe"/>
961- </xsl:call-template>
962- </xsl:template>
963- <!-- Manejador de nodos tipo Complemento -->
964- <xsl:template match="cfdi:Complemento">
965- <xsl:for-each select="./*">
966- <xsl:apply-templates select="."/>
967- </xsl:for-each>
968- </xsl:template>
969- <!--
970- Manejador de nodos tipo Concepto
971- -->
972- <xsl:template match="cfdi:Concepto">
973- <!-- Iniciamos el tratamiento de los atributos del Concepto -->
974- <xsl:call-template name="Requerido">
975- <xsl:with-param name="valor" select="./@cantidad"/>
976- </xsl:call-template>
977- <xsl:call-template name="Requerido">
978- <xsl:with-param name="valor" select="./@unidad"/>
979- </xsl:call-template>
980- <xsl:call-template name="Opcional">
981- <xsl:with-param name="valor" select="./@noIdentificacion"/>
982- </xsl:call-template>
983- <xsl:call-template name="Requerido">
984- <xsl:with-param name="valor" select="./@descripcion"/>
985- </xsl:call-template>
986- <xsl:call-template name="Requerido">
987- <xsl:with-param name="valor" select="./@valorUnitario"/>
988- </xsl:call-template>
989- <xsl:call-template name="Requerido">
990- <xsl:with-param name="valor" select="./@importe"/>
991- </xsl:call-template>
992- <!--
993- Manejo de los distintos sub nodos de información aduanera de forma indistinta
994- a su grado de dependencia
995- -->
996- <xsl:for-each select=".//cfdi:InformacionAduanera">
997- <xsl:apply-templates select="."/>
998- </xsl:for-each>
999- <!-- Llamada al manejador de nodos de Cuenta Predial en caso de existir -->
1000- <xsl:if test="./cfdi:CuentaPredial">
1001- <xsl:apply-templates select="./cfdi:CuentaPredial"/>
1002- </xsl:if>
1003- <!-- Llamada al manejador de nodos de ComplementoConcepto en caso de existir -->
1004- <xsl:if test="./cfdi:ComplementoConcepto">
1005- <xsl:apply-templates select="./cfdi:ComplementoConcepto"/>
1006- </xsl:if>
1007- </xsl:template>
1008- <!-- Manejador de nodos tipo Información Aduanera -->
1009- <xsl:template match="cfdi:InformacionAduanera">
1010- <!-- Manejo de los atributos de la información aduanera -->
1011- <xsl:call-template name="Requerido">
1012- <xsl:with-param name="valor" select="./@numero"/>
1013- </xsl:call-template>
1014- <xsl:call-template name="Requerido">
1015- <xsl:with-param name="valor" select="./@fecha"/>
1016- </xsl:call-template>
1017- <xsl:call-template name="Opcional">
1018- <xsl:with-param name="valor" select="./@aduana"/>
1019- </xsl:call-template>
1020- </xsl:template>
1021- <!-- Manejador de nodos tipo Información CuentaPredial -->
1022- <xsl:template match="cfdi:CuentaPredial">
1023- <xsl:call-template name="Requerido">
1024- <xsl:with-param name="valor" select="./@numero"/>
1025- </xsl:call-template>
1026- </xsl:template>
1027- <!-- Manejador de nodos tipo ComplementoConcepto -->
1028- <xsl:template match="cfdi:ComplementoConcepto">
1029- <xsl:for-each select="./*">
1030- <xsl:apply-templates select="."/>
1031- </xsl:for-each>
1032- </xsl:template>
1033- <!-- Manejador de nodos tipo Domicilio fiscal -->
1034- <xsl:template match="cfdi:DomicilioFiscal">
1035- <!-- Iniciamos el tratamiento de los atributos del Domicilio Fiscal -->
1036- <xsl:call-template name="Requerido">
1037- <xsl:with-param name="valor" select="./@calle"/>
1038- </xsl:call-template>
1039- <xsl:call-template name="Opcional">
1040- <xsl:with-param name="valor" select="./@noExterior"/>
1041- </xsl:call-template>
1042- <xsl:call-template name="Opcional">
1043- <xsl:with-param name="valor" select="./@noInterior"/>
1044- </xsl:call-template>
1045- <xsl:call-template name="Opcional">
1046- <xsl:with-param name="valor" select="./@colonia"/>
1047- </xsl:call-template>
1048- <xsl:call-template name="Opcional">
1049- <xsl:with-param name="valor" select="./@localidad"/>
1050- </xsl:call-template>
1051- <xsl:call-template name="Opcional">
1052- <xsl:with-param name="valor" select="./@referencia"/>
1053- </xsl:call-template>
1054- <xsl:call-template name="Requerido">
1055- <xsl:with-param name="valor" select="./@municipio"/>
1056- </xsl:call-template>
1057- <xsl:call-template name="Requerido">
1058- <xsl:with-param name="valor" select="./@estado"/>
1059- </xsl:call-template>
1060- <xsl:call-template name="Requerido">
1061- <xsl:with-param name="valor" select="./@pais"/>
1062- </xsl:call-template>
1063- <xsl:call-template name="Requerido">
1064- <xsl:with-param name="valor" select="./@codigoPostal"/>
1065- </xsl:call-template>
1066- </xsl:template>
1067- <!-- Manejador de nodos tipo Domicilio -->
1068- <xsl:template name="Domicilio">
1069- <xsl:param name="Nodo"/>
1070- <!-- Iniciamos el tratamiento de los atributos del Domicilio -->
1071- <xsl:call-template name="Opcional">
1072- <xsl:with-param name="valor" select="$Nodo/@calle"/>
1073- </xsl:call-template>
1074- <xsl:call-template name="Opcional">
1075- <xsl:with-param name="valor" select="$Nodo/@noExterior"/>
1076- </xsl:call-template>
1077- <xsl:call-template name="Opcional">
1078- <xsl:with-param name="valor" select="$Nodo/@noInterior"/>
1079- </xsl:call-template>
1080- <xsl:call-template name="Opcional">
1081- <xsl:with-param name="valor" select="$Nodo/@colonia"/>
1082- </xsl:call-template>
1083- <xsl:call-template name="Opcional">
1084- <xsl:with-param name="valor" select="$Nodo/@localidad"/>
1085- </xsl:call-template>
1086- <xsl:call-template name="Opcional">
1087- <xsl:with-param name="valor" select="$Nodo/@referencia"/>
1088- </xsl:call-template>
1089- <xsl:call-template name="Opcional">
1090- <xsl:with-param name="valor" select="$Nodo/@municipio"/>
1091- </xsl:call-template>
1092- <xsl:call-template name="Opcional">
1093- <xsl:with-param name="valor" select="$Nodo/@estado"/>
1094- </xsl:call-template>
1095- <xsl:call-template name="Requerido">
1096- <xsl:with-param name="valor" select="$Nodo/@pais"/>
1097- </xsl:call-template>
1098- <xsl:call-template name="Opcional">
1099- <xsl:with-param name="valor" select="$Nodo/@codigoPostal"/>
1100- </xsl:call-template>
1101- </xsl:template>
1102-</xsl:stylesheet>
1103+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:aerolineas="http://www.sat.gob.mx/aerolineas" xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:consumodecombustibles="http://www.sat.gob.mx/consumodecombustibles" xmlns:detallista="http://www.sat.gob.mx/detallista" xmlns:divisas="http://www.sat.gob.mx/divisas" xmlns:donat="http://www.sat.gob.mx/donat" xmlns:ecb="http://www.sat.gob.mx/ecb" xmlns:ecc="http://www.sat.gob.mx/ecc" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:iedu="http://www.sat.gob.mx/iedu" xmlns:implocal="http://www.sat.gob.mx/implocal" xmlns:leyendasFisc="http://www.sat.gob.mx/leyendasFiscales" xmlns:nomina="http://www.sat.gob.mx/nomina" xmlns:notariospublicos="http://www.sat.gob.mx/notariospublicos" xmlns:pagoenespecie="http://www.sat.gob.mx/pagoenespecie" xmlns:pfic="http://www.sat.gob.mx/pfic" xmlns:psgecfd="http://www.sat.gob.mx/psgecfd" xmlns:registrofiscal="http://www.sat.gob.mx/registrofiscal" xmlns:spei="http://www.sat.gob.mx/spei" xmlns:terceros="http://www.sat.gob.mx/terceros" xmlns:tpe="http://www.sat.gob.mx/TuristaPasajeroExtranjero" xmlns:valesdedespensa="http://www.sat.gob.mx/valesdedespensa" xmlns:ventavehiculos="http://www.sat.gob.mx/ventavehiculos" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1104+
1105+ <!-- Integración de complemento Nomina 03-05-2013-->
1106+ <!-- Integración de complemento CFDI Registro Fiscal 27-11-2013-->
1107+ <!-- Integración de complemento Pago en Especie 18-12-2013-->
1108+ <!-- Integración de complemento Consumo de combustible 05-02-2014-->
1109+ <!-- Integración de complemento Vales de despensa 05-02-2014-->
1110+ <!-- Integración de complemento aerolineas 07-02-2014-->
1111+ <!-- Integración de complemento notarios publicos 25-03-2014-->
1112+
1113+ <!-- Con el siguiente método se establece que la salida deberá ser en texto -->
1114+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1115+ <!--
1116+ En esta sección se define la inclusión de las plantillas de utilerías para colapsar espacios
1117+ -->
1118+ <xsl:include href="utilerias.xslt"/>
1119+ <!--
1120+ En esta sección se define la inclusión de las demás plantillas de transformación para
1121+ la generación de las cadenas originales de los complementos fiscales
1122+ -->
1123+ <xsl:include href="ecc.xslt"/>
1124+ <xsl:include href="psgecfd.xslt"/>
1125+ <xsl:include href="donat11.xslt"/>
1126+ <xsl:include href="divisas.xslt"/>
1127+ <xsl:include href="ecb.xslt"/>
1128+ <xsl:include href="detallista.xslt"/>
1129+ <xsl:include href="implocal.xslt"/>
1130+ <xsl:include href="terceros11.xslt"/>
1131+ <xsl:include href="iedu.xslt"/>
1132+ <xsl:include href="ventavehiculos11.xslt"/>
1133+ <xsl:include href="pfic.xslt"/>
1134+ <xsl:include href="TuristaPasajeroExtranjero.xslt"/>
1135+ <xsl:include href="leyendasFisc.xslt"/>
1136+ <xsl:include href="spei.xslt"/>
1137+ <xsl:include href="nomina11.xslt"/>
1138+ <xsl:include href="cfdiregistrofiscal.xslt"/>
1139+ <xsl:include href="pagoenespecie.xslt"/>
1140+ <xsl:include href="consumodecombustibles.xslt"/>
1141+ <xsl:include href="valesdedespensa.xslt"/>
1142+ <xsl:include href="aerolineas.xslt"/>
1143+ <xsl:include href="notariospublicos.xslt"/>
1144+
1145+ <!-- Aquí iniciamos el procesamiento de la cadena original con su | inicial y el terminador || -->
1146+ <xsl:template match="/">|<xsl:apply-templates select="/cfdi:Comprobante"/>||</xsl:template>
1147+ <!-- Aquí iniciamos el procesamiento de los datos incluidos en el comprobante -->
1148+ <xsl:template match="cfdi:Comprobante">
1149+ <!-- Iniciamos el tratamiento de los atributos de comprobante -->
1150+ <xsl:call-template name="Requerido">
1151+ <xsl:with-param name="valor" select="./@version"/>
1152+ </xsl:call-template>
1153+ <xsl:call-template name="Requerido">
1154+ <xsl:with-param name="valor" select="./@fecha"/>
1155+ </xsl:call-template>
1156+ <xsl:call-template name="Requerido">
1157+ <xsl:with-param name="valor" select="./@tipoDeComprobante"/>
1158+ </xsl:call-template>
1159+ <xsl:call-template name="Requerido">
1160+ <xsl:with-param name="valor" select="./@formaDePago"/>
1161+ </xsl:call-template>
1162+ <xsl:call-template name="Opcional">
1163+ <xsl:with-param name="valor" select="./@condicionesDePago"/>
1164+ </xsl:call-template>
1165+ <xsl:call-template name="Requerido">
1166+ <xsl:with-param name="valor" select="./@subTotal"/>
1167+ </xsl:call-template>
1168+ <xsl:call-template name="Opcional">
1169+ <xsl:with-param name="valor" select="./@descuento"/>
1170+ </xsl:call-template>
1171+ <xsl:call-template name="Opcional">
1172+ <xsl:with-param name="valor" select="./@TipoCambio"/>
1173+ </xsl:call-template>
1174+ <xsl:call-template name="Opcional">
1175+ <xsl:with-param name="valor" select="./@Moneda"/>
1176+ </xsl:call-template>
1177+ <xsl:call-template name="Requerido">
1178+ <xsl:with-param name="valor" select="./@total"/>
1179+ </xsl:call-template>
1180+ <xsl:call-template name="Requerido">
1181+ <xsl:with-param name="valor" select="./@metodoDePago"/>
1182+ </xsl:call-template>
1183+ <xsl:call-template name="Requerido">
1184+ <xsl:with-param name="valor" select="./@LugarExpedicion"/>
1185+ </xsl:call-template>
1186+ <xsl:call-template name="Opcional">
1187+ <xsl:with-param name="valor" select="./@NumCtaPago"/>
1188+ </xsl:call-template>
1189+ <xsl:call-template name="Opcional">
1190+ <xsl:with-param name="valor" select="./@FolioFiscalOrig"/>
1191+ </xsl:call-template>
1192+ <xsl:call-template name="Opcional">
1193+ <xsl:with-param name="valor" select="./@SerieFolioFiscalOrig"/>
1194+ </xsl:call-template>
1195+ <xsl:call-template name="Opcional">
1196+ <xsl:with-param name="valor" select="./@FechaFolioFiscalOrig"/>
1197+ </xsl:call-template>
1198+ <xsl:call-template name="Opcional">
1199+ <xsl:with-param name="valor" select="./@MontoFolioFiscalOrig"/>
1200+ </xsl:call-template>
1201+ <!--
1202+ Llamadas para procesar al los sub nodos del comprobante
1203+ -->
1204+ <xsl:apply-templates select="./cfdi:Emisor"/>
1205+ <xsl:apply-templates select="./cfdi:Receptor"/>
1206+ <xsl:apply-templates select="./cfdi:Conceptos"/>
1207+ <xsl:apply-templates select="./cfdi:Impuestos"/>
1208+ <xsl:apply-templates select="./cfdi:Complemento"/>
1209+ </xsl:template>
1210+ <!-- Manejador de nodos tipo Emisor -->
1211+ <xsl:template match="cfdi:Emisor">
1212+ <!-- Iniciamos el tratamiento de los atributos del Emisor -->
1213+ <xsl:call-template name="Requerido">
1214+ <xsl:with-param name="valor" select="./@rfc"/>
1215+ </xsl:call-template>
1216+ <xsl:call-template name="Opcional">
1217+ <xsl:with-param name="valor" select="./@nombre"/>
1218+ </xsl:call-template>
1219+ <!--
1220+ Llamadas para procesar al los sub nodos del comprobante
1221+ -->
1222+ <xsl:apply-templates select="./cfdi:DomicilioFiscal"/>
1223+ <xsl:if test="./cfdi:ExpedidoEn">
1224+ <xsl:call-template name="Domicilio">
1225+ <xsl:with-param name="Nodo" select="./cfdi:ExpedidoEn"/>
1226+ </xsl:call-template>
1227+ </xsl:if>
1228+ <xsl:for-each select="./cfdi:RegimenFiscal">
1229+ <xsl:call-template name="Requerido">
1230+ <xsl:with-param name="valor" select="./@Regimen"/>
1231+ </xsl:call-template>
1232+ </xsl:for-each>
1233+ </xsl:template>
1234+ <!-- Manejador de nodos tipo Receptor -->
1235+ <xsl:template match="cfdi:Receptor">
1236+ <!-- Iniciamos el tratamiento de los atributos del Receptor -->
1237+ <xsl:call-template name="Requerido">
1238+ <xsl:with-param name="valor" select="./@rfc"/>
1239+ </xsl:call-template>
1240+ <xsl:call-template name="Opcional">
1241+ <xsl:with-param name="valor" select="./@nombre"/>
1242+ </xsl:call-template>
1243+ <!--
1244+ Llamadas para procesar al los sub nodos del Receptor
1245+ -->
1246+ <xsl:if test="./cfdi:Domicilio">
1247+ <xsl:call-template name="Domicilio">
1248+ <xsl:with-param name="Nodo" select="./cfdi:Domicilio"/>
1249+ </xsl:call-template>
1250+ </xsl:if>
1251+ </xsl:template>
1252+ <!-- Manejador de nodos tipo Conceptos -->
1253+ <xsl:template match="cfdi:Conceptos">
1254+ <!-- Llamada para procesar los distintos nodos tipo Concepto -->
1255+ <xsl:for-each select="./cfdi:Concepto">
1256+ <xsl:apply-templates select="."/>
1257+ </xsl:for-each>
1258+ </xsl:template>
1259+ <!-- Manejador de nodos tipo Impuestos -->
1260+ <xsl:template match="cfdi:Impuestos">
1261+ <xsl:for-each select="./cfdi:Retenciones/cfdi:Retencion">
1262+ <xsl:apply-templates select="."/>
1263+ </xsl:for-each>
1264+ <xsl:call-template name="Opcional">
1265+ <xsl:with-param name="valor" select="./@totalImpuestosRetenidos"/>
1266+ </xsl:call-template>
1267+ <xsl:for-each select="./cfdi:Traslados/cfdi:Traslado">
1268+ <xsl:apply-templates select="."/>
1269+ </xsl:for-each>
1270+ <xsl:call-template name="Opcional">
1271+ <xsl:with-param name="valor" select="./@totalImpuestosTrasladados"/>
1272+ </xsl:call-template>
1273+ </xsl:template>
1274+ <!-- Manejador de nodos tipo Retencion -->
1275+ <xsl:template match="cfdi:Retencion">
1276+ <xsl:call-template name="Requerido">
1277+ <xsl:with-param name="valor" select="./@impuesto"/>
1278+ </xsl:call-template>
1279+ <xsl:call-template name="Requerido">
1280+ <xsl:with-param name="valor" select="./@importe"/>
1281+ </xsl:call-template>
1282+ </xsl:template>
1283+ <!-- Manejador de nodos tipo Traslado -->
1284+ <xsl:template match="cfdi:Traslado">
1285+ <xsl:call-template name="Requerido">
1286+ <xsl:with-param name="valor" select="./@impuesto"/>
1287+ </xsl:call-template>
1288+ <xsl:call-template name="Requerido">
1289+ <xsl:with-param name="valor" select="./@tasa"/>
1290+ </xsl:call-template>
1291+ <xsl:call-template name="Requerido">
1292+ <xsl:with-param name="valor" select="./@importe"/>
1293+ </xsl:call-template>
1294+ </xsl:template>
1295+ <!-- Manejador de nodos tipo Complemento -->
1296+ <xsl:template match="cfdi:Complemento">
1297+ <xsl:for-each select="./*">
1298+ <xsl:apply-templates select="."/>
1299+ </xsl:for-each>
1300+ </xsl:template>
1301+ <!--
1302+ Manejador de nodos tipo Concepto
1303+ -->
1304+ <xsl:template match="cfdi:Concepto">
1305+ <!-- Iniciamos el tratamiento de los atributos del Concepto -->
1306+ <xsl:call-template name="Requerido">
1307+ <xsl:with-param name="valor" select="./@cantidad"/>
1308+ </xsl:call-template>
1309+ <xsl:call-template name="Requerido">
1310+ <xsl:with-param name="valor" select="./@unidad"/>
1311+ </xsl:call-template>
1312+ <xsl:call-template name="Opcional">
1313+ <xsl:with-param name="valor" select="./@noIdentificacion"/>
1314+ </xsl:call-template>
1315+ <xsl:call-template name="Requerido">
1316+ <xsl:with-param name="valor" select="./@descripcion"/>
1317+ </xsl:call-template>
1318+ <xsl:call-template name="Requerido">
1319+ <xsl:with-param name="valor" select="./@valorUnitario"/>
1320+ </xsl:call-template>
1321+ <xsl:call-template name="Requerido">
1322+ <xsl:with-param name="valor" select="./@importe"/>
1323+ </xsl:call-template>
1324+ <!--
1325+ Manejo de los distintos sub nodos de información aduanera de forma indistinta
1326+ a su grado de dependencia
1327+ -->
1328+ <xsl:for-each select=".//cfdi:InformacionAduanera">
1329+ <xsl:apply-templates select="."/>
1330+ </xsl:for-each>
1331+ <!-- Llamada al manejador de nodos de Cuenta Predial en caso de existir -->
1332+ <xsl:if test="./cfdi:CuentaPredial">
1333+ <xsl:apply-templates select="./cfdi:CuentaPredial"/>
1334+ </xsl:if>
1335+ <!-- Llamada al manejador de nodos de ComplementoConcepto en caso de existir -->
1336+ <xsl:if test="./cfdi:ComplementoConcepto">
1337+ <xsl:apply-templates select="./cfdi:ComplementoConcepto"/>
1338+ </xsl:if>
1339+ </xsl:template>
1340+ <!-- Manejador de nodos tipo Información Aduanera -->
1341+ <xsl:template match="cfdi:InformacionAduanera">
1342+ <!-- Manejo de los atributos de la información aduanera -->
1343+ <xsl:call-template name="Requerido">
1344+ <xsl:with-param name="valor" select="./@numero"/>
1345+ </xsl:call-template>
1346+ <xsl:call-template name="Requerido">
1347+ <xsl:with-param name="valor" select="./@fecha"/>
1348+ </xsl:call-template>
1349+ <xsl:call-template name="Opcional">
1350+ <xsl:with-param name="valor" select="./@aduana"/>
1351+ </xsl:call-template>
1352+ </xsl:template>
1353+ <!-- Manejador de nodos tipo Información CuentaPredial -->
1354+ <xsl:template match="cfdi:CuentaPredial">
1355+ <xsl:call-template name="Requerido">
1356+ <xsl:with-param name="valor" select="./@numero"/>
1357+ </xsl:call-template>
1358+ </xsl:template>
1359+ <!-- Manejador de nodos tipo ComplementoConcepto -->
1360+ <xsl:template match="cfdi:ComplementoConcepto">
1361+ <xsl:for-each select="./*">
1362+ <xsl:apply-templates select="."/>
1363+ </xsl:for-each>
1364+ </xsl:template>
1365+ <!-- Manejador de nodos tipo Domicilio fiscal -->
1366+ <xsl:template match="cfdi:DomicilioFiscal">
1367+ <!-- Iniciamos el tratamiento de los atributos del Domicilio Fiscal -->
1368+ <xsl:call-template name="Requerido">
1369+ <xsl:with-param name="valor" select="./@calle"/>
1370+ </xsl:call-template>
1371+ <xsl:call-template name="Opcional">
1372+ <xsl:with-param name="valor" select="./@noExterior"/>
1373+ </xsl:call-template>
1374+ <xsl:call-template name="Opcional">
1375+ <xsl:with-param name="valor" select="./@noInterior"/>
1376+ </xsl:call-template>
1377+ <xsl:call-template name="Opcional">
1378+ <xsl:with-param name="valor" select="./@colonia"/>
1379+ </xsl:call-template>
1380+ <xsl:call-template name="Opcional">
1381+ <xsl:with-param name="valor" select="./@localidad"/>
1382+ </xsl:call-template>
1383+ <xsl:call-template name="Opcional">
1384+ <xsl:with-param name="valor" select="./@referencia"/>
1385+ </xsl:call-template>
1386+ <xsl:call-template name="Requerido">
1387+ <xsl:with-param name="valor" select="./@municipio"/>
1388+ </xsl:call-template>
1389+ <xsl:call-template name="Requerido">
1390+ <xsl:with-param name="valor" select="./@estado"/>
1391+ </xsl:call-template>
1392+ <xsl:call-template name="Requerido">
1393+ <xsl:with-param name="valor" select="./@pais"/>
1394+ </xsl:call-template>
1395+ <xsl:call-template name="Requerido">
1396+ <xsl:with-param name="valor" select="./@codigoPostal"/>
1397+ </xsl:call-template>
1398+ </xsl:template>
1399+ <!-- Manejador de nodos tipo Domicilio -->
1400+ <xsl:template name="Domicilio">
1401+ <xsl:param name="Nodo"/>
1402+ <!-- Iniciamos el tratamiento de los atributos del Domicilio -->
1403+ <xsl:call-template name="Opcional">
1404+ <xsl:with-param name="valor" select="$Nodo/@calle"/>
1405+ </xsl:call-template>
1406+ <xsl:call-template name="Opcional">
1407+ <xsl:with-param name="valor" select="$Nodo/@noExterior"/>
1408+ </xsl:call-template>
1409+ <xsl:call-template name="Opcional">
1410+ <xsl:with-param name="valor" select="$Nodo/@noInterior"/>
1411+ </xsl:call-template>
1412+ <xsl:call-template name="Opcional">
1413+ <xsl:with-param name="valor" select="$Nodo/@colonia"/>
1414+ </xsl:call-template>
1415+ <xsl:call-template name="Opcional">
1416+ <xsl:with-param name="valor" select="$Nodo/@localidad"/>
1417+ </xsl:call-template>
1418+ <xsl:call-template name="Opcional">
1419+ <xsl:with-param name="valor" select="$Nodo/@referencia"/>
1420+ </xsl:call-template>
1421+ <xsl:call-template name="Opcional">
1422+ <xsl:with-param name="valor" select="$Nodo/@municipio"/>
1423+ </xsl:call-template>
1424+ <xsl:call-template name="Opcional">
1425+ <xsl:with-param name="valor" select="$Nodo/@estado"/>
1426+ </xsl:call-template>
1427+ <xsl:call-template name="Requerido">
1428+ <xsl:with-param name="valor" select="$Nodo/@pais"/>
1429+ </xsl:call-template>
1430+ <xsl:call-template name="Opcional">
1431+ <xsl:with-param name="valor" select="$Nodo/@codigoPostal"/>
1432+ </xsl:call-template>
1433+ </xsl:template>
1434+</xsl:stylesheet>
1435\ No newline at end of file
1436
1437=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/cfdiregistrofiscal.xslt'
1438--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/cfdiregistrofiscal.xslt 1970-01-01 00:00:00 +0000
1439+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/cfdiregistrofiscal.xslt 2014-08-12 21:43:48 +0000
1440@@ -0,0 +1,18 @@
1441+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:registrofiscal="http://www.sat.gob.mx/registrofiscal" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1442+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1443+
1444+ <!-- Manejador de nodos tipo nomina -->
1445+ <xsl:template match="registrofiscal:CFDIRegistroFiscal">
1446+
1447+ <!--Iniciamos el tratamiento de los atributos de RegistroFiscal -->
1448+ <xsl:call-template name="Requerido">
1449+ <xsl:with-param name="valor" select="./@Version"/>
1450+ </xsl:call-template>
1451+
1452+ <xsl:call-template name="Requerido">
1453+ <xsl:with-param name="valor" select="./@Folio"/>
1454+ </xsl:call-template>
1455+
1456+ </xsl:template>
1457+
1458+</xsl:stylesheet>
1459\ No newline at end of file
1460
1461=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/consumodecombustibles.xslt'
1462--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/consumodecombustibles.xslt 1970-01-01 00:00:00 +0000
1463+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/consumodecombustibles.xslt 2014-08-12 21:43:48 +0000
1464@@ -0,0 +1,107 @@
1465+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:consumodecombustibles="http://www.sat.gob.mx/consumodecombustibles" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1466+
1467+ <!-- Manejador de nodos tipo consumodecombustibles:ConsumoDeCombustibles -->
1468+ <xsl:template match="consumodecombustibles:ConsumoDeCombustibles">
1469+
1470+ <!-- Iniciamos el tratamiento de los atributos de consumodecombustibles:ConsumoDeCombustibles -->
1471+
1472+ <xsl:call-template name="Requerido">
1473+ <xsl:with-param name="valor" select="./@version"/>
1474+ </xsl:call-template>
1475+ <xsl:call-template name="Requerido">
1476+ <xsl:with-param name="valor" select="./@tipoOperacion"/>
1477+ </xsl:call-template>
1478+ <xsl:call-template name="Requerido">
1479+ <xsl:with-param name="valor" select="./@numeroDeCuenta"/>
1480+ </xsl:call-template>
1481+ <xsl:call-template name="Opcional">
1482+ <xsl:with-param name="valor" select="./@subTotal"/>
1483+ </xsl:call-template>
1484+ <xsl:call-template name="Requerido">
1485+ <xsl:with-param name="valor" select="./@total"/>
1486+ </xsl:call-template>
1487+
1488+ <!-- Iniciamos el manejo de los nodos dependientes -->
1489+ <xsl:apply-templates select="./consumodecombustibles:Conceptos"/>
1490+
1491+ </xsl:template>
1492+
1493+ <!-- Manejador de nodos tipo consumodecombustibles:Conceptos -->
1494+ <xsl:template match="consumodecombustibles:Conceptos">
1495+
1496+ <!-- Iniciamos el manejo de los nodos dependientes -->
1497+
1498+ <xsl:for-each select="./consumodecombustibles:ConceptoConsumoDeCombustibles">
1499+ <xsl:apply-templates select="."/>
1500+ </xsl:for-each>
1501+
1502+ </xsl:template>
1503+
1504+ <!-- Manejador de nodos tipo consumodecombustibles:ConceptoConsumoDeCombustibles -->
1505+ <xsl:template match="consumodecombustibles:ConceptoConsumoDeCombustibles">
1506+
1507+ <!-- Iniciamos el tratamiento de los atributos de consumodecombustibles:ConceptoConsumoDeCombustibles -->
1508+
1509+ <xsl:call-template name="Requerido">
1510+ <xsl:with-param name="valor" select="./@identificador"/>
1511+ </xsl:call-template>
1512+ <xsl:call-template name="Requerido">
1513+ <xsl:with-param name="valor" select="./@fecha"/>
1514+ </xsl:call-template>
1515+ <xsl:call-template name="Requerido">
1516+ <xsl:with-param name="valor" select="./@rfc"/>
1517+ </xsl:call-template>
1518+ <xsl:call-template name="Requerido">
1519+ <xsl:with-param name="valor" select="./@claveEstacion"/>
1520+ </xsl:call-template>
1521+ <xsl:call-template name="Requerido">
1522+ <xsl:with-param name="valor" select="./@cantidad"/>
1523+ </xsl:call-template>
1524+ <xsl:call-template name="Requerido">
1525+ <xsl:with-param name="valor" select="./@nombreCombustible"/>
1526+ </xsl:call-template>
1527+ <xsl:call-template name="Requerido">
1528+ <xsl:with-param name="valor" select="./@folioOperacion"/>
1529+ </xsl:call-template>
1530+ <xsl:call-template name="Requerido">
1531+ <xsl:with-param name="valor" select="./@valorUnitario"/>
1532+ </xsl:call-template>
1533+ <xsl:call-template name="Requerido">
1534+ <xsl:with-param name="valor" select="./@importe"/>
1535+ </xsl:call-template>
1536+
1537+ <xsl:for-each select="./consumodecombustibles:Determinados">
1538+ <xsl:apply-templates select="."/>
1539+ </xsl:for-each>
1540+
1541+ </xsl:template>
1542+
1543+ <!-- Manejador de nodos tipo consumodecombustibles:Determinados -->
1544+ <xsl:template match="consumodecombustibles:Determinados">
1545+
1546+ <!-- Iniciamos el manejo de los nodos dependientes -->
1547+
1548+ <xsl:for-each select="./consumodecombustibles:Determinado">
1549+ <xsl:apply-templates select="."/>
1550+ </xsl:for-each>
1551+
1552+ </xsl:template>
1553+
1554+ <!-- Manejador de nodos tipo consumodecombustibles:Determinado -->
1555+ <xsl:template match="consumodecombustibles:Determinado">
1556+
1557+ <!-- Iniciamos el tratamiento de los atributos de consumodecombustibles:Determinado -->
1558+
1559+ <xsl:call-template name="Requerido">
1560+ <xsl:with-param name="valor" select="./@impuesto"/>
1561+ </xsl:call-template>
1562+ <xsl:call-template name="Requerido">
1563+ <xsl:with-param name="valor" select="./@tasa"/>
1564+ </xsl:call-template>
1565+ <xsl:call-template name="Requerido">
1566+ <xsl:with-param name="valor" select="./@importe"/>
1567+ </xsl:call-template>
1568+
1569+ </xsl:template>
1570+
1571+</xsl:stylesheet>
1572\ No newline at end of file
1573
1574=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/detallista.xslt'
1575--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/detallista.xslt 2013-09-02 23:58:07 +0000
1576+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/detallista.xslt 2014-08-12 21:43:48 +0000
1577@@ -1,42 +1,41 @@
1578-<?xml version="1.0" encoding="UTF-8"?>
1579-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:detallista="http://www.sat.gob.mx/detallista">
1580- <!-- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/> -->
1581- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
1582-<!-- Manejador de nodos tipo detallista -->
1583- <xsl:template match="detallista:detallista">
1584- <!-- Iniciamos el tratamiento de los atributos del sector detallista -->
1585- <xsl:call-template name="Requerido">
1586- <xsl:with-param name="valor" select="./@documentStructureVersion"/>
1587- </xsl:call-template>
1588- <xsl:for-each select="detallista:orderIdentification/detallista:referenceIdentification">
1589- <xsl:call-template name="Requerido">
1590- <xsl:with-param name="valor" select="."/>
1591- </xsl:call-template>
1592- </xsl:for-each>
1593- <xsl:call-template name="Opcional">
1594- <xsl:with-param name="valor" select="detallista:orderIdentification/detallista:ReferenceDate"/>
1595- </xsl:call-template>
1596- <xsl:call-template name="Requerido">
1597- <xsl:with-param name="valor" select="detallista:buyer/detallista:gln"/>
1598- </xsl:call-template>
1599- <xsl:call-template name="Requerido">
1600- <xsl:with-param name="valor" select="detallista:seller/detallista:gln"/>
1601- </xsl:call-template>
1602- <xsl:call-template name="Requerido">
1603- <xsl:with-param name="valor" select="detallista:seller/detallista:alternatePartyIdentification"/>
1604- </xsl:call-template>
1605- <xsl:call-template name="Requerido">
1606- <xsl:with-param name="valor" select="detallista:totalAmount/detallista:Amount"/>
1607- </xsl:call-template>
1608- <xsl:for-each select="detallista:TotalAllowanceCharge/detallista:specialServicesType">
1609- <xsl:call-template name="Opcional">
1610- <xsl:with-param name="valor" select="."/>
1611- </xsl:call-template>
1612- </xsl:for-each>
1613- <xsl:for-each select="detallista:TotalAllowanceCharge/detallista:Amount">
1614- <xsl:call-template name="Opcional">
1615- <xsl:with-param name="valor" select="."/>
1616- </xsl:call-template>
1617- </xsl:for-each>
1618- </xsl:template>
1619-</xsl:stylesheet>
1620+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:detallista="http://www.sat.gob.mx/detallista" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1621+ <!-- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/> -->
1622+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1623+<!-- Manejador de nodos tipo detallista -->
1624+ <xsl:template match="detallista:detallista">
1625+ <!-- Iniciamos el tratamiento de los atributos del sector detallista -->
1626+ <xsl:call-template name="Requerido">
1627+ <xsl:with-param name="valor" select="./@documentStructureVersion"/>
1628+ </xsl:call-template>
1629+ <xsl:for-each select="detallista:orderIdentification/detallista:referenceIdentification">
1630+ <xsl:call-template name="Requerido">
1631+ <xsl:with-param name="valor" select="."/>
1632+ </xsl:call-template>
1633+ </xsl:for-each>
1634+ <xsl:call-template name="Opcional">
1635+ <xsl:with-param name="valor" select="detallista:orderIdentification/detallista:ReferenceDate"/>
1636+ </xsl:call-template>
1637+ <xsl:call-template name="Requerido">
1638+ <xsl:with-param name="valor" select="detallista:buyer/detallista:gln"/>
1639+ </xsl:call-template>
1640+ <xsl:call-template name="Requerido">
1641+ <xsl:with-param name="valor" select="detallista:seller/detallista:gln"/>
1642+ </xsl:call-template>
1643+ <xsl:call-template name="Requerido">
1644+ <xsl:with-param name="valor" select="detallista:seller/detallista:alternatePartyIdentification"/>
1645+ </xsl:call-template>
1646+ <xsl:call-template name="Requerido">
1647+ <xsl:with-param name="valor" select="detallista:totalAmount/detallista:Amount"/>
1648+ </xsl:call-template>
1649+ <xsl:for-each select="detallista:TotalAllowanceCharge/detallista:specialServicesType">
1650+ <xsl:call-template name="Opcional">
1651+ <xsl:with-param name="valor" select="."/>
1652+ </xsl:call-template>
1653+ </xsl:for-each>
1654+ <xsl:for-each select="detallista:TotalAllowanceCharge/detallista:Amount">
1655+ <xsl:call-template name="Opcional">
1656+ <xsl:with-param name="valor" select="."/>
1657+ </xsl:call-template>
1658+ </xsl:for-each>
1659+ </xsl:template>
1660+</xsl:stylesheet>
1661\ No newline at end of file
1662
1663=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/divisas.xslt'
1664--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/divisas.xslt 2013-09-02 23:58:07 +0000
1665+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/divisas.xslt 2014-08-12 21:43:48 +0000
1666@@ -1,13 +1,12 @@
1667-<?xml version="1.0" encoding="UTF-8"?>
1668-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:divisas="http://www.sat.gob.mx/divisas">
1669- <!-- Manejador de nodos tipo divisas:Divisas -->
1670- <xsl:template match="divisas:Divisas">
1671- <!-- Iniciamos el tratamiento de los atributos de divisas:Divisas -->
1672- <xsl:call-template name="Requerido">
1673- <xsl:with-param name="valor" select="./@version"/>
1674- </xsl:call-template>
1675- <xsl:call-template name="Requerido">
1676- <xsl:with-param name="valor" select="./@tipoOperacion"/>
1677- </xsl:call-template>
1678- </xsl:template>
1679-</xsl:stylesheet>
1680+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:divisas="http://www.sat.gob.mx/divisas" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1681+ <!-- Manejador de nodos tipo divisas:Divisas -->
1682+ <xsl:template match="divisas:Divisas">
1683+ <!-- Iniciamos el tratamiento de los atributos de divisas:Divisas -->
1684+ <xsl:call-template name="Requerido">
1685+ <xsl:with-param name="valor" select="./@version"/>
1686+ </xsl:call-template>
1687+ <xsl:call-template name="Requerido">
1688+ <xsl:with-param name="valor" select="./@tipoOperacion"/>
1689+ </xsl:call-template>
1690+ </xsl:template>
1691+</xsl:stylesheet>
1692\ No newline at end of file
1693
1694=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/donat11.xslt'
1695--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/donat11.xslt 2013-09-02 23:58:07 +0000
1696+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/donat11.xslt 2014-08-12 21:43:48 +0000
1697@@ -1,13 +1,12 @@
1698-<?xml version="1.0" encoding="UTF-8"?>
1699-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:donat="http://www.sat.gob.mx/donat">
1700-<xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
1701- <!-- Manejador de nodos tipo donat:Donatarias -->
1702- <xsl:template match="donat:Donatarias">
1703- <!-- Iniciamos el tratamiento de los atributos de donat:Donatarias -->
1704- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@version"/></xsl:call-template>
1705- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@noAutorizacion"/></xsl:call-template>
1706- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@fechaAutorizacion"/></xsl:call-template>
1707- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@leyenda"/></xsl:call-template>
1708- </xsl:template>
1709-
1710-</xsl:stylesheet>
1711+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:donat="http://www.sat.gob.mx/donat" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1712+<xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1713+ <!-- Manejador de nodos tipo donat:Donatarias -->
1714+ <xsl:template match="donat:Donatarias">
1715+ <!-- Iniciamos el tratamiento de los atributos de donat:Donatarias -->
1716+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@version"/></xsl:call-template>
1717+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@noAutorizacion"/></xsl:call-template>
1718+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@fechaAutorizacion"/></xsl:call-template>
1719+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@leyenda"/></xsl:call-template>
1720+ </xsl:template>
1721+
1722+</xsl:stylesheet>
1723\ No newline at end of file
1724
1725=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecb.xslt'
1726--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecb.xslt 2013-09-02 23:58:07 +0000
1727+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecb.xslt 2014-08-12 21:43:48 +0000
1728@@ -1,28 +1,27 @@
1729-<?xml version="1.0" encoding="UTF-8"?>
1730-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:ecb="http://www.sat.gob.mx/ecb">
1731- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
1732- <!-- Manejador de nodos tipo ECB -->
1733- <xsl:template match="ecb:EstadoDeCuentaBancario">
1734- <!-- Iniciamos el tratamiento de los atributos de EstadoDeCuentaBancario -->
1735- <xsl:call-template name="Requerido">
1736- <xsl:with-param name="valor" select="./@version"/>
1737- </xsl:call-template>
1738- <xsl:call-template name="Requerido">
1739- <xsl:with-param name="valor" select="./@numeroCuenta"/>
1740- </xsl:call-template>
1741- <xsl:call-template name="Requerido">
1742- <xsl:with-param name="valor" select="./@nombreCliente"/>
1743- </xsl:call-template>
1744- <xsl:for-each select="ecb:Movimientos/ecb:MovimientoECBFiscal">
1745- <xsl:call-template name="Requerido">
1746- <xsl:with-param name="valor" select="./@fecha"/>
1747- </xsl:call-template>
1748- <xsl:call-template name="Requerido">
1749- <xsl:with-param name="valor" select="./@RFCenajenante"/>
1750- </xsl:call-template>
1751- <xsl:call-template name="Requerido">
1752- <xsl:with-param name="valor" select="./@Importe"/>
1753- </xsl:call-template>
1754- </xsl:for-each>
1755- </xsl:template>
1756-</xsl:stylesheet>
1757+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:ecb="http://www.sat.gob.mx/ecb" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1758+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1759+ <!-- Manejador de nodos tipo ECB -->
1760+ <xsl:template match="ecb:EstadoDeCuentaBancario">
1761+ <!-- Iniciamos el tratamiento de los atributos de EstadoDeCuentaBancario -->
1762+ <xsl:call-template name="Requerido">
1763+ <xsl:with-param name="valor" select="./@version"/>
1764+ </xsl:call-template>
1765+ <xsl:call-template name="Requerido">
1766+ <xsl:with-param name="valor" select="./@numeroCuenta"/>
1767+ </xsl:call-template>
1768+ <xsl:call-template name="Requerido">
1769+ <xsl:with-param name="valor" select="./@nombreCliente"/>
1770+ </xsl:call-template>
1771+ <xsl:for-each select="ecb:Movimientos/ecb:MovimientoECBFiscal">
1772+ <xsl:call-template name="Requerido">
1773+ <xsl:with-param name="valor" select="./@fecha"/>
1774+ </xsl:call-template>
1775+ <xsl:call-template name="Requerido">
1776+ <xsl:with-param name="valor" select="./@RFCenajenante"/>
1777+ </xsl:call-template>
1778+ <xsl:call-template name="Requerido">
1779+ <xsl:with-param name="valor" select="./@Importe"/>
1780+ </xsl:call-template>
1781+ </xsl:for-each>
1782+ </xsl:template>
1783+</xsl:stylesheet>
1784\ No newline at end of file
1785
1786=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecc.xslt'
1787--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecc.xslt 2013-09-02 23:58:07 +0000
1788+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/ecc.xslt 2014-08-12 21:43:48 +0000
1789@@ -1,50 +1,49 @@
1790-<?xml version="1.0" encoding="UTF-8"?>
1791-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:ecc="http://www.sat.gob.mx/ecc">
1792-
1793- <!-- Manejador de nodos tipo ecc:EstadoDeCuentaCombustible -->
1794- <xsl:template match="ecc:EstadoDeCuentaCombustible">
1795- <!-- Iniciamos el tratamiento de los atributos de ecc:EstadoDeCuentaCombustible -->
1796- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@tipoOperacion"/></xsl:call-template>
1797- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@numeroDeCuenta"/></xsl:call-template>
1798- <xsl:call-template name="Opcional"><xsl:with-param name="valor" select="./@subTotal"/></xsl:call-template>
1799- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@total"/></xsl:call-template>
1800- <!-- Iniciamos el manejo de los nodos dependientes -->
1801- <xsl:apply-templates select="./ecc:Conceptos"/>
1802- </xsl:template>
1803-
1804- <!-- Manejador de nodos tipo ecc:Conceptos -->
1805- <xsl:template match="ecc:Conceptos">
1806- <!-- Iniciamos el manejo de los nodos dependientes -->
1807- <xsl:for-each select="./ecc:ConceptoEstadoDeCuentaCombustible"><xsl:apply-templates select="."/></xsl:for-each>
1808- </xsl:template>
1809-
1810- <!-- Manejador de nodos tipo ecc:Traslados -->
1811- <xsl:template match="ecc:Traslados">
1812- <!-- Iniciamos el manejo de los nodos dependientes -->
1813- <xsl:for-each select="./ecc:Traslado"><xsl:apply-templates select="."/></xsl:for-each>
1814- </xsl:template>
1815-
1816- <!-- Manejador de nodos tipo ecc:ConceptoEstadoDeCuentaCombustible -->
1817- <xsl:template match="ecc:ConceptoEstadoDeCuentaCombustible">
1818- <!-- Iniciamos el tratamiento de los atributos de ecc:ConceptoEstadoDeCuentaCombustible -->
1819- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@identificador"/></xsl:call-template>
1820- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@fecha"/></xsl:call-template>
1821- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@rfc"/></xsl:call-template>
1822- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@claveEstacion"/></xsl:call-template>
1823- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@cantidad"/></xsl:call-template>
1824- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@nombreCombustible"/></xsl:call-template>
1825- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@folioOperacion"/></xsl:call-template>
1826- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@valorUnitario"/></xsl:call-template>
1827- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@importe"/></xsl:call-template>
1828- <xsl:for-each select="./ecc:Traslados"><xsl:apply-templates select="."/></xsl:for-each>
1829- </xsl:template>
1830-
1831- <!-- Manejador de nodos tipo ecc:Traslado -->
1832- <xsl:template match="ecc:Traslado">
1833- <!-- Iniciamos el tratamiento de los atributos de ecc:Traslado -->
1834- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@impuesto"/></xsl:call-template>
1835- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@tasa"/></xsl:call-template>
1836- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@importe"/></xsl:call-template>
1837- </xsl:template>
1838-
1839-</xsl:stylesheet>
1840+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:ecc="http://www.sat.gob.mx/ecc" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1841+
1842+ <!-- Manejador de nodos tipo ecc:EstadoDeCuentaCombustible -->
1843+ <xsl:template match="ecc:EstadoDeCuentaCombustible">
1844+ <!-- Iniciamos el tratamiento de los atributos de ecc:EstadoDeCuentaCombustible -->
1845+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@tipoOperacion"/></xsl:call-template>
1846+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@numeroDeCuenta"/></xsl:call-template>
1847+ <xsl:call-template name="Opcional"><xsl:with-param name="valor" select="./@subTotal"/></xsl:call-template>
1848+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@total"/></xsl:call-template>
1849+ <!-- Iniciamos el manejo de los nodos dependientes -->
1850+ <xsl:apply-templates select="./ecc:Conceptos"/>
1851+ </xsl:template>
1852+
1853+ <!-- Manejador de nodos tipo ecc:Conceptos -->
1854+ <xsl:template match="ecc:Conceptos">
1855+ <!-- Iniciamos el manejo de los nodos dependientes -->
1856+ <xsl:for-each select="./ecc:ConceptoEstadoDeCuentaCombustible"><xsl:apply-templates select="."/></xsl:for-each>
1857+ </xsl:template>
1858+
1859+ <!-- Manejador de nodos tipo ecc:Traslados -->
1860+ <xsl:template match="ecc:Traslados">
1861+ <!-- Iniciamos el manejo de los nodos dependientes -->
1862+ <xsl:for-each select="./ecc:Traslado"><xsl:apply-templates select="."/></xsl:for-each>
1863+ </xsl:template>
1864+
1865+ <!-- Manejador de nodos tipo ecc:ConceptoEstadoDeCuentaCombustible -->
1866+ <xsl:template match="ecc:ConceptoEstadoDeCuentaCombustible">
1867+ <!-- Iniciamos el tratamiento de los atributos de ecc:ConceptoEstadoDeCuentaCombustible -->
1868+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@identificador"/></xsl:call-template>
1869+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@fecha"/></xsl:call-template>
1870+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@rfc"/></xsl:call-template>
1871+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@claveEstacion"/></xsl:call-template>
1872+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@cantidad"/></xsl:call-template>
1873+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@nombreCombustible"/></xsl:call-template>
1874+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@folioOperacion"/></xsl:call-template>
1875+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@valorUnitario"/></xsl:call-template>
1876+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@importe"/></xsl:call-template>
1877+ <xsl:for-each select="./ecc:Traslados"><xsl:apply-templates select="."/></xsl:for-each>
1878+ </xsl:template>
1879+
1880+ <!-- Manejador de nodos tipo ecc:Traslado -->
1881+ <xsl:template match="ecc:Traslado">
1882+ <!-- Iniciamos el tratamiento de los atributos de ecc:Traslado -->
1883+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@impuesto"/></xsl:call-template>
1884+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@tasa"/></xsl:call-template>
1885+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@importe"/></xsl:call-template>
1886+ </xsl:template>
1887+
1888+</xsl:stylesheet>
1889\ No newline at end of file
1890
1891=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/iedu.xslt'
1892--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/iedu.xslt 2013-09-02 23:58:07 +0000
1893+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/iedu.xslt 2014-08-12 21:43:48 +0000
1894@@ -1,26 +1,25 @@
1895-<?xml version="1.0" encoding="UTF-8"?>
1896-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:iedu="http://www.sat.gob.mx/iedu">
1897- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
1898- <!-- Manejador de nodos tipo iedu -->
1899- <xsl:template match="iedu:instEducativas">
1900- <!--Iniciamos el tratamiento de los atributos de instEducativas -->
1901- <xsl:call-template name="Requerido">
1902- <xsl:with-param name="valor" select="./@version"/>
1903- </xsl:call-template>
1904- <xsl:call-template name="Requerido">
1905- <xsl:with-param name="valor" select="./@nombreAlumno"/>
1906- </xsl:call-template>
1907- <xsl:call-template name="Requerido">
1908- <xsl:with-param name="valor" select="./@CURP"/>
1909- </xsl:call-template>
1910- <xsl:call-template name="Requerido">
1911- <xsl:with-param name="valor" select="./@nivelEducativo"/>
1912- </xsl:call-template>
1913- <xsl:call-template name="Requerido">
1914- <xsl:with-param name="valor" select="./@autRVOE"/>
1915- </xsl:call-template>
1916- <xsl:call-template name="Opcional">
1917- <xsl:with-param name="valor" select="./@rfcPago"/>
1918- </xsl:call-template>
1919- </xsl:template>
1920-</xsl:stylesheet>
1921+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:iedu="http://www.sat.gob.mx/iedu" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1922+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1923+ <!-- Manejador de nodos tipo iedu -->
1924+ <xsl:template match="iedu:instEducativas">
1925+ <!--Iniciamos el tratamiento de los atributos de instEducativas -->
1926+ <xsl:call-template name="Requerido">
1927+ <xsl:with-param name="valor" select="./@version"/>
1928+ </xsl:call-template>
1929+ <xsl:call-template name="Requerido">
1930+ <xsl:with-param name="valor" select="./@nombreAlumno"/>
1931+ </xsl:call-template>
1932+ <xsl:call-template name="Requerido">
1933+ <xsl:with-param name="valor" select="./@CURP"/>
1934+ </xsl:call-template>
1935+ <xsl:call-template name="Requerido">
1936+ <xsl:with-param name="valor" select="./@nivelEducativo"/>
1937+ </xsl:call-template>
1938+ <xsl:call-template name="Requerido">
1939+ <xsl:with-param name="valor" select="./@autRVOE"/>
1940+ </xsl:call-template>
1941+ <xsl:call-template name="Opcional">
1942+ <xsl:with-param name="valor" select="./@rfcPago"/>
1943+ </xsl:call-template>
1944+ </xsl:template>
1945+</xsl:stylesheet>
1946\ No newline at end of file
1947
1948=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/implocal.xslt'
1949--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/implocal.xslt 2013-09-02 23:58:07 +0000
1950+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/implocal.xslt 2014-08-12 21:43:48 +0000
1951@@ -1,39 +1,38 @@
1952-<?xml version="1.0" encoding="UTF-8"?>
1953-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:implocal="http://www.sat.gob.mx/implocal">
1954- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
1955- <!-- Manejador de nodos tipo implocal -->
1956- <xsl:template match="implocal:ImpuestosLocales">
1957- <!--Iniciamos el tratamiento de los atributos de ImpuestosLocales -->
1958- <xsl:call-template name="Requerido">
1959- <xsl:with-param name="valor" select="./@version"/>
1960- </xsl:call-template>
1961- <xsl:call-template name="Requerido">
1962- <xsl:with-param name="valor" select="./@TotaldeRetenciones"/>
1963- </xsl:call-template>
1964- <xsl:call-template name="Requerido">
1965- <xsl:with-param name="valor" select="./@TotaldeTraslados"/>
1966- </xsl:call-template>
1967- <xsl:for-each select="implocal:RetencionesLocales">
1968- <xsl:call-template name="Requerido">
1969- <xsl:with-param name="valor" select="./@ImpLocRetenido"/>
1970- </xsl:call-template>
1971- <xsl:call-template name="Requerido">
1972- <xsl:with-param name="valor" select="./@TasadeRetencion"/>
1973- </xsl:call-template>
1974- <xsl:call-template name="Requerido">
1975- <xsl:with-param name="valor" select="./@Importe"/>
1976- </xsl:call-template>
1977- </xsl:for-each>
1978- <xsl:for-each select="implocal:TrasladosLocales">
1979- <xsl:call-template name="Requerido">
1980- <xsl:with-param name="valor" select="./@ImpLocTrasladado"/>
1981- </xsl:call-template>
1982- <xsl:call-template name="Requerido">
1983- <xsl:with-param name="valor" select="./@TasadeTraslado"/>
1984- </xsl:call-template>
1985- <xsl:call-template name="Requerido">
1986- <xsl:with-param name="valor" select="./@Importe"/>
1987- </xsl:call-template>
1988- </xsl:for-each>
1989- </xsl:template>
1990-</xsl:stylesheet>
1991+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:implocal="http://www.sat.gob.mx/implocal" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
1992+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
1993+ <!-- Manejador de nodos tipo implocal -->
1994+ <xsl:template match="implocal:ImpuestosLocales">
1995+ <!--Iniciamos el tratamiento de los atributos de ImpuestosLocales -->
1996+ <xsl:call-template name="Requerido">
1997+ <xsl:with-param name="valor" select="./@version"/>
1998+ </xsl:call-template>
1999+ <xsl:call-template name="Requerido">
2000+ <xsl:with-param name="valor" select="./@TotaldeRetenciones"/>
2001+ </xsl:call-template>
2002+ <xsl:call-template name="Requerido">
2003+ <xsl:with-param name="valor" select="./@TotaldeTraslados"/>
2004+ </xsl:call-template>
2005+ <xsl:for-each select="implocal:RetencionesLocales">
2006+ <xsl:call-template name="Requerido">
2007+ <xsl:with-param name="valor" select="./@ImpLocRetenido"/>
2008+ </xsl:call-template>
2009+ <xsl:call-template name="Requerido">
2010+ <xsl:with-param name="valor" select="./@TasadeRetencion"/>
2011+ </xsl:call-template>
2012+ <xsl:call-template name="Requerido">
2013+ <xsl:with-param name="valor" select="./@Importe"/>
2014+ </xsl:call-template>
2015+ </xsl:for-each>
2016+ <xsl:for-each select="implocal:TrasladosLocales">
2017+ <xsl:call-template name="Requerido">
2018+ <xsl:with-param name="valor" select="./@ImpLocTrasladado"/>
2019+ </xsl:call-template>
2020+ <xsl:call-template name="Requerido">
2021+ <xsl:with-param name="valor" select="./@TasadeTraslado"/>
2022+ </xsl:call-template>
2023+ <xsl:call-template name="Requerido">
2024+ <xsl:with-param name="valor" select="./@Importe"/>
2025+ </xsl:call-template>
2026+ </xsl:for-each>
2027+ </xsl:template>
2028+</xsl:stylesheet>
2029\ No newline at end of file
2030
2031=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/leyendasFisc.xslt'
2032--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/leyendasFisc.xslt 2013-09-02 23:58:07 +0000
2033+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/leyendasFisc.xslt 2014-08-12 21:43:48 +0000
2034@@ -1,28 +1,27 @@
2035-<?xml version="1.0" encoding="UTF-8"?>
2036-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:leyendasFisc="http://www.sat.gob.mx/leyendasFiscales">
2037- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
2038- <!-- Manejador de nodos tipo leyendasFiscales -->
2039- <xsl:template match="leyendasFisc:LeyendasFiscales">
2040- <!--Iniciamos el tratamiento de los atributos del complemento LeyendasFiscales -->
2041- <xsl:call-template name="Requerido">
2042- <xsl:with-param name="valor" select="./@version"/>
2043- </xsl:call-template>
2044- <!-- Manejo de los atributos de las leyendas Fiscales-->
2045- <xsl:for-each select="./leyendasFisc:Leyenda">
2046- <xsl:apply-templates select="."/>
2047- </xsl:for-each>
2048- </xsl:template>
2049- <!-- Manejador de nodos tipo Información de las leyendas -->
2050- <xsl:template match="leyendasFisc:Leyenda">
2051- <!-- Manejo de los atributos de la leyenda -->
2052- <xsl:call-template name="Opcional">
2053- <xsl:with-param name="valor" select="./@disposicionFiscal"/>
2054- </xsl:call-template>
2055- <xsl:call-template name="Opcional">
2056- <xsl:with-param name="valor" select="./@norma"/>
2057- </xsl:call-template>
2058- <xsl:call-template name="Requerido">
2059- <xsl:with-param name="valor" select="./@textoLeyenda"/>
2060- </xsl:call-template>
2061- </xsl:template>
2062-</xsl:stylesheet>
2063+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:leyendasFisc="http://www.sat.gob.mx/leyendasFiscales" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2064+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
2065+ <!-- Manejador de nodos tipo leyendasFiscales -->
2066+ <xsl:template match="leyendasFisc:LeyendasFiscales">
2067+ <!--Iniciamos el tratamiento de los atributos del complemento LeyendasFiscales -->
2068+ <xsl:call-template name="Requerido">
2069+ <xsl:with-param name="valor" select="./@version"/>
2070+ </xsl:call-template>
2071+ <!-- Manejo de los atributos de las leyendas Fiscales-->
2072+ <xsl:for-each select="./leyendasFisc:Leyenda">
2073+ <xsl:apply-templates select="."/>
2074+ </xsl:for-each>
2075+ </xsl:template>
2076+ <!-- Manejador de nodos tipo Información de las leyendas -->
2077+ <xsl:template match="leyendasFisc:Leyenda">
2078+ <!-- Manejo de los atributos de la leyenda -->
2079+ <xsl:call-template name="Opcional">
2080+ <xsl:with-param name="valor" select="./@disposicionFiscal"/>
2081+ </xsl:call-template>
2082+ <xsl:call-template name="Opcional">
2083+ <xsl:with-param name="valor" select="./@norma"/>
2084+ </xsl:call-template>
2085+ <xsl:call-template name="Requerido">
2086+ <xsl:with-param name="valor" select="./@textoLeyenda"/>
2087+ </xsl:call-template>
2088+ </xsl:template>
2089+</xsl:stylesheet>
2090\ No newline at end of file
2091
2092=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/nomina11.xslt'
2093--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/nomina11.xslt 1970-01-01 00:00:00 +0000
2094+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/nomina11.xslt 2014-08-12 21:43:48 +0000
2095@@ -0,0 +1,326 @@
2096+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:nomina="http://www.sat.gob.mx/nomina" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2097+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
2098+
2099+ <!-- Manejador de nodos tipo nomina -->
2100+ <xsl:template match="nomina:Nomina">
2101+
2102+ <!--Iniciamos el tratamiento de los atributos de Nómina -->
2103+
2104+ <xsl:choose>
2105+
2106+ <xsl:when test="./@Version='1.0'">
2107+
2108+ <xsl:call-template name="Requerido">
2109+ <xsl:with-param name="valor" select="./@Version"/>
2110+ </xsl:call-template>
2111+
2112+ <xsl:call-template name="Requerido">
2113+ <xsl:with-param name="valor" select="./@RegistroPatronal"/>
2114+ </xsl:call-template>
2115+
2116+ <xsl:call-template name="Requerido">
2117+ <xsl:with-param name="valor" select="./@NumEmpleado"/>
2118+ </xsl:call-template>
2119+
2120+ <xsl:call-template name="Requerido">
2121+ <xsl:with-param name="valor" select="./@CURP"/>
2122+ </xsl:call-template>
2123+
2124+ <xsl:call-template name="Requerido">
2125+ <xsl:with-param name="valor" select="./@TipoRegimen"/>
2126+ </xsl:call-template>
2127+
2128+ <xsl:call-template name="Opcional">
2129+ <xsl:with-param name="valor" select="./@NumSeguridadSocial"/>
2130+ </xsl:call-template>
2131+
2132+ <xsl:call-template name="Opcional">
2133+ <xsl:with-param name="valor" select="./@CLABE"/>
2134+ </xsl:call-template>
2135+
2136+ <xsl:call-template name="Opcional">
2137+ <xsl:with-param name="valor" select="./@Banco"/>
2138+ </xsl:call-template>
2139+
2140+ <!--Iniciamos el tratamiento de los atributos de Ingresos -->
2141+
2142+ <xsl:call-template name="Requerido">
2143+ <xsl:with-param name="valor" select="./nomina:Ingresos/@TotalGravado"/>
2144+ </xsl:call-template>
2145+
2146+ <xsl:call-template name="Requerido">
2147+ <xsl:with-param name="valor" select="./nomina:Ingresos/@TotalExento"/>
2148+ </xsl:call-template>
2149+
2150+ <!--Iniciamos el tratamiento de los atributos de descuentos -->
2151+
2152+ <xsl:call-template name="Requerido">
2153+ <xsl:with-param name="valor" select="./nomina:Descuentos/@Total"/>
2154+ </xsl:call-template>
2155+
2156+ </xsl:when>
2157+
2158+ <xsl:when test="./@Version='1.1'">
2159+
2160+ <xsl:call-template name="Requerido">
2161+ <xsl:with-param name="valor" select="./@Version"/>
2162+ </xsl:call-template>
2163+
2164+ <xsl:call-template name="Opcional">
2165+ <xsl:with-param name="valor" select="./@RegistroPatronal"/>
2166+ </xsl:call-template>
2167+
2168+ <xsl:call-template name="Requerido">
2169+ <xsl:with-param name="valor" select="./@NumEmpleado"/>
2170+ </xsl:call-template>
2171+
2172+ <xsl:call-template name="Requerido">
2173+ <xsl:with-param name="valor" select="./@CURP"/>
2174+ </xsl:call-template>
2175+
2176+ <xsl:call-template name="Requerido">
2177+ <xsl:with-param name="valor" select="./@TipoRegimen"/>
2178+ </xsl:call-template>
2179+
2180+ <xsl:call-template name="Opcional">
2181+ <xsl:with-param name="valor" select="./@NumSeguridadSocial"/>
2182+ </xsl:call-template>
2183+
2184+ <xsl:call-template name="Requerido">
2185+ <xsl:with-param name="valor" select="./@FechaPago"/>
2186+ </xsl:call-template>
2187+
2188+ <xsl:call-template name="Requerido">
2189+ <xsl:with-param name="valor" select="./@FechaInicialPago"/>
2190+ </xsl:call-template>
2191+
2192+ <xsl:call-template name="Requerido">
2193+ <xsl:with-param name="valor" select="./@FechaFinalPago"/>
2194+ </xsl:call-template>
2195+
2196+ <xsl:call-template name="Requerido">
2197+ <xsl:with-param name="valor" select="./@NumDiasPagados"/>
2198+ </xsl:call-template>
2199+
2200+ <xsl:call-template name="Opcional">
2201+ <xsl:with-param name="valor" select="./@Departamento"/>
2202+ </xsl:call-template>
2203+
2204+ <xsl:call-template name="Opcional">
2205+ <xsl:with-param name="valor" select="./@CLABE"/>
2206+ </xsl:call-template>
2207+
2208+ <xsl:call-template name="Opcional">
2209+ <xsl:with-param name="valor" select="./@Banco"/>
2210+ </xsl:call-template>
2211+
2212+ <xsl:call-template name="Opcional">
2213+ <xsl:with-param name="valor" select="./@FechaInicioRelLaboral"/>
2214+ </xsl:call-template>
2215+
2216+ <xsl:call-template name="Opcional">
2217+ <xsl:with-param name="valor" select="./@Antiguedad"/>
2218+ </xsl:call-template>
2219+
2220+ <xsl:call-template name="Opcional">
2221+ <xsl:with-param name="valor" select="./@Puesto"/>
2222+ </xsl:call-template>
2223+
2224+ <xsl:call-template name="Opcional">
2225+ <xsl:with-param name="valor" select="./@TipoContrato"/>
2226+ </xsl:call-template>
2227+
2228+ <xsl:call-template name="Opcional">
2229+ <xsl:with-param name="valor" select="./@TipoJornada"/>
2230+ </xsl:call-template>
2231+
2232+ <xsl:call-template name="Requerido">
2233+ <xsl:with-param name="valor" select="./@PeriodicidadPago"/>
2234+ </xsl:call-template>
2235+
2236+ <xsl:call-template name="Opcional">
2237+ <xsl:with-param name="valor" select="./@SalarioBaseCotApor"/>
2238+ </xsl:call-template>
2239+
2240+ <xsl:call-template name="Opcional">
2241+ <xsl:with-param name="valor" select="./@RiesgoPuesto"/>
2242+ </xsl:call-template>
2243+
2244+ <xsl:call-template name="Opcional">
2245+ <xsl:with-param name="valor" select="./@SalarioDiarioIntegrado"/>
2246+ </xsl:call-template>
2247+
2248+ <!--Iniciamos el tratamiento de los elementos de Nómina -->
2249+
2250+ <xsl:if test="./nomina:Percepciones">
2251+ <xsl:apply-templates select="./nomina:Percepciones"/>
2252+ </xsl:if>
2253+
2254+ <xsl:if test="./nomina:Deducciones">
2255+ <xsl:apply-templates select="./nomina:Deducciones"/>
2256+ </xsl:if>
2257+
2258+ <xsl:for-each select="./nomina:Incapacidades">
2259+ <xsl:apply-templates select="."/>
2260+ </xsl:for-each>
2261+
2262+ <xsl:for-each select="./nomina:HorasExtras">
2263+ <xsl:apply-templates select="."/>
2264+ </xsl:for-each>
2265+
2266+ </xsl:when>
2267+
2268+ </xsl:choose>
2269+
2270+ </xsl:template>
2271+
2272+ <xsl:template match="nomina:Percepciones">
2273+
2274+ <!--Iniciamos el tratamiento de los atributos de Percepciones -->
2275+
2276+ <xsl:call-template name="Requerido">
2277+ <xsl:with-param name="valor" select="./@TotalGravado"/>
2278+ </xsl:call-template>
2279+
2280+ <xsl:call-template name="Requerido">
2281+ <xsl:with-param name="valor" select="./@TotalExento"/>
2282+ </xsl:call-template>
2283+
2284+ <!--Iniciamos el tratamiento del los elementos de Percepciones-->
2285+
2286+ <xsl:for-each select="./nomina:Percepcion">
2287+ <xsl:apply-templates select="."/>
2288+ </xsl:for-each>
2289+
2290+ </xsl:template>
2291+
2292+ <xsl:template match="nomina:Percepcion">
2293+
2294+ <!--Iniciamos el tratamiento de los atributos de Percepcion -->
2295+
2296+ <xsl:call-template name="Requerido">
2297+ <xsl:with-param name="valor" select="./@TipoPercepcion"/>
2298+ </xsl:call-template>
2299+
2300+ <xsl:call-template name="Requerido">
2301+ <xsl:with-param name="valor" select="./@Clave"/>
2302+ </xsl:call-template>
2303+
2304+ <xsl:call-template name="Requerido">
2305+ <xsl:with-param name="valor" select="./@Concepto"/>
2306+ </xsl:call-template>
2307+
2308+ <xsl:call-template name="Requerido">
2309+ <xsl:with-param name="valor" select="./@ImporteGravado"/>
2310+ </xsl:call-template>
2311+
2312+ <xsl:call-template name="Requerido">
2313+ <xsl:with-param name="valor" select="./@ImporteExento"/>
2314+ </xsl:call-template>
2315+
2316+ </xsl:template>
2317+
2318+ <xsl:template match="nomina:Deducciones">
2319+
2320+ <!--Iniciamos el tratamiento de los atributos de Deducciones -->
2321+
2322+ <xsl:call-template name="Requerido">
2323+ <xsl:with-param name="valor" select="./@TotalGravado"/>
2324+ </xsl:call-template>
2325+
2326+ <xsl:call-template name="Requerido">
2327+ <xsl:with-param name="valor" select="./@TotalExento"/>
2328+ </xsl:call-template>
2329+
2330+ <!--Iniciamos el tratamiento del los elementos de Deducciones-->
2331+
2332+ <xsl:for-each select="./nomina:Deduccion">
2333+ <xsl:apply-templates select="."/>
2334+ </xsl:for-each>
2335+
2336+ </xsl:template>
2337+
2338+ <xsl:template match="nomina:Deduccion">
2339+
2340+ <!--Iniciamos el tratamiento de los atributos de Deduccion -->
2341+
2342+ <xsl:call-template name="Requerido">
2343+ <xsl:with-param name="valor" select="./@TipoDeduccion"/>
2344+ </xsl:call-template>
2345+
2346+ <xsl:call-template name="Requerido">
2347+ <xsl:with-param name="valor" select="./@Clave"/>
2348+ </xsl:call-template>
2349+
2350+ <xsl:call-template name="Requerido">
2351+ <xsl:with-param name="valor" select="./@Concepto"/>
2352+ </xsl:call-template>
2353+
2354+ <xsl:call-template name="Requerido">
2355+ <xsl:with-param name="valor" select="./@ImporteGravado"/>
2356+ </xsl:call-template>
2357+
2358+ <xsl:call-template name="Requerido">
2359+ <xsl:with-param name="valor" select="./@ImporteExento"/>
2360+ </xsl:call-template>
2361+
2362+ </xsl:template>
2363+
2364+ <xsl:template match="nomina:Incapacidades">
2365+
2366+ <!--Iniciamos el tratamiento del los elementos de Incapacidades-->
2367+
2368+ <xsl:for-each select="./nomina:Incapacidad">
2369+ <xsl:apply-templates select="."/>
2370+ </xsl:for-each>
2371+
2372+ </xsl:template>
2373+
2374+ <xsl:template match="nomina:Incapacidad">
2375+
2376+ <!--Iniciamos el tratamiento de los atributos de Incapacidad -->
2377+
2378+ <xsl:call-template name="Requerido">
2379+ <xsl:with-param name="valor" select="./@DiasIncapacidad"/>
2380+ </xsl:call-template>
2381+
2382+ <xsl:call-template name="Requerido">
2383+ <xsl:with-param name="valor" select="./@TipoIncapacidad"/>
2384+ </xsl:call-template>
2385+
2386+ <xsl:call-template name="Requerido">
2387+ <xsl:with-param name="valor" select="./@Descuento"/>
2388+ </xsl:call-template>
2389+ </xsl:template>
2390+
2391+ <xsl:template match="nomina:HorasExtras">
2392+
2393+ <!--Iniciamos el tratamiento del los elementos de HorasExtras-->
2394+
2395+ <xsl:for-each select="./nomina:HorasExtra">
2396+ <xsl:apply-templates select="."/>
2397+ </xsl:for-each>
2398+
2399+ </xsl:template>
2400+
2401+ <xsl:template match="nomina:HorasExtra">
2402+
2403+ <!--Iniciamos el tratamiento de los atributos de HorasExtra -->
2404+ <xsl:call-template name="Requerido">
2405+ <xsl:with-param name="valor" select="./@Dias"/>
2406+ </xsl:call-template>
2407+
2408+ <xsl:call-template name="Requerido">
2409+ <xsl:with-param name="valor" select="./@TipoHoras"/>
2410+ </xsl:call-template>
2411+
2412+ <xsl:call-template name="Requerido">
2413+ <xsl:with-param name="valor" select="./@HorasExtra"/>
2414+ </xsl:call-template>
2415+
2416+ <xsl:call-template name="Requerido">
2417+ <xsl:with-param name="valor" select="./@ImportePagado"/>
2418+ </xsl:call-template>
2419+ </xsl:template>
2420+
2421+</xsl:stylesheet>
2422\ No newline at end of file
2423
2424=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/notariospublicos.xslt'
2425--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/notariospublicos.xslt 1970-01-01 00:00:00 +0000
2426+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/notariospublicos.xslt 2014-08-12 21:43:48 +0000
2427@@ -0,0 +1,300 @@
2428+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:notariospublicos="http://www.sat.gob.mx/notariospublicos" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2429+
2430+ <!-- Manejador de nodos tipo notariospublicos:NotariosPublicos -->
2431+ <xsl:template match="notariospublicos:NotariosPublicos">
2432+
2433+ <!-- Iniciamos el tratamiento de los atributos -->
2434+ <xsl:call-template name="Requerido">
2435+ <xsl:with-param name="valor" select="./@Version"/>
2436+ </xsl:call-template>
2437+
2438+ <!-- Iniciamos el manejo de los nodos dependientes -->
2439+ <xsl:apply-templates select="./notariospublicos:DescInmuebles"/>
2440+ <xsl:apply-templates select="./notariospublicos:DatosOperacion"/>
2441+ <xsl:apply-templates select="./notariospublicos:DatosNotario"/>
2442+ <xsl:apply-templates select="./notariospublicos:DatosEnajenante"/>
2443+ <xsl:apply-templates select="./notariospublicos:DatosAdquiriente"/>
2444+
2445+ </xsl:template>
2446+
2447+ <!-- Manejador de nodos tipo notariospublicos:DescInmuebles -->
2448+ <xsl:template match="notariospublicos:DescInmuebles">
2449+
2450+ <!-- Iniciamos el manejo de los nodos dependientes -->
2451+ <xsl:for-each select="./notariospublicos:DescInmueble">
2452+ <xsl:apply-templates select="."/>
2453+ </xsl:for-each>
2454+
2455+ </xsl:template>
2456+
2457+ <!-- Manejador de nodos tipo notariospublicos:DescInmueble -->
2458+ <xsl:template match="notariospublicos:DescInmueble">
2459+
2460+ <!-- Iniciamos el tratamiento de los atributos -->
2461+ <xsl:call-template name="Requerido">
2462+ <xsl:with-param name="valor" select="./@TipoInmueble"/>
2463+ </xsl:call-template>
2464+
2465+ <xsl:call-template name="Requerido">
2466+ <xsl:with-param name="valor" select="./@Calle"/>
2467+ </xsl:call-template>
2468+
2469+ <xsl:call-template name="Opcional">
2470+ <xsl:with-param name="valor" select="./@NoExterior"/>
2471+ </xsl:call-template>
2472+
2473+ <xsl:call-template name="Opcional">
2474+ <xsl:with-param name="valor" select="./@NoInterior"/>
2475+ </xsl:call-template>
2476+
2477+ <xsl:call-template name="Opcional">
2478+ <xsl:with-param name="valor" select="./@Colonia"/>
2479+ </xsl:call-template>
2480+
2481+ <xsl:call-template name="Opcional">
2482+ <xsl:with-param name="valor" select="./@Localidad"/>
2483+ </xsl:call-template>
2484+
2485+ <xsl:call-template name="Opcional">
2486+ <xsl:with-param name="valor" select="./@Referencia"/>
2487+ </xsl:call-template>
2488+
2489+ <xsl:call-template name="Requerido">
2490+ <xsl:with-param name="valor" select="./@Municipio"/>
2491+ </xsl:call-template>
2492+
2493+ <xsl:call-template name="Requerido">
2494+ <xsl:with-param name="valor" select="./@Estado"/>
2495+ </xsl:call-template>
2496+
2497+ <xsl:call-template name="Requerido">
2498+ <xsl:with-param name="valor" select="./@Pais"/>
2499+ </xsl:call-template>
2500+
2501+ <xsl:call-template name="Requerido">
2502+ <xsl:with-param name="valor" select="./@CodigoPostal"/>
2503+ </xsl:call-template>
2504+
2505+ </xsl:template>
2506+
2507+ <!-- Manejador de nodos tipo notariospublicos:DatosOperacion -->
2508+ <xsl:template match="notariospublicos:DatosOperacion">
2509+
2510+ <!-- Iniciamos el tratamiento de los atributos -->
2511+ <xsl:call-template name="Requerido">
2512+ <xsl:with-param name="valor" select="./@NumInstrumentoNotarial"/>
2513+ </xsl:call-template>
2514+
2515+ <xsl:call-template name="Requerido">
2516+ <xsl:with-param name="valor" select="./@FechaInstNotarial"/>
2517+ </xsl:call-template>
2518+
2519+ <xsl:call-template name="Requerido">
2520+ <xsl:with-param name="valor" select="./@MontoOperacion"/>
2521+ </xsl:call-template>
2522+
2523+ <xsl:call-template name="Requerido">
2524+ <xsl:with-param name="valor" select="./@Subtotal"/>
2525+ </xsl:call-template>
2526+
2527+ <xsl:call-template name="Requerido">
2528+ <xsl:with-param name="valor" select="./@IVA"/>
2529+ </xsl:call-template>
2530+
2531+ </xsl:template>
2532+
2533+ <!-- Manejador de nodos tipo notariospublicos:DatosNotario -->
2534+ <xsl:template match="notariospublicos:DatosNotario">
2535+
2536+ <!-- Iniciamos el tratamiento de los atributos -->
2537+ <xsl:call-template name="Requerido">
2538+ <xsl:with-param name="valor" select="./@CURP"/>
2539+ </xsl:call-template>
2540+
2541+ <xsl:call-template name="Requerido">
2542+ <xsl:with-param name="valor" select="./@NumNotaria"/>
2543+ </xsl:call-template>
2544+
2545+ <xsl:call-template name="Requerido">
2546+ <xsl:with-param name="valor" select="./@EntidadFederativa"/>
2547+ </xsl:call-template>
2548+
2549+ <xsl:call-template name="Opcional">
2550+ <xsl:with-param name="valor" select="./@Adscripcion"/>
2551+ </xsl:call-template>
2552+
2553+
2554+ </xsl:template>
2555+
2556+ <!-- Manejador de nodos tipo notariospublicos:DatosEnajenante -->
2557+ <xsl:template match="notariospublicos:DatosEnajenante">
2558+
2559+ <!-- Iniciamos el tratamiento de los atributos -->
2560+ <xsl:call-template name="Requerido">
2561+ <xsl:with-param name="valor" select="./@CoproSocConyugalE"/>
2562+ </xsl:call-template>
2563+
2564+ <!-- Iniciamos el manejo de los nodos dependientes -->
2565+ <xsl:if test="./notariospublicos:DatosUnEnajenante">
2566+ <xsl:apply-templates select="./notariospublicos:DatosUnEnajenante"/>
2567+ </xsl:if>
2568+
2569+ <xsl:if test="./notariospublicos:DatosEnajenantesCopSC">
2570+ <xsl:apply-templates select="./notariospublicos:DatosEnajenantesCopSC"/>
2571+ </xsl:if>
2572+
2573+ </xsl:template>
2574+
2575+ <!-- Manejador de nodos tipo notariospublicos:DatosUnEnajenante -->
2576+ <xsl:template match="notariospublicos:DatosUnEnajenante">
2577+
2578+ <!-- Iniciamos el tratamiento de los atributos -->
2579+ <xsl:call-template name="Requerido">
2580+ <xsl:with-param name="valor" select="./@Nombre"/>
2581+ </xsl:call-template>
2582+
2583+ <xsl:call-template name="Requerido">
2584+ <xsl:with-param name="valor" select="./@ApellidoPaterno"/>
2585+ </xsl:call-template>
2586+
2587+ <xsl:call-template name="Opcional">
2588+ <xsl:with-param name="valor" select="./@ApellidoMaterno"/>
2589+ </xsl:call-template>
2590+
2591+ <xsl:call-template name="Requerido">
2592+ <xsl:with-param name="valor" select="./@RFC"/>
2593+ </xsl:call-template>
2594+
2595+ <xsl:call-template name="Requerido">
2596+ <xsl:with-param name="valor" select="./@CURP"/>
2597+ </xsl:call-template>
2598+
2599+ </xsl:template>
2600+
2601+ <!-- Manejador de nodos tipo notariospublicos:DatosEnajenantesCopSC -->
2602+ <xsl:template match="notariospublicos:DatosEnajenantesCopSC">
2603+
2604+ <!-- Iniciamos el manejo de los nodos dependientes -->
2605+ <xsl:for-each select="./notariospublicos:DatosEnajenanteCopSC">
2606+ <xsl:apply-templates select="."/>
2607+ </xsl:for-each>
2608+
2609+ </xsl:template>
2610+
2611+ <!-- Manejador de nodos tipo notariospublicos:DatosEnajenanteCopSC -->
2612+ <xsl:template match="notariospublicos:DatosEnajenanteCopSC">
2613+
2614+ <!-- Iniciamos el tratamiento de los atributos -->
2615+ <xsl:call-template name="Requerido">
2616+ <xsl:with-param name="valor" select="./@Nombre"/>
2617+ </xsl:call-template>
2618+
2619+ <xsl:call-template name="Opcional">
2620+ <xsl:with-param name="valor" select="./@ApellidoPaterno"/>
2621+ </xsl:call-template>
2622+
2623+ <xsl:call-template name="Opcional">
2624+ <xsl:with-param name="valor" select="./@ApellidoMaterno"/>
2625+ </xsl:call-template>
2626+
2627+ <xsl:call-template name="Requerido">
2628+ <xsl:with-param name="valor" select="./@RFC"/>
2629+ </xsl:call-template>
2630+
2631+ <xsl:call-template name="Opcional">
2632+ <xsl:with-param name="valor" select="./@CURP"/>
2633+ </xsl:call-template>
2634+
2635+ <xsl:call-template name="Requerido">
2636+ <xsl:with-param name="valor" select="./@Porcentaje"/>
2637+ </xsl:call-template>
2638+
2639+ </xsl:template>
2640+
2641+ <!-- Manejador de nodos tipo notariospublicos:DatosAdquiriente -->
2642+ <xsl:template match="notariospublicos:DatosAdquiriente">
2643+
2644+ <!-- Iniciamos el tratamiento de los atributos -->
2645+ <xsl:call-template name="Requerido">
2646+ <xsl:with-param name="valor" select="./@CoproSocConyugalE"/>
2647+ </xsl:call-template>
2648+
2649+ <!-- Iniciamos el manejo de los nodos dependientes -->
2650+ <xsl:if test="./notariospublicos:DatosUnAdquiriente">
2651+ <xsl:apply-templates select="./notariospublicos:DatosUnAdquiriente"/>
2652+ </xsl:if>
2653+
2654+ <xsl:if test="./notariospublicos:DatosAdquirientesCopSC">
2655+ <xsl:apply-templates select="./notariospublicos:DatosAdquirientesCopSC"/>
2656+ </xsl:if>
2657+
2658+ </xsl:template>
2659+
2660+ <!-- Manejador de nodos tipo notariospublicos:DatosUnAdquiriente -->
2661+ <xsl:template match="notariospublicos:DatosUnAdquiriente">
2662+
2663+ <!-- Iniciamos el tratamiento de los atributos -->
2664+ <xsl:call-template name="Requerido">
2665+ <xsl:with-param name="valor" select="./@Nombre"/>
2666+ </xsl:call-template>
2667+
2668+ <xsl:call-template name="Opcional">
2669+ <xsl:with-param name="valor" select="./@ApellidoPaterno"/>
2670+ </xsl:call-template>
2671+
2672+ <xsl:call-template name="Opcional">
2673+ <xsl:with-param name="valor" select="./@ApellidoMaterno"/>
2674+ </xsl:call-template>
2675+
2676+ <xsl:call-template name="Requerido">
2677+ <xsl:with-param name="valor" select="./@RFC"/>
2678+ </xsl:call-template>
2679+
2680+ <xsl:call-template name="Opcional">
2681+ <xsl:with-param name="valor" select="./@CURP"/>
2682+ </xsl:call-template>
2683+
2684+ </xsl:template>
2685+
2686+ <!-- Manejador de nodos tipo notariospublicos:DatosAdquirientesCopSC -->
2687+ <xsl:template match="notariospublicos:DatosAdquirientesCopSC">
2688+
2689+ <!-- Iniciamos el manejo de los nodos dependientes -->
2690+ <xsl:for-each select="./notariospublicos:DatosAdquirienteCopSC">
2691+ <xsl:apply-templates select="."/>
2692+ </xsl:for-each>
2693+
2694+ </xsl:template>
2695+
2696+ <!-- Manejador de nodos tipo notariospublicos:DatosAdquirienteCopSC -->
2697+ <xsl:template match="notariospublicos:DatosAdquirienteCopSC">
2698+
2699+ <!-- Iniciamos el tratamiento de los atributos -->
2700+ <xsl:call-template name="Requerido">
2701+ <xsl:with-param name="valor" select="./@Nombre"/>
2702+ </xsl:call-template>
2703+
2704+ <xsl:call-template name="Opcional">
2705+ <xsl:with-param name="valor" select="./@ApellidoPaterno"/>
2706+ </xsl:call-template>
2707+
2708+ <xsl:call-template name="Opcional">
2709+ <xsl:with-param name="valor" select="./@ApellidoMaterno"/>
2710+ </xsl:call-template>
2711+
2712+ <xsl:call-template name="Requerido">
2713+ <xsl:with-param name="valor" select="./@RFC"/>
2714+ </xsl:call-template>
2715+
2716+ <xsl:call-template name="Opcional">
2717+ <xsl:with-param name="valor" select="./@CURP"/>
2718+ </xsl:call-template>
2719+
2720+ <xsl:call-template name="Requerido">
2721+ <xsl:with-param name="valor" select="./@Porcentaje"/>
2722+ </xsl:call-template>
2723+
2724+ </xsl:template>
2725+
2726+
2727+</xsl:stylesheet>
2728\ No newline at end of file
2729
2730=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/pagoenespecie.xslt'
2731--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/pagoenespecie.xslt 1970-01-01 00:00:00 +0000
2732+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/pagoenespecie.xslt 2014-08-12 21:43:48 +0000
2733@@ -0,0 +1,38 @@
2734+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:pagoenespecie="http://www.sat.gob.mx/pagoenespecie" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2735+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
2736+
2737+ <!-- Manejador de nodos tipo pago en especie-->
2738+ <xsl:template match="pagoenespecie:PagoEnEspecie">
2739+
2740+ <!--Iniciamos el tratamiento de los atributos de PagoEnEspecie -->
2741+ <xsl:call-template name="Requerido">
2742+ <xsl:with-param name="valor" select="./@Version"/>
2743+ </xsl:call-template>
2744+
2745+ <xsl:call-template name="Requerido">
2746+ <xsl:with-param name="valor" select="./@CvePIC"/>
2747+ </xsl:call-template>
2748+
2749+ <xsl:call-template name="Requerido">
2750+ <xsl:with-param name="valor" select="./@FolioSolDon"/>
2751+ </xsl:call-template>
2752+
2753+ <xsl:call-template name="Requerido">
2754+ <xsl:with-param name="valor" select="./@PzaArtNombre"/>
2755+ </xsl:call-template>
2756+
2757+ <xsl:call-template name="Requerido">
2758+ <xsl:with-param name="valor" select="./@PzaArtTecn"/>
2759+ </xsl:call-template>
2760+
2761+ <xsl:call-template name="Requerido">
2762+ <xsl:with-param name="valor" select="./@PzaArtAProd"/>
2763+ </xsl:call-template>
2764+
2765+ <xsl:call-template name="Requerido">
2766+ <xsl:with-param name="valor" select="./@PzaArtDim"/>
2767+ </xsl:call-template>
2768+
2769+ </xsl:template>
2770+
2771+</xsl:stylesheet>
2772\ No newline at end of file
2773
2774=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/pfic.xslt'
2775--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/pfic.xslt 2013-09-02 23:58:07 +0000
2776+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/pfic.xslt 2014-08-12 21:43:48 +0000
2777@@ -1,13 +1,12 @@
2778-<?xml version="1.0" encoding="UTF-8"?>
2779-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:pfic="http://www.sat.gob.mx/pfic">
2780-<xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
2781- <!-- Manejador de nodos tipo pfic:PFintegranteCoordinado -->
2782- <xsl:template match="pfic:PFintegranteCoordinado">
2783- <!-- Iniciamos el tratamiento de los atributos de pfic:PFintegranteCoordinado -->
2784- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@version"/></xsl:call-template>
2785- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@ClaveVehicular"/></xsl:call-template>
2786- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@Placa"/></xsl:call-template>
2787- <xsl:call-template name="Opcional"><xsl:with-param name="valor" select="./@RFCPF"/></xsl:call-template>
2788- </xsl:template>
2789-
2790-</xsl:stylesheet>
2791+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:pfic="http://www.sat.gob.mx/pfic" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2792+<xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
2793+ <!-- Manejador de nodos tipo pfic:PFintegranteCoordinado -->
2794+ <xsl:template match="pfic:PFintegranteCoordinado">
2795+ <!-- Iniciamos el tratamiento de los atributos de pfic:PFintegranteCoordinado -->
2796+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@version"/></xsl:call-template>
2797+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@ClaveVehicular"/></xsl:call-template>
2798+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@Placa"/></xsl:call-template>
2799+ <xsl:call-template name="Opcional"><xsl:with-param name="valor" select="./@RFCPF"/></xsl:call-template>
2800+ </xsl:template>
2801+
2802+</xsl:stylesheet>
2803\ No newline at end of file
2804
2805=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/psgecfd.xslt'
2806--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/psgecfd.xslt 2013-09-02 23:58:07 +0000
2807+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/psgecfd.xslt 2014-08-12 21:43:48 +0000
2808@@ -1,12 +1,11 @@
2809-<?xml version="1.0" encoding="UTF-8"?>
2810-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:psgecfd="http://www.sat.gob.mx/psgecfd">
2811- <!-- Manejador de nodos tipo psgecfd:PrestadoresDeServiciosDeCFD -->
2812- <xsl:template match="psgecfd:PrestadoresDeServiciosDeCFD">
2813- <!-- Iniciamos el tratamiento de los atributos de psgecfd:PrestadoresDeServiciosDeCFD -->
2814- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@nombre"/></xsl:call-template>
2815- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@rfc"/></xsl:call-template>
2816- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@noCertificado"/></xsl:call-template>
2817- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@fechaAutorizacion"/></xsl:call-template>
2818- <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@noAutorizacion"/></xsl:call-template>
2819- </xsl:template>
2820-</xsl:stylesheet>
2821+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:psgecfd="http://www.sat.gob.mx/psgecfd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2822+ <!-- Manejador de nodos tipo psgecfd:PrestadoresDeServiciosDeCFD -->
2823+ <xsl:template match="psgecfd:PrestadoresDeServiciosDeCFD">
2824+ <!-- Iniciamos el tratamiento de los atributos de psgecfd:PrestadoresDeServiciosDeCFD -->
2825+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@nombre"/></xsl:call-template>
2826+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@rfc"/></xsl:call-template>
2827+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@noCertificado"/></xsl:call-template>
2828+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@fechaAutorizacion"/></xsl:call-template>
2829+ <xsl:call-template name="Requerido"><xsl:with-param name="valor" select="./@noAutorizacion"/></xsl:call-template>
2830+ </xsl:template>
2831+</xsl:stylesheet>
2832\ No newline at end of file
2833
2834=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/spei.xslt'
2835--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/spei.xslt 2013-09-02 23:58:07 +0000
2836+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/spei.xslt 2014-08-12 21:43:48 +0000
2837@@ -1,82 +1,81 @@
2838-<?xml version="1.0" encoding="UTF-8"?>
2839-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:spei="http://www.sat.gob.mx/spei">
2840- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
2841-
2842- <!-- Manejador de nodos tipo Complemento_SPEI-->
2843- <xsl:template match="spei:Complemento_SPEI">
2844- <!--Iniciamos el tratamiento del complemento SPEI-->
2845- <xsl:for-each select="./spei:SPEI_Tercero">
2846- <xsl:apply-templates select="."/>
2847- </xsl:for-each>
2848- </xsl:template>
2849-
2850- <!-- Manejador de atributos de SPEI_Tercero-->
2851- <xsl:template match="spei:SPEI_Tercero">
2852- <!-- Manejo de los atributos del Ordenante-->
2853- <xsl:call-template name="Requerido">
2854- <xsl:with-param name="valor" select="./@FechaOperacion"/>
2855- </xsl:call-template>
2856- <xsl:call-template name="Requerido">
2857- <xsl:with-param name="valor" select="./@Hora"/>
2858- </xsl:call-template>
2859- <xsl:call-template name="Requerido">
2860- <xsl:with-param name="valor" select="./@ClaveSPEI"/>
2861- </xsl:call-template>
2862- <xsl:call-template name="Requerido">
2863- <xsl:with-param name="valor" select="./@sello"/>
2864- </xsl:call-template>
2865- <xsl:call-template name="Requerido">
2866- <xsl:with-param name="valor" select="./@numeroCertificado"/>
2867- </xsl:call-template>
2868- <xsl:apply-templates select="./spei:Ordenante"/>
2869- <xsl:apply-templates select="./spei:Beneficiario"/>
2870-
2871- </xsl:template>
2872-
2873- <!-- Manejador de nodos tipo SPEI-->
2874- <xsl:template match="spei:Ordenante">
2875- <!-- Manejo de los atributos del Ordenante-->
2876- <xsl:call-template name="Requerido">
2877- <xsl:with-param name="valor" select="./@BancoEmisor"/>
2878- </xsl:call-template>
2879- <xsl:call-template name="Requerido">
2880- <xsl:with-param name="valor" select="./@Nombre"/>
2881- </xsl:call-template>
2882- <xsl:call-template name="Requerido">
2883- <xsl:with-param name="valor" select="./@TipoCuenta"/>
2884- </xsl:call-template>
2885- <xsl:call-template name="Requerido">
2886- <xsl:with-param name="valor" select="./@Cuenta"/>
2887- </xsl:call-template>
2888- <xsl:call-template name="Requerido">
2889- <xsl:with-param name="valor" select="./@RFC"/>
2890- </xsl:call-template>
2891- </xsl:template>
2892- <xsl:template match="spei:Beneficiario">
2893- <!-- Manejo de los atributos del Beneficiario-->
2894- <xsl:call-template name="Requerido">
2895- <xsl:with-param name="valor" select="./@BancoReceptor"/>
2896- </xsl:call-template>
2897- <xsl:call-template name="Requerido">
2898- <xsl:with-param name="valor" select="./@Nombre"/>
2899- </xsl:call-template>
2900- <xsl:call-template name="Requerido">
2901- <xsl:with-param name="valor" select="./@TipoCuenta"/>
2902- </xsl:call-template>
2903- <xsl:call-template name="Requerido">
2904- <xsl:with-param name="valor" select="./@Cuenta"/>
2905- </xsl:call-template>
2906- <xsl:call-template name="Requerido">
2907- <xsl:with-param name="valor" select="./@RFC"/>
2908- </xsl:call-template>
2909- <xsl:call-template name="Requerido">
2910- <xsl:with-param name="valor" select="./@Concepto"/>
2911- </xsl:call-template>
2912- <xsl:call-template name="Opcional">
2913- <xsl:with-param name="valor" select="./@IVA"/>
2914- </xsl:call-template>
2915- <xsl:call-template name="Requerido">
2916- <xsl:with-param name="valor" select="./@MontoPago"/>
2917- </xsl:call-template>
2918- </xsl:template>
2919-</xsl:stylesheet>
2920+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:spei="http://www.sat.gob.mx/spei" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
2921+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
2922+
2923+ <!-- Manejador de nodos tipo Complemento_SPEI-->
2924+ <xsl:template match="spei:Complemento_SPEI">
2925+ <!--Iniciamos el tratamiento del complemento SPEI-->
2926+ <xsl:for-each select="./spei:SPEI_Tercero">
2927+ <xsl:apply-templates select="."/>
2928+ </xsl:for-each>
2929+ </xsl:template>
2930+
2931+ <!-- Manejador de atributos de SPEI_Tercero-->
2932+ <xsl:template match="spei:SPEI_Tercero">
2933+ <!-- Manejo de los atributos del Ordenante-->
2934+ <xsl:call-template name="Requerido">
2935+ <xsl:with-param name="valor" select="./@FechaOperacion"/>
2936+ </xsl:call-template>
2937+ <xsl:call-template name="Requerido">
2938+ <xsl:with-param name="valor" select="./@Hora"/>
2939+ </xsl:call-template>
2940+ <xsl:call-template name="Requerido">
2941+ <xsl:with-param name="valor" select="./@ClaveSPEI"/>
2942+ </xsl:call-template>
2943+ <xsl:call-template name="Requerido">
2944+ <xsl:with-param name="valor" select="./@sello"/>
2945+ </xsl:call-template>
2946+ <xsl:call-template name="Requerido">
2947+ <xsl:with-param name="valor" select="./@numeroCertificado"/>
2948+ </xsl:call-template>
2949+ <xsl:apply-templates select="./spei:Ordenante"/>
2950+ <xsl:apply-templates select="./spei:Beneficiario"/>
2951+
2952+ </xsl:template>
2953+
2954+ <!-- Manejador de nodos tipo SPEI-->
2955+ <xsl:template match="spei:Ordenante">
2956+ <!-- Manejo de los atributos del Ordenante-->
2957+ <xsl:call-template name="Requerido">
2958+ <xsl:with-param name="valor" select="./@BancoEmisor"/>
2959+ </xsl:call-template>
2960+ <xsl:call-template name="Requerido">
2961+ <xsl:with-param name="valor" select="./@Nombre"/>
2962+ </xsl:call-template>
2963+ <xsl:call-template name="Requerido">
2964+ <xsl:with-param name="valor" select="./@TipoCuenta"/>
2965+ </xsl:call-template>
2966+ <xsl:call-template name="Requerido">
2967+ <xsl:with-param name="valor" select="./@Cuenta"/>
2968+ </xsl:call-template>
2969+ <xsl:call-template name="Requerido">
2970+ <xsl:with-param name="valor" select="./@RFC"/>
2971+ </xsl:call-template>
2972+ </xsl:template>
2973+ <xsl:template match="spei:Beneficiario">
2974+ <!-- Manejo de los atributos del Beneficiario-->
2975+ <xsl:call-template name="Requerido">
2976+ <xsl:with-param name="valor" select="./@BancoReceptor"/>
2977+ </xsl:call-template>
2978+ <xsl:call-template name="Requerido">
2979+ <xsl:with-param name="valor" select="./@Nombre"/>
2980+ </xsl:call-template>
2981+ <xsl:call-template name="Requerido">
2982+ <xsl:with-param name="valor" select="./@TipoCuenta"/>
2983+ </xsl:call-template>
2984+ <xsl:call-template name="Requerido">
2985+ <xsl:with-param name="valor" select="./@Cuenta"/>
2986+ </xsl:call-template>
2987+ <xsl:call-template name="Requerido">
2988+ <xsl:with-param name="valor" select="./@RFC"/>
2989+ </xsl:call-template>
2990+ <xsl:call-template name="Requerido">
2991+ <xsl:with-param name="valor" select="./@Concepto"/>
2992+ </xsl:call-template>
2993+ <xsl:call-template name="Opcional">
2994+ <xsl:with-param name="valor" select="./@IVA"/>
2995+ </xsl:call-template>
2996+ <xsl:call-template name="Requerido">
2997+ <xsl:with-param name="valor" select="./@MontoPago"/>
2998+ </xsl:call-template>
2999+ </xsl:template>
3000+</xsl:stylesheet>
3001\ No newline at end of file
3002
3003=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/terceros11.xslt'
3004--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/terceros11.xslt 2013-09-02 23:58:07 +0000
3005+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/terceros11.xslt 2014-08-12 21:43:48 +0000
3006@@ -1,108 +1,107 @@
3007-<?xml version="1.0" encoding="UTF-8"?>
3008-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:terceros="http://www.sat.gob.mx/terceros">
3009- <xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
3010- <!-- Manejador de nodos tipo PorCuentadeTerceros -->
3011- <xsl:template match="terceros:PorCuentadeTerceros">
3012- <!--Iniciamos el tratamiento de los atributos del complemento concepto Por cuenta de Terceros -->
3013- <xsl:call-template name="Requerido">
3014- <xsl:with-param name="valor" select="./@version"/>
3015- </xsl:call-template>
3016- <xsl:call-template name="Requerido">
3017- <xsl:with-param name="valor" select="./@rfc"/>
3018- </xsl:call-template>
3019- <xsl:call-template name="Opcional">
3020- <xsl:with-param name="valor" select="./@nombre"/>
3021- </xsl:call-template>
3022- <!--Iniciamos el tratamiento de los atributos de la información fiscal del complemento de terceros -->
3023- <xsl:apply-templates select=".//terceros:InformacionFiscalTercero"/>
3024- <!-- Manejo de los atributos de la información aduanera del complemento de terceros -->
3025- <xsl:for-each select=".//terceros:InformacionAduanera">
3026- <xsl:apply-templates select="."/>
3027- </xsl:for-each>
3028- <!-- Manejo de los atributos de la cuenta predial del complento de terceros -->
3029- <xsl:if test="./terceros:CuentaPredial">
3030- <xsl:apply-templates select="./terceros:CuentaPredial"/>
3031- </xsl:if>
3032- <!-- Manejador de nodos tipo Impuestos-->
3033- <xsl:for-each select=".//terceros:Retenciones/terceros:Retencion">
3034- <xsl:apply-templates select="."/>
3035- </xsl:for-each>
3036- <xsl:for-each select=".//terceros:Traslados/terceros:Traslado">
3037- <xsl:apply-templates select="."/>
3038- </xsl:for-each>
3039- </xsl:template>
3040- <!-- Manejador de nodos tipo Retencion -->
3041- <xsl:template match="terceros:Retencion">
3042- <xsl:call-template name="Requerido">
3043- <xsl:with-param name="valor" select="./@impuesto"/>
3044- </xsl:call-template>
3045- <xsl:call-template name="Requerido">
3046- <xsl:with-param name="valor" select="./@importe"/>
3047- </xsl:call-template>
3048- </xsl:template>
3049- <!-- Manejador de nodos tipo Traslado -->
3050- <xsl:template match="terceros:Traslado">
3051- <xsl:call-template name="Requerido">
3052- <xsl:with-param name="valor" select="./@impuesto"/>
3053- </xsl:call-template>
3054- <xsl:call-template name="Requerido">
3055- <xsl:with-param name="valor" select="./@tasa"/>
3056- </xsl:call-template>
3057- <xsl:call-template name="Requerido">
3058- <xsl:with-param name="valor" select="./@importe"/>
3059- </xsl:call-template>
3060- </xsl:template>
3061- <!-- Manejador de nodos tipo Información Aduanera -->
3062- <xsl:template match="terceros:InformacionAduanera">
3063- <!-- Manejo de los atributos de la información aduanera -->
3064- <xsl:call-template name="Requerido">
3065- <xsl:with-param name="valor" select="./@numero"/>
3066- </xsl:call-template>
3067- <xsl:call-template name="Requerido">
3068- <xsl:with-param name="valor" select="./@fecha"/>
3069- </xsl:call-template>
3070- <xsl:call-template name="Opcional">
3071- <xsl:with-param name="valor" select="./@aduana"/>
3072- </xsl:call-template>
3073- </xsl:template>
3074- <!-- Manejador de nodos tipo Información CuentaPredial -->
3075- <xsl:template match="terceros:CuentaPredial">
3076- <xsl:call-template name="Requerido">
3077- <xsl:with-param name="valor" select="./@numero"/>
3078- </xsl:call-template>
3079- </xsl:template>
3080- <!-- Manejador de nodos tipo Domicilio fiscal -->
3081- <xsl:template match="terceros:InformacionFiscalTercero">
3082- <!-- Iniciamos el tratamiento de los atributos del Domicilio Fiscal -->
3083- <xsl:call-template name="Requerido">
3084- <xsl:with-param name="valor" select="./@calle"/>
3085- </xsl:call-template>
3086- <xsl:call-template name="Opcional">
3087- <xsl:with-param name="valor" select="./@noExterior"/>
3088- </xsl:call-template>
3089- <xsl:call-template name="Opcional">
3090- <xsl:with-param name="valor" select="./@noInterior"/>
3091- </xsl:call-template>
3092- <xsl:call-template name="Opcional">
3093- <xsl:with-param name="valor" select="./@colonia"/>
3094- </xsl:call-template>
3095- <xsl:call-template name="Opcional">
3096- <xsl:with-param name="valor" select="./@localidad"/>
3097- </xsl:call-template>
3098- <xsl:call-template name="Opcional">
3099- <xsl:with-param name="valor" select="./@referencia"/>
3100- </xsl:call-template>
3101- <xsl:call-template name="Requerido">
3102- <xsl:with-param name="valor" select="./@municipio"/>
3103- </xsl:call-template>
3104- <xsl:call-template name="Requerido">
3105- <xsl:with-param name="valor" select="./@estado"/>
3106- </xsl:call-template>
3107- <xsl:call-template name="Requerido">
3108- <xsl:with-param name="valor" select="./@pais"/>
3109- </xsl:call-template>
3110- <xsl:call-template name="Requerido">
3111- <xsl:with-param name="valor" select="./@codigoPostal"/>
3112- </xsl:call-template>
3113- </xsl:template>
3114-</xsl:stylesheet>
3115+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:terceros="http://www.sat.gob.mx/terceros" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3116+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
3117+ <!-- Manejador de nodos tipo PorCuentadeTerceros -->
3118+ <xsl:template match="terceros:PorCuentadeTerceros">
3119+ <!--Iniciamos el tratamiento de los atributos del complemento concepto Por cuenta de Terceros -->
3120+ <xsl:call-template name="Requerido">
3121+ <xsl:with-param name="valor" select="./@version"/>
3122+ </xsl:call-template>
3123+ <xsl:call-template name="Requerido">
3124+ <xsl:with-param name="valor" select="./@rfc"/>
3125+ </xsl:call-template>
3126+ <xsl:call-template name="Opcional">
3127+ <xsl:with-param name="valor" select="./@nombre"/>
3128+ </xsl:call-template>
3129+ <!--Iniciamos el tratamiento de los atributos de la información fiscal del complemento de terceros -->
3130+ <xsl:apply-templates select=".//terceros:InformacionFiscalTercero"/>
3131+ <!-- Manejo de los atributos de la información aduanera del complemento de terceros -->
3132+ <xsl:for-each select=".//terceros:InformacionAduanera">
3133+ <xsl:apply-templates select="."/>
3134+ </xsl:for-each>
3135+ <!-- Manejo de los atributos de la cuenta predial del complento de terceros -->
3136+ <xsl:if test="./terceros:CuentaPredial">
3137+ <xsl:apply-templates select="./terceros:CuentaPredial"/>
3138+ </xsl:if>
3139+ <!-- Manejador de nodos tipo Impuestos-->
3140+ <xsl:for-each select=".//terceros:Retenciones/terceros:Retencion">
3141+ <xsl:apply-templates select="."/>
3142+ </xsl:for-each>
3143+ <xsl:for-each select=".//terceros:Traslados/terceros:Traslado">
3144+ <xsl:apply-templates select="."/>
3145+ </xsl:for-each>
3146+ </xsl:template>
3147+ <!-- Manejador de nodos tipo Retencion -->
3148+ <xsl:template match="terceros:Retencion">
3149+ <xsl:call-template name="Requerido">
3150+ <xsl:with-param name="valor" select="./@impuesto"/>
3151+ </xsl:call-template>
3152+ <xsl:call-template name="Requerido">
3153+ <xsl:with-param name="valor" select="./@importe"/>
3154+ </xsl:call-template>
3155+ </xsl:template>
3156+ <!-- Manejador de nodos tipo Traslado -->
3157+ <xsl:template match="terceros:Traslado">
3158+ <xsl:call-template name="Requerido">
3159+ <xsl:with-param name="valor" select="./@impuesto"/>
3160+ </xsl:call-template>
3161+ <xsl:call-template name="Requerido">
3162+ <xsl:with-param name="valor" select="./@tasa"/>
3163+ </xsl:call-template>
3164+ <xsl:call-template name="Requerido">
3165+ <xsl:with-param name="valor" select="./@importe"/>
3166+ </xsl:call-template>
3167+ </xsl:template>
3168+ <!-- Manejador de nodos tipo Información Aduanera -->
3169+ <xsl:template match="terceros:InformacionAduanera">
3170+ <!-- Manejo de los atributos de la información aduanera -->
3171+ <xsl:call-template name="Requerido">
3172+ <xsl:with-param name="valor" select="./@numero"/>
3173+ </xsl:call-template>
3174+ <xsl:call-template name="Requerido">
3175+ <xsl:with-param name="valor" select="./@fecha"/>
3176+ </xsl:call-template>
3177+ <xsl:call-template name="Opcional">
3178+ <xsl:with-param name="valor" select="./@aduana"/>
3179+ </xsl:call-template>
3180+ </xsl:template>
3181+ <!-- Manejador de nodos tipo Información CuentaPredial -->
3182+ <xsl:template match="terceros:CuentaPredial">
3183+ <xsl:call-template name="Requerido">
3184+ <xsl:with-param name="valor" select="./@numero"/>
3185+ </xsl:call-template>
3186+ </xsl:template>
3187+ <!-- Manejador de nodos tipo Domicilio fiscal -->
3188+ <xsl:template match="terceros:InformacionFiscalTercero">
3189+ <!-- Iniciamos el tratamiento de los atributos del Domicilio Fiscal -->
3190+ <xsl:call-template name="Requerido">
3191+ <xsl:with-param name="valor" select="./@calle"/>
3192+ </xsl:call-template>
3193+ <xsl:call-template name="Opcional">
3194+ <xsl:with-param name="valor" select="./@noExterior"/>
3195+ </xsl:call-template>
3196+ <xsl:call-template name="Opcional">
3197+ <xsl:with-param name="valor" select="./@noInterior"/>
3198+ </xsl:call-template>
3199+ <xsl:call-template name="Opcional">
3200+ <xsl:with-param name="valor" select="./@colonia"/>
3201+ </xsl:call-template>
3202+ <xsl:call-template name="Opcional">
3203+ <xsl:with-param name="valor" select="./@localidad"/>
3204+ </xsl:call-template>
3205+ <xsl:call-template name="Opcional">
3206+ <xsl:with-param name="valor" select="./@referencia"/>
3207+ </xsl:call-template>
3208+ <xsl:call-template name="Requerido">
3209+ <xsl:with-param name="valor" select="./@municipio"/>
3210+ </xsl:call-template>
3211+ <xsl:call-template name="Requerido">
3212+ <xsl:with-param name="valor" select="./@estado"/>
3213+ </xsl:call-template>
3214+ <xsl:call-template name="Requerido">
3215+ <xsl:with-param name="valor" select="./@pais"/>
3216+ </xsl:call-template>
3217+ <xsl:call-template name="Requerido">
3218+ <xsl:with-param name="valor" select="./@codigoPostal"/>
3219+ </xsl:call-template>
3220+ </xsl:template>
3221+</xsl:stylesheet>
3222\ No newline at end of file
3223
3224=== modified file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/utilerias.xslt'
3225--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/utilerias.xslt 2013-09-02 23:58:07 +0000
3226+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/utilerias.xslt 2014-08-12 21:43:48 +0000
3227@@ -1,22 +1,21 @@
3228-<?xml version="1.0" encoding="UTF-8"?>
3229-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions">
3230-
3231- <!-- Manejador de datos requeridos -->
3232- <xsl:template name="Requerido">
3233- <xsl:param name="valor"/>|<xsl:call-template name="ManejaEspacios">
3234- <xsl:with-param name="s" select="$valor"/>
3235- </xsl:call-template>
3236- </xsl:template>
3237-
3238- <!-- Manejador de datos opcionales -->
3239- <xsl:template name="Opcional">
3240- <xsl:param name="valor"/>
3241- <xsl:if test="$valor">|<xsl:call-template name="ManejaEspacios"><xsl:with-param name="s" select="$valor"/></xsl:call-template></xsl:if>
3242- </xsl:template>
3243-
3244- <!-- Normalizador de espacios en blanco -->
3245- <xsl:template name="ManejaEspacios">
3246- <xsl:param name="s"/>
3247- <xsl:value-of select="normalize-space(string($s))"/>
3248- </xsl:template>
3249-</xsl:stylesheet>
3250+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3251+
3252+ <!-- Manejador de datos requeridos -->
3253+ <xsl:template name="Requerido">
3254+ <xsl:param name="valor"/>|<xsl:call-template name="ManejaEspacios">
3255+ <xsl:with-param name="s" select="$valor"/>
3256+ </xsl:call-template>
3257+ </xsl:template>
3258+
3259+ <!-- Manejador de datos opcionales -->
3260+ <xsl:template name="Opcional">
3261+ <xsl:param name="valor"/>
3262+ <xsl:if test="$valor">|<xsl:call-template name="ManejaEspacios"><xsl:with-param name="s" select="$valor"/></xsl:call-template></xsl:if>
3263+ </xsl:template>
3264+
3265+ <!-- Normalizador de espacios en blanco -->
3266+ <xsl:template name="ManejaEspacios">
3267+ <xsl:param name="s"/>
3268+ <xsl:value-of select="normalize-space(string($s))"/>
3269+ </xsl:template>
3270+</xsl:stylesheet>
3271\ No newline at end of file
3272
3273=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/valesdedespensa.xslt'
3274--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/valesdedespensa.xslt 1970-01-01 00:00:00 +0000
3275+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/valesdedespensa.xslt 2014-08-12 21:43:48 +0000
3276@@ -0,0 +1,69 @@
3277+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:valesdedespensa="http://www.sat.gob.mx/valesdedespensa" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3278+
3279+ <!-- Manejador de nodos tipo valesdedespensa:ValesDeDespensa -->
3280+ <xsl:template match="valesdedespensa:ValesDeDespensa">
3281+
3282+ <!-- Iniciamos el tratamiento de los atributos de valesdedespensa:ValesDeDespensa -->
3283+
3284+ <xsl:call-template name="Requerido">
3285+ <xsl:with-param name="valor" select="./@version"/>
3286+ </xsl:call-template>
3287+ <xsl:call-template name="Requerido">
3288+ <xsl:with-param name="valor" select="./@tipoOperacion"/>
3289+ </xsl:call-template>
3290+ <xsl:call-template name="Opcional">
3291+ <xsl:with-param name="valor" select="./@registroPatronal"/>
3292+ </xsl:call-template>
3293+ <xsl:call-template name="Requerido">
3294+ <xsl:with-param name="valor" select="./@numeroDeCuenta"/>
3295+ </xsl:call-template>
3296+ <xsl:call-template name="Requerido">
3297+ <xsl:with-param name="valor" select="./@total"/>
3298+ </xsl:call-template>
3299+
3300+ <!-- Iniciamos el manejo de los nodos dependientes -->
3301+ <xsl:apply-templates select="./valesdedespensa:Conceptos"/>
3302+
3303+ </xsl:template>
3304+
3305+ <!-- Manejador de nodos tipo valesdedespensa:Conceptos -->
3306+ <xsl:template match="valesdedespensa:Conceptos">
3307+
3308+ <!-- Iniciamos el manejo de los nodos dependientes -->
3309+
3310+ <xsl:for-each select="./valesdedespensa:Concepto">
3311+ <xsl:apply-templates select="."/>
3312+ </xsl:for-each>
3313+
3314+ </xsl:template>
3315+
3316+ <!-- Manejador de nodos tipo valesdedespensa:Concepto -->
3317+ <xsl:template match="valesdedespensa:Concepto">
3318+
3319+ <!-- Iniciamos el tratamiento de los atributos de valesdedespensa:Concepto -->
3320+
3321+ <xsl:call-template name="Requerido">
3322+ <xsl:with-param name="valor" select="./@identificador"/>
3323+ </xsl:call-template>
3324+ <xsl:call-template name="Requerido">
3325+ <xsl:with-param name="valor" select="./@fecha"/>
3326+ </xsl:call-template>
3327+ <xsl:call-template name="Requerido">
3328+ <xsl:with-param name="valor" select="./@rfc"/>
3329+ </xsl:call-template>
3330+ <xsl:call-template name="Requerido">
3331+ <xsl:with-param name="valor" select="./@curp"/>
3332+ </xsl:call-template>
3333+ <xsl:call-template name="Requerido">
3334+ <xsl:with-param name="valor" select="./@nombre"/>
3335+ </xsl:call-template>
3336+ <xsl:call-template name="Opcional">
3337+ <xsl:with-param name="valor" select="./@numSeguridadSocial"/>
3338+ </xsl:call-template>
3339+ <xsl:call-template name="Requerido">
3340+ <xsl:with-param name="valor" select="./@importe"/>
3341+ </xsl:call-template>
3342+
3343+ </xsl:template>
3344+
3345+</xsl:stylesheet>
3346\ No newline at end of file
3347
3348=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/ventavehiculos11.xslt'
3349--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/ventavehiculos11.xslt 1970-01-01 00:00:00 +0000
3350+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/ventavehiculos11.xslt 2014-08-12 21:43:48 +0000
3351@@ -0,0 +1,52 @@
3352+<?xml version="1.0" ?><xsl:stylesheet version="1.0" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:ventavehiculos="http://www.sat.gob.mx/ventavehiculos" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3353+ <xsl:output encoding="UTF-8" indent="no" method="text" version="1.0"/>
3354+
3355+ <!-- Manejador de nodos tipo VentaVehiculos-->
3356+
3357+ <xsl:template match="ventavehiculos:VentaVehiculos">
3358+
3359+ <!--Iniciamos el tratamiento de los atributos del complemento concepto VentaVehiculos-->
3360+
3361+ <xsl:call-template name="Requerido">
3362+ <xsl:with-param name="valor" select="./@version"/>
3363+ </xsl:call-template>
3364+
3365+ <xsl:call-template name="Requerido">
3366+ <xsl:with-param name="valor" select="./@ClaveVehicular"/>
3367+ </xsl:call-template>
3368+
3369+ <xsl:if test="./@version='1.1'">
3370+
3371+ <xsl:call-template name="Requerido">
3372+ <xsl:with-param name="valor" select="./@Niv"/>
3373+ </xsl:call-template>
3374+
3375+ </xsl:if>
3376+
3377+ <!-- Manejo de los atributos de la información aduanera del complemento de terceros -->
3378+
3379+ <xsl:for-each select=".//ventavehiculos:InformacionAduanera">
3380+ <xsl:apply-templates select="."/>
3381+ </xsl:for-each>
3382+
3383+ </xsl:template>
3384+
3385+ <!-- Manejador de nodos tipo Información Aduanera -->
3386+
3387+ <xsl:template match="ventavehiculos:InformacionAduanera">
3388+
3389+ <!-- Manejo de los atributos de la información aduanera -->
3390+
3391+ <xsl:call-template name="Requerido">
3392+ <xsl:with-param name="valor" select="./@numero"/>
3393+ </xsl:call-template>
3394+
3395+ <xsl:call-template name="Requerido">
3396+ <xsl:with-param name="valor" select="./@fecha"/>
3397+ </xsl:call-template>
3398+
3399+ <xsl:call-template name="Opcional">
3400+ <xsl:with-param name="valor" select="./@aduana"/>
3401+ </xsl:call-template>
3402+ </xsl:template>
3403+</xsl:stylesheet>
3404\ No newline at end of file
3405
3406=== added file 'l10n_mx_facturae/SAT/cadenaoriginal_3_2/xslt_sync.py'
3407--- l10n_mx_facturae/SAT/cadenaoriginal_3_2/xslt_sync.py 1970-01-01 00:00:00 +0000
3408+++ l10n_mx_facturae/SAT/cadenaoriginal_3_2/xslt_sync.py 2014-08-12 21:43:48 +0000
3409@@ -0,0 +1,135 @@
3410+#!/usr/bin/python
3411+# -*- encoding: utf-8 -*-
3412+#
3413+# Module Writen to OpenERP, Open Source Management Solution
3414+#
3415+# Copyright (c) 2014 Vauxoo - http://www.vauxoo.com/
3416+# All Rights Reserved.
3417+# info Vauxoo (info@vauxoo.com)
3418+#
3419+# Coded by: vauxoo consultores (info@vauxoo.com)
3420+#
3421+#
3422+# This program is free software: you can redistribute it and/or modify
3423+# it under the terms of the GNU Affero General Public License as
3424+# published by the Free Software Foundation, either version 3 of the
3425+# License, or (at your option) any later version.
3426+#
3427+# This program is distributed in the hope that it will be useful,
3428+# but WITHOUT ANY WARRANTY; without even the implied warranty of
3429+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3430+# GNU Affero General Public License for more details.
3431+#
3432+# You should have received a copy of the GNU Affero General Public License
3433+# along with this program. If not, see <http://www.gnu.org/licenses/>.
3434+#
3435+#
3436+
3437+'''
3438+Enter address (path_local) and Url of file to download
3439+'''
3440+
3441+import os
3442+from os.path import basename
3443+import xml
3444+from xml.dom import minidom
3445+import urllib
3446+import urllib2
3447+from urlparse import urlsplit
3448+import sys
3449+from urllib2 import Request, urlopen, URLError, HTTPError
3450+import ConfigParser
3451+
3452+# Read file.conf
3453+if len(sys.argv)==2:
3454+ if os.path.exists(sys.argv[1]):
3455+ file_conf = sys.argv[1]
3456+ if file_conf:
3457+ config = ConfigParser.RawConfigParser()
3458+ config.read(file_conf)
3459+ url = config.get('options', 'url')
3460+ path_local = config.get('options', 'path_local')
3461+ urls_list = url.split(',')
3462+ else:
3463+ sys.exit('ERROR: File %s was not found!' % sys.argv[1])
3464+# End Read file.conf
3465+else:
3466+ print "Example of path_local:\n\n /home/carlos/instancias/7/addons_all/openerp-mexico-localization70/l10n_mx_facturae/SAT/cadenaoriginal_3_2/"
3467+ path_local = raw_input('\nEnter the address (path_local): ')
3468+ print "\nExample of URL:\r"
3469+ print "http://www.sat.gob.mx/cfd/3/cadenaoriginal_3_2/cadenaoriginal_3_2.xslt\n"
3470+ print "http://www.sat.gob.mx/sitio_internet/cfd/nomina/nomina11.xsd"
3471+ url = raw_input('Enter Url of file to download: ')
3472+ urls_list = url.split(',')
3473+ #~url = "http://www.sat.gob.mx/cfd/3/cadenaoriginal_3_2/cadenaoriginal_3_2.xslt"
3474+ #~url = "http://www.sat.gob.mx/sitio_internet/cfd/nomina/nomina11.xsd"
3475+path_local_current = os.getcwd() # Knowing the current directory
3476+
3477+if path_local:
3478+ if not os.path.exists(path_local):
3479+ os.mkdir(path_local)
3480+else:
3481+ path_local = path_local_current
3482+for url in urls_list:
3483+ name_file = basename(urlsplit(url)[2])
3484+ # Generate Path local for Linux and Windows
3485+ if path_local:
3486+ path_local_file = os.path.join(path_local, name_file)
3487+ else:
3488+ path_local_file = os.path.join(path_local_current, name_file)
3489+ path_local = path_local_current
3490+ # End Generate Path local
3491+ # Abrir URL
3492+ try:
3493+ f = urllib2.urlopen(url)
3494+ except HTTPError, e:
3495+ print "HTTP Error:",e.code , url
3496+ except URLError, e:
3497+ print "URL Error:",e.reason , url
3498+ #~sys.exit(0)
3499+ # Update file
3500+ content_file = f.read()
3501+ with open(path_local_file, "wb") as code:
3502+ code.write(content_file)
3503+ code.close()
3504+ print "Downloaded ", name_file
3505+ # End file update
3506+ doc_xml = xml.dom.minidom.parseString(content_file) # Convert content to doc
3507+ node_stylesheet = doc_xml.getElementsByTagName("xsl:stylesheet") # Read node xsl:stylesheet of doc_xml
3508+ if node_stylesheet:
3509+ node_stylesheet[0].setAttribute("version", '1.0') # Replace version from 2.0 to 1.0 for library xsltproc
3510+ node_include = doc_xml.getElementsByTagName("xsl:include") # Read node xsl:include of doc_xml
3511+ for include in node_include:
3512+ # Read links
3513+ url = include.getAttribute("href")
3514+ url = str(url)
3515+ name_file_child = basename(urlsplit(url)[2])
3516+ include.setAttribute("href", name_file_child) # Replace version from 2.0 to 1.0 for library xsltproc
3517+ # End Read links
3518+ path_local_file2 = os.path.join(path_local, name_file_child) # Generate Path local
3519+ # Download childs nodes
3520+ f = urllib2.urlopen(url)
3521+ content = f.read()
3522+ doc = xml.dom.minidom.parseString(content)
3523+ node_stylesheet2 = doc.getElementsByTagName("xsl:stylesheet")
3524+ if node_stylesheet2:
3525+ node_stylesheet2[0].setAttribute("version", '1.0') # Replace version from 2.0 to 1.0 for library xsltproc
3526+ content = doc.toxml().encode('utf-8')
3527+ with open(path_local_file2, "wb") as c:
3528+ c.write(content)
3529+ c.close()
3530+ print "Downloaded ",name_file_child
3531+ # End Download childs nodes
3532+ # Duplicated file downloaded with suffix "_l"
3533+ new_content = doc_xml.toxml().encode('utf-8')
3534+ name_file_split = os.path.splitext(name_file)
3535+ text_name = name_file_split[0]
3536+ extension = name_file_split[1]
3537+ name_file = text_name + '_l' + extension
3538+ path_local_file3 = os.path.join(path_local, name_file) # Generate Path local for local file
3539+ with open(path_local_file3, "wb") as c:
3540+ c.write(new_content)
3541+ c.close()
3542+ print "Was created ", name_file
3543+
3544+