[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XSLT program that generates XSD, the XSD has a pa
How about using XSLT constructors, so the part of interest is just a string? <xsl:element name="pattern" namespace="http://www.w3.org/2001/XMLSchema"> <xsl:attribute name="value"> <xsl:text>[a-z\{\}]*</xsl:text> </xsl:attribute> </xsl:element> > I am writing an XSLT program that outputs an XML Schema. > > The generated XML Schema is to contain a simpleType, with a pattern > facet. Its regex is to express: zero or more lowercase letters of > the English alphabet, the left curly brace, and the right curly > brace: > > <xs:simpleType name="Stuff"> > <xs:restriction base="xs:string"> > <xs:pattern value="[a-z\{\}]*" /> > </xs:restriction> > </xs:simpleType> > > The curly braces are special symbols in the regex language, so I > escaped them: \{ and \} > > Interestingly, the curly braces are also special symbols in the > XSLT language. That's causing me problems. > > Below is my XSLT program. It doesn't work - an error is generated because of the curly braces. Note that replacing the curly braces with their character references also failed: > > <xs:pattern value="[a-z\{\ }]*" /> > > What's the right way to do this? /Roger > > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:xs="http://www.w3.org/2001/XMLSchema" > exclude-result-prefixes="xs" > version="2.0"> > > <xsl:output method="xml" /> > > <xsl:template match="/"> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> > <xs:element name="Test" type="Stuff" /> > <xs:simpleType name="Stuff"> > <xs:restriction base="xs:string"> > <xs:pattern value="[a-z\{\}]*" /> > </xs:restriction> > </xs:simpleType> > </xs:schema> > </xsl:template> > > </xsl:stylesheet>
|
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
|