01: /*
02:
03: Licensed to the Apache Software Foundation (ASF) under one or more
04: contributor license agreements. See the NOTICE file distributed with
05: this work for additional information regarding copyright ownership.
06: The ASF licenses this file to You under the Apache License, Version 2.0
07: (the "License"); you may not use this file except in compliance with
08: the License. You may obtain a copy of the License at
09:
10: http://www.apache.org/licenses/LICENSE-2.0
11:
12: Unless required by applicable law or agreed to in writing, software
13: distributed under the License is distributed on an "AS IS" BASIS,
14: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15: See the License for the specific language governing permissions and
16: limitations under the License.
17:
18: */
19: package org.apache.batik.dom.svg;
20:
21: /**
22: * Interface for SVG DOM classes to expose information about the traits
23: * (XML attributes and CSS properties) their elements support.
24: *
25: * @author <a href="mailto:cam%40mcc%2eid%2eau">Cameron McCormack</a>
26: * @version $Id: ExtendedTraitAccess.java 479349 2006-11-26 11:54:23Z cam $
27: */
28: public interface ExtendedTraitAccess extends TraitAccess {
29:
30: /**
31: * Returns whether the given CSS property is available on this element.
32: */
33: boolean hasProperty(String pn);
34:
35: /**
36: * Returns whether the given trait is available on this element.
37: */
38: boolean hasTrait(String ns, String ln);
39:
40: /**
41: * Returns whether the given CSS property is animatable.
42: */
43: boolean isPropertyAnimatable(String pn);
44:
45: /**
46: * Returns whether the given XML attribute is animatable.
47: */
48: boolean isAttributeAnimatable(String ns, String ln);
49:
50: /**
51: * Returns whether the given CSS property is additive.
52: */
53: boolean isPropertyAdditive(String pn);
54:
55: /**
56: * Returns whether the given XML attribute is additive.
57: */
58: boolean isAttributeAdditive(String ns, String ln);
59:
60: /**
61: * Returns whether the given trait is animatable.
62: */
63: boolean isTraitAnimatable(String ns, String tn);
64:
65: /**
66: * Returns whether the given trait is additive.
67: */
68: boolean isTraitAdditive(String ns, String tn);
69:
70: /**
71: * Returns the SVG type of the given CSS property. Must return one of
72: * the TYPE_* constants defined in {@link org.apache.batik.util.SVGTypes}.
73: */
74: int getPropertyType(String pn);
75:
76: /**
77: * Returns the SVG type of the given XML attribute. Must return one of
78: * the TYPE_* constants defined in {@link org.apache.batik.util.SVGTypes}.
79: */
80: int getAttributeType(String ns, String ln);
81: }
|