xref: /aosp_15_r20/external/apache-xml/test/tests/conf/numbering/numbering85.xsl (revision 1212f9a0ffdc28482b8821715d2222bf16dc14e2)
1*1212f9a0SAndroid Build Coastguard Worker<?xml version="1.0"?>
2*1212f9a0SAndroid Build Coastguard Worker<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
3*1212f9a0SAndroid Build Coastguard Worker
4*1212f9a0SAndroid Build Coastguard Worker  <!-- CaseName: numbering85 -->
5*1212f9a0SAndroid Build Coastguard Worker  <!-- Author: Paul Dick -->
6*1212f9a0SAndroid Build Coastguard Worker  <!-- Purpose: Test that value attribute gets rounded correctly w/various formats. -->
7*1212f9a0SAndroid Build Coastguard Worker  <!-- SpecCitation: Rec="XSLT" Version="1.0" type="OASISptr1" place="id(number)/ulist[1]/item[1]/p[1]/text()[5]" -->
8*1212f9a0SAndroid Build Coastguard Worker  <!-- SpecCitation: Rec="XSLT" Version="1.0" type="OASISptr1" place="id(number)/p[1]/text()[3]" -->
9*1212f9a0SAndroid Build Coastguard Worker  <!-- SpecCitation: Rec="XSLT" Version="1.0" type="OASISptr1" place="id(convert)/ulist[1]/item[1]/p[1]/text()[4]" -->
10*1212f9a0SAndroid Build Coastguard Worker  <!-- Scenario: operation="standard-XML" -->
11*1212f9a0SAndroid Build Coastguard Worker
12*1212f9a0SAndroid Build Coastguard Worker<xsl:template match="doc">
13*1212f9a0SAndroid Build Coastguard Worker  <out>
14*1212f9a0SAndroid Build Coastguard Worker  <!-- Round down to 1 -->
15*1212f9a0SAndroid Build Coastguard Worker     <o><xsl:number format="1" value="1.1"/></o><xsl:text>&#10;</xsl:text>
16*1212f9a0SAndroid Build Coastguard Worker     <o><xsl:number format="01" value="1.02"/></o><xsl:text>&#10;</xsl:text>
17*1212f9a0SAndroid Build Coastguard Worker     <o><xsl:number format="A" value="1.003"/></o><xsl:text>&#10;</xsl:text>
18*1212f9a0SAndroid Build Coastguard Worker     <o><xsl:number format="a" value="1.0004"/></o><xsl:text>&#10;</xsl:text>
19*1212f9a0SAndroid Build Coastguard Worker     <o><xsl:number format="I" value="1.00005"/></o><xsl:text>&#10;</xsl:text>
20*1212f9a0SAndroid Build Coastguard Worker	 <xsl:text>&#10;</xsl:text>
21*1212f9a0SAndroid Build Coastguard Worker
22*1212f9a0SAndroid Build Coastguard Worker  <!-- Round up to 7 -->
23*1212f9a0SAndroid Build Coastguard Worker     <s><xsl:number format="i" value="6.5000000000"/></s><xsl:text>&#10;</xsl:text>
24*1212f9a0SAndroid Build Coastguard Worker     <s><xsl:number format="1" value="6.51"/></s><xsl:text>&#10;</xsl:text>
25*1212f9a0SAndroid Build Coastguard Worker     <s><xsl:number format="01" value="6.501"/></s><xsl:text>&#10;</xsl:text>
26*1212f9a0SAndroid Build Coastguard Worker     <s><xsl:number format="A" value="6.5001"/></s><xsl:text>&#10;</xsl:text>
27*1212f9a0SAndroid Build Coastguard Worker     <s><xsl:number format="a" value="6.50001"/></s><xsl:text>&#10;</xsl:text>
28*1212f9a0SAndroid Build Coastguard Worker     <s><xsl:number format="I" value="6.500001"/></s><xsl:text>&#10;</xsl:text>
29*1212f9a0SAndroid Build Coastguard Worker	 <xsl:text>&#10;</xsl:text>
30*1212f9a0SAndroid Build Coastguard Worker
31*1212f9a0SAndroid Build Coastguard Worker  <!-- Round away two decimal places -->
32*1212f9a0SAndroid Build Coastguard Worker
33*1212f9a0SAndroid Build Coastguard Worker    <n><xsl:number format="1" value="99.03"/></n><xsl:text>&#10;</xsl:text>
34*1212f9a0SAndroid Build Coastguard Worker    <n><xsl:number format="01" value="99.13"/></n><xsl:text>&#10;</xsl:text>
35*1212f9a0SAndroid Build Coastguard Worker    <n><xsl:number format="A" value="99.23"/></n><xsl:text>&#10;</xsl:text>
36*1212f9a0SAndroid Build Coastguard Worker    <n><xsl:number format="a" value="99.33"/></n><xsl:text>&#10;</xsl:text>
37*1212f9a0SAndroid Build Coastguard Worker    <n><xsl:number format="I" value="99.43"/></n><xsl:text>&#10;</xsl:text>
38*1212f9a0SAndroid Build Coastguard Worker	 <xsl:text>&#10;</xsl:text>
39*1212f9a0SAndroid Build Coastguard Worker    <h><xsl:number format="i" value="99.50"/></h><xsl:text>&#10;</xsl:text>
40*1212f9a0SAndroid Build Coastguard Worker    <h><xsl:number format="1" value="99.53"/></h><xsl:text>&#10;</xsl:text>
41*1212f9a0SAndroid Build Coastguard Worker    <h><xsl:number format="01" value="99.63"/></h><xsl:text>&#10;</xsl:text>
42*1212f9a0SAndroid Build Coastguard Worker    <h><xsl:number format="A" value="99.73"/></h><xsl:text>&#10;</xsl:text>
43*1212f9a0SAndroid Build Coastguard Worker    <h><xsl:number format="a" value="99.83"/></h><xsl:text>&#10;</xsl:text>
44*1212f9a0SAndroid Build Coastguard Worker    <h><xsl:number format="I" value="99.93"/></h><xsl:text>&#10;</xsl:text>
45*1212f9a0SAndroid Build Coastguard Worker      <xsl:text>&#10;</xsl:text>
46*1212f9a0SAndroid Build Coastguard Worker
47*1212f9a0SAndroid Build Coastguard Worker  <!-- More edge cases -->
48*1212f9a0SAndroid Build Coastguard Worker
49*1212f9a0SAndroid Build Coastguard Worker    <t><xsl:number format="01" value="2.499"/></t><xsl:text>&#10;</xsl:text>
50*1212f9a0SAndroid Build Coastguard Worker    <t><xsl:number format="1" value="2.499999999"/></t><xsl:text>&#10;</xsl:text>
51*1212f9a0SAndroid Build Coastguard Worker  </out>
52*1212f9a0SAndroid Build Coastguard Worker</xsl:template>
53*1212f9a0SAndroid Build Coastguard Worker
54*1212f9a0SAndroid Build Coastguard Worker
55*1212f9a0SAndroid Build Coastguard Worker  <!--
56*1212f9a0SAndroid Build Coastguard Worker   * Licensed to the Apache Software Foundation (ASF) under one
57*1212f9a0SAndroid Build Coastguard Worker   * or more contributor license agreements. See the NOTICE file
58*1212f9a0SAndroid Build Coastguard Worker   * distributed with this work for additional information
59*1212f9a0SAndroid Build Coastguard Worker   * regarding copyright ownership. The ASF licenses this file
60*1212f9a0SAndroid Build Coastguard Worker   * to you under the Apache License, Version 2.0 (the  "License");
61*1212f9a0SAndroid Build Coastguard Worker   * you may not use this file except in compliance with the License.
62*1212f9a0SAndroid Build Coastguard Worker   * You may obtain a copy of the License at
63*1212f9a0SAndroid Build Coastguard Worker   *
64*1212f9a0SAndroid Build Coastguard Worker   *     http://www.apache.org/licenses/LICENSE-2.0
65*1212f9a0SAndroid Build Coastguard Worker   *
66*1212f9a0SAndroid Build Coastguard Worker   * Unless required by applicable law or agreed to in writing, software
67*1212f9a0SAndroid Build Coastguard Worker   * distributed under the License is distributed on an "AS IS" BASIS,
68*1212f9a0SAndroid Build Coastguard Worker   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
69*1212f9a0SAndroid Build Coastguard Worker   * See the License for the specific language governing permissions and
70*1212f9a0SAndroid Build Coastguard Worker   * limitations under the License.
71*1212f9a0SAndroid Build Coastguard Worker  -->
72*1212f9a0SAndroid Build Coastguard Worker
73*1212f9a0SAndroid Build Coastguard Worker</xsl:stylesheet>
74