|
Subject: Re: [xsl] How to check an element's type against an XSD simpleType and skip that element if it does not conform to the simpleType? From: Martin Honnen <Martin.Honnen@xxxxxx> Date: Tue, 16 Jul 2013 14:25:25 +0200 |
Michael Kay wrote:
Unfortunately schema-aware processing in XQuery and XSLT doesn't give you this capability.
Is there a workaround?
Is there is no way for an XSLT program to express: "Hey, validate xyz against the XML Schema and if xyz is not schema-valid then discard it." No way to express that?
<BookStore xmlns="http://www.books.org"> <Book> <Title>My Life and Times</Title> <Author>Paul McCartney</Author> <Date>1998</Date> <ISBN>xxx1-56592-235-2</ISBN> <Publisher>McMillan Publishing</Publisher> </Book> <Book> <Title>Killing Time</Title> <ISBN>1-12345-123-1</ISBN> </Book> </BookStore>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bk="http://www.books.org" exclude-result-prefixes="bk" version="2.0">
<xsl:import-schema namespace="http://www.books.org" schema-location="test2013071602.xsd"/>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.books.org" xmlns="http://www.books.org" elementFormDefault="qualified">
<xsd:element name="Book">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="Title"/>
<xsd:element ref="Author"/>
<xsd:element ref="Date"/>
<xsd:element ref="ISBN"/>
<xsd:element ref="Publisher"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element> <xsd:element name="Title" type="xsd:string"/>
<xsd:element name="Author" type="xsd:string"/>
<xsd:element name="Date" type="xsd:string"/>
<xsd:element name="ISBN" type="ISBN-type"/>
<xsd:element name="Publisher" type="xsd:string"/> </xsd:restriction>
</xsd:simpleType>| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] How to check an element's, Costello, Roger L. | Thread | Re: [xsl] How to check an element's, David Carlisle |
| RE: [xsl] How to check an element's, Costello, Roger L. | Date | Re: [xsl] How to check an element's, David Carlisle |
| Month |