[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XML Schema 1.0 files
I think I did something similar only recently. My XML schema had attributes marking the "interesting" xsd:element (and xsd:attribute) definitions. Based on this I created a key with the names of the marked elements. <xsl:key name="kSkips" match="element()[@my:mark='1']" use="@name"/> Key lookup uses name() to identify an "interesting" element in the XML. -W On 27/03/2013, davep <davep@xxxxxxxxxxxxx> wrote: > On 27/03/13 10:56, Philip Fearon wrote: >> I haven't done this myself (and I may be missing something obvious), >> but have you tried using the XPath 2.0 fn:resolve-QName() function >> (http://www.w3.org/TR/xpath-functions/#func-resolve-QName) ? >> >> The xs:QName result of this function can then be used as the argument >> for fn:namespace-uri-from-QName() to return the namespace URI. >> >> Phil Fearon > > > I think not Phil? > net.sf.saxon.s9api.SaxonApiException: Function resolve-QName() must have > 2 arguments > > I want to query with a localname only? > This because the element may be in any one of a number of namespaces? > > Thanks for the suggestion though. > > regards > > >> >> On Wed, Mar 27, 2013 at 10:14 AM, davep <davep@xxxxxxxxxxxxx> wrote: >>> Given an XML schema, I want to find files containing definitions & >>> references of a particular element >>> >>> Root is >>> >>> <xsd:schema xmlns="http://www.x" >>> targetNamespace="http://www.x" >>> ... >>> >>> Later I see >>> >>> <xsd:element ref="X"/> >>> >>> and >>> >>> <xsd:element name="X"> >>> but also >>> <xsd:element ref="dc:X"/> >>> >>> >>> I'm looking for some xslt 2.0 that will combine >>> them to search for element X definitions and references >>> and report their namespace. >>> I'm working on a directory, so I'll be using collection() but >>> for one file all I want to know is >>> if element X (ref or def) is in the file, and if so, what the >>> appropriate >>> namespace is. >>> So the stylesheet parameters are the localname and the >>> returned value either nothing (not found) or the namespace in which the >>> element is, indicating it was found? >>> AFAICT in the above example, the namespace is >>> /xsd:schema/@targetNamespace >>> >>> Has anyone done this before please? >>> >>> TiA >>> >>> regards >>> >>> -- >>> Dave Pawson >>> XSLT XSL-FO FAQ. >>> http://www.dpawson.co.uk >>> >> >> > > > > regards > > -- > Dave Pawson > XSLT XSL-FO FAQ. > http://www.dpawson.co.uk
|
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
|