Reprezentacja wartości dziesiętnej, np.2,5. Klienty mogą konwertować wartości na natywne formaty dziesiętne języka, np. Java [BigDecimal][] czy [decimal.Decimal][] języka Java.
[BigDecimal]: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/math/BigDecimal.html [decimal.Decimal]: https://docs.python.org/3/library/decimal.html
Zapis JSON |
---|
{ "value": string } |
Pola | |
---|---|
value |
Wartość dziesiętna jako ciąg znaków. Reprezentacja ciągu składa się z opcjonalnego znaku: Ułamek dziesiętny składa się z 0 lub większej liczby cyfr. Ciąg musi zawierać co najmniej jedną cyfrę w postaci liczby całkowitej lub ułamka. Liczba utworzona przez znak, liczba całkowita i ułamek są określane jako istotność. Wykładnik składa się ze znaku Usługi powinny normalizować wartości dziesiętne przed ich zapisaniem przez:
Usługi mogą wykonywać dodatkową normalizację na podstawie własnych potrzeb i wybranych wewnętrznie implementacji wartości dziesiętnych, np. przesunięcia przecinka i wartości wykładnika razem (np. Pamiętaj, że do dzielenia liczby całkowitej i ułamka można używać tylko znaku Gramatyka ENBF:
Usługi powinno jasno udokumentować zakres obsługiwanych wartości, maksymalną obsługiwaną dokładność (łączną liczbę cyfr) i, w odpowiednich przypadkach, skalę (liczbę cyfr po separatorze dziesiętnym) oraz sposób jej zachowania w przypadku odbierania wartości spoza zakresu. Usługi mogą akceptować wartości przekazywane jako dane wejściowe, nawet jeśli wartość ma większą precyzję lub skalę niż obsługiwana przez usługę, i powinna je zaokrąglić, aby pasowało do obsługiwanej skali. W przypadku utraty dokładności może wystąpić błąd usługi Usługi powinny otrzymać błąd w postaci |