[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Brain Teaser: Element Author is of type xsd:string, what's
I thought your answer was going to be that the XML Schema spec requires a string to be finite length whereas the XML spec allows the content of an element to be of infinite length; but a validator might take a long time to report the error... The invalid strings you list cannot appear in XML 1.0 documents, only in XML 1.1. There's a W3C note on handling XML 1.1 with XML Schema: http://www.w3.org/TR/xml11schema10/ and it recommends (see the last line of the note) that with that combination, the definitions of the built-in types should be "stretched" to accommodate the characters allowed in XML 1.1. With that strategy, there will never be an invalid instance of xs:string. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Costello, Roger L. [mailto:costello@m...] > Sent: 09 February 2007 12:59 > To: xml-dev@l... > Subject: Brain Teaser: Element Author is of type > xsd:string, what's an illegal value of Author? > > Hi Folks, > > [This may be obvious to you. It wasn't to me, so I thought > that I'd share my insight.] > > Suppose I declare an Author element to be of type string: > > <xsd:element name="Author" type="xsd:string" /> > > Then I create an XML instance document: > > <?xml version="1.0"?> > <Book> > <Author>...</Author> > </Book> > > Question: what is an invalid (non-string) value for <Author>? > > If the Author contains "<" or "@" > > <Author> if A < B then </Author> > > then it is not well-formed. However, that's not the same > thing as giving Author a non-string value. > > So what's the answer? Doesn't "string" mean that Author can > contain anything, and there are no illegal values for Author? > > Scroll down to see the answer..... > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > These are the characters that comprise the string datatype > (these are the hex values of the characters): > > #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] > > Thus, an illegal value of Author is any character that falls > outside this set of characters. For example, this is illegal: > > <Author></Author> > > because hex 8 is not in the above list of hex values. But hex 9 is > allowed: > > <Author>	</Author> > > So, these are all illegal values of Author: > > �        >   >          >        >   > ... > > ______________________________________________________________ > _________ > > XML-DEV is a publicly archived, unmoderated list hosted by > OASIS to support XML implementation and development. To > minimize spam in the archives, you must subscribe before posting. > > [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/ > Or unsubscribe: xml-dev-unsubscribe@l... > subscribe: xml-dev-subscribe@l... List archive: > http://lists.xml.org/archives/xml-dev/ > List Guidelines: http://www.oasis-open.org/maillists/guidelines.php >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|