[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XML Schema date syntax
Lars Marius Garshol <larsga@g...> writes: > I have recently come across a case where one wants to make an XML > Schema for the interchange syntax for an existing standard based on > relational databases. > > This existing standard already has a lexical representation for its > dates, of the form CCYYMMDD. The question is, how can one make an XML > Schema data type for dates that have this lexical representation? > > I see that XML Schema allows dates to have a pattern constraining > facet, the question is just how this will be interpreted by tools. > If the pattern were to be defined as > > '[12][0-9][0-9][0-9][01][0-9][0-3][0-9]' > > what would this mean? Would tools accept it? It means what you think, but it shouldn't be accepted. For better or worse, XML Schema v.1 operates a "sender must make right" approach to data representation: we define the lexical form, you must conform to it if you want the specified semantics. In the absence of micro-syntax<-->semantics mapping rules, this is the only way to guarantee applications will know what date is actually meant. This is why Rick Jelliffe says XML Schema puts the needs of data-orientated applications, which are presumed to care about semantics, ahead of the needs of document-orientated applications, which are presumed to just want to validate character sequences, and are only making semantic assertions for human-consumption/legacy-application-documentation, not for real interoperability. You can get the effect you desire with a type definition such as <xs:simpleType name="myDate"> <xs:restriction base="xs:token"> <xs:pattern value="[12][0-9][0-9][0-9](0[1-9]|1[0-2])([0-2][0-9]|3[01])"/> </xs:restriction> </xs:simpleType> which is of course still not quite right, because it allows e.g. 19990230. See Michael Sperberg-McQueen's article in Markup [ref not immediately available] for a regexp which does much better. ht -- Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh W3C Fellow 1999--2001, part-time member of W3C Team 2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440 Fax: (44) 131 650-4587, e-mail: ht@c... URL: http://www.ltg.ed.ac.uk/~ht/
|
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
|