01: /*
02: * (c) Copyright 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
03: * [See end of file]
04: */
05:
06: package com.hp.hpl.jena.rdf.arp.states;
07:
08: import org.xml.sax.Attributes;
09: import org.xml.sax.SAXParseException;
10:
11: import com.hp.hpl.jena.rdf.arp.impl.ARPDatatypeLiteral;
12: import com.hp.hpl.jena.rdf.arp.impl.AbsXMLContext;
13: import com.hp.hpl.jena.rdf.arp.impl.URIReference;
14:
15: public class WantTypedLiteral extends AbsWantLiteralValueOrDescription
16: implements FrameI {
17:
18: final URIReference dtURI;
19:
20: public WantTypedLiteral(WantsObjectFrameI p, String datatypeURI,
21: AbsXMLContext ap) throws SAXParseException {
22: super (p, ap);
23: dtURI = URIReference.resolve(this , xml, datatypeURI);
24: }
25:
26: public FrameI startElement(String uri, String localName,
27: String rawName, Attributes atts) throws SAXParseException {
28: warning(ERR_SYNTAX_ERROR, "Cannot have XML element content <"
29: + rawName + ">as part of typed literal");
30:
31: return super .startElement(uri, localName, rawName, atts);
32: }
33:
34: public void endElement() throws SAXParseException {
35: ARPDatatypeLiteral datatypeLiteral = new ARPDatatypeLiteral(
36: this , getBuf().toString(), dtURI);
37: if (taint.isTainted())
38: datatypeLiteral.taint();
39: ((WantsObjectFrameI) getParent()).theObject(datatypeLiteral);
40: super .endElement();
41: }
42:
43: public void afterChild() {
44: }
45:
46: }
47:
48: /*
49: * (c) Copyright 2005, 2006, 2007, 2008 Hewlett-Packard Development Company, LP
50: * All rights reserved.
51: *
52: * Redistribution and use in source and binary forms, with or without
53: * modification, are permitted provided that the following conditions
54: * are met:
55: * 1. Redistributions of source code must retain the above copyright
56: * notice, this list of conditions and the following disclaimer.
57: * 2. Redistributions in binary form must reproduce the above copyright
58: * notice, this list of conditions and the following disclaimer in the
59: * documentation and/or other materials provided with the distribution.
60: * 3. The name of the author may not be used to endorse or promote products
61: * derived from this software without specific prior written permission.
62: *
63: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
64: * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
65: * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
66: * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
67: * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
68: * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
69: * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
70: * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
71: * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
72: * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
73: */
|