01: /*
02: * The contents of this file are subject to the terms
03: * of the Common Development and Distribution License
04: * (the "License"). You may not use this file except
05: * in compliance with the License.
06: *
07: * You can obtain a copy of the license at
08: * https://jwsdp.dev.java.net/CDDLv1.0.html
09: * See the License for the specific language governing
10: * permissions and limitations under the License.
11: *
12: * When distributing Covered Code, include this CDDL
13: * HEADER in each file and include the License file at
14: * https://jwsdp.dev.java.net/CDDLv1.0.html If applicable,
15: * add the following below this CDDL HEADER, with the
16: * fields enclosed by brackets "[]" replaced with your
17: * own identifying information: Portions Copyright [yyyy]
18: * [name of copyright owner]
19: */
20: package com.sun.xml.xsom;
21:
22: import org.xml.sax.Locator;
23: import com.sun.xml.xsom.parser.AnnotationParser;
24:
25: /**
26: * <a href="http://www.w3.org/TR/xmlschema-1/#Annotation_details">
27: * XML Schema annotation</a>.
28: *
29: *
30: */
31: public interface XSAnnotation {
32: /**
33: * Obtains the application-parsed annotation.
34: * <p>
35: * annotations are parsed by the user-specified
36: * {@link AnnotationParser}.
37: *
38: * @return may return null
39: */
40: Object getAnnotation();
41:
42: /**
43: * Sets the value to be returned by {@link #getAnnotation()}.
44: *
45: * @param o
46: * can be null.
47: * @return
48: * old value that was replaced by the <tt>o</tt>.
49: */
50: Object setAnnotation(Object o);
51:
52: /**
53: * Returns a location information of the annotation.
54: */
55: Locator getLocator();
56: }
|