Ansicht
Dokumentation

ABENST_XSD_TYPE - ST XSD TYPE

ABENST_XSD_TYPE - ST XSD TYPE

CPI1466 during Backup   rdisp/max_wprun_time - Maximum work process run time  
This documentation is copyright by SAP AG.
SAP E-Book

- xsd-type, Validation

... xsd-type="type"
   $[xsd-maxInclusive="max"$]
   $[xsd-maxExclusive ="max"$]
   $[xsd-minInclusive="min"$]
   $[xsd-minExclusive ="min"$]
   $[xsd-totalDigits="dgts"$]
   $[xsd-fractionDigits="dgts"$] ...


Effect

These attributes can be used with tt:value, and tt:write and tt:read to validate the value.

The attribute xsd-type can be used to specify an XML schema data type type. The serialized or deserialized value must be in the value range of this type. If not, an exception of the class CX_ST_VALIDATION_ERROR is raised, which is not caught directly but by using CX_ST_SERIALIZATION_ERROR, CX_ST_DESERIALIZATION_ERROR, and its superclasses. The following subtypes of xsd:decimal can be specified for type:

xsd:byte, xsd:decimal, xsd:int, xsd:integer, xsd:long, xsd:negativeInteger, xsd:nonNegativeInteger, xsd:nonPosistiveInteger, xsd:positiveInteger, xsd:short, xsd:unsignedByte, xsd:unsignedInt, xsd:unsignedLong, and xsd:unsignedShort.

Together with the attribute xsd-type, the following restrictions (constraining facets) allowed by the XML schema can be specified as further attributes:

  • xsd-maxInclusive, xsd-maxExclusive
The value must be less than or equal to or less than max. max must be in the value range of the XML schema data type and cannot be less than a simultaneous lower limit min.
  • xsd-minInclusive, xsd-minExclusive
The value must be greater than or equal to or greater than min. min must be in the value range of the XML schema data type and cannot be greater than a simultaneous upper limit max.
  • xsd-totalDigits, fractionDigits
The value can have a maximum of dgts digits or decimal places. dgts must fit the other restrictions.

After the transformation from ABAP, serializations perform the validation to XML. Before the transformation from XML, deserializations perform the validation to ABAP. In both cases, the data type of the bound ABAP data object is ignored.

Example

Serialization of ABAP Data with Validation

tt:transform
  xmlns:tt="http://www.sap.com/transformation-templates">
  tt:root name="NUM"/>
  tt:template>
    Number>
      tt:value ref="NUM"
          xsd-type="short" xsd-minInclusive="30000"/>
    /Number>
  /tt:template>
/tt:transform>

The transformation only accepts numbers between 30000 and 32767. The following ABAP program calls the transformation and catches the validation exceptions.

PARAMETERS int TYPE i.
DATA xml_string TYPE string.
TRY.
    CALL TRANSFORMATION ...
         SOURCE num = int
         RESULT XML xml_string.
    WRITE / 'OK'.
  CATCH cx_st_error.
    WRITE / 'Not OK'.
ENDTRY.






CL_GUI_FRONTEND_SERVICES - Frontend Services   BAL_S_LOG - Application Log: Log header data  
This documentation is copyright by SAP AG.

Length: 5742 Date: 20240420 Time: 013243     sap01-206 ( 61 ms )