Next in thread → Next in month →

XML Quiz

From
Roger L Costello <>
To
"" <>
Date
2023-03-26T14:40:01Z
ID
<>
Thread
XML Quiz
Scenario: an XML Schema has this top-level element declaration:

<xs:element name="num" type="xs:integer"/>

An XML Schema validator is provided two files:

1. An XML Schema file that contains the above element declaration.
2. An XML file containing this:

<num>44</num>

The XML Schema validator is "executed". It proceeds to determine whether the XML conforms to the XML Schema. 

Within the <num> element the validator sees this sequence of characters '4' '4'. 

Is '4' '4' an integer? 

Clearly it is not. It is a string that consists of two characters. 

So how does the validator decide that 44 **represents** an integer?

Scroll down to see the answer ...














Answer: the XML Schema validator determines that the content (44) of the <num> element is an xs:integer because the content obeys the syntax of xs:integer. That is, the string within the <num> element obeys this regular expression:  [+-]?[0-9]+ 

Recap:
1. 44 is not an integer. It is a string.
2. XML does not contain integers (or floats or booleans or URLs or anything else). XML only contains a sequence of characters.
3. An application -- such as an XML Schema validator -- determines that 44 is an integer by checking 44 against a regular expression for integers. That is, the validator sees if 44 obeys the syntax of xs:integer.
Next in thread → Next in month →