1 |
/* Xmlizable.java -- Marks a class as convertable to an XML tree. |
/* Xmlizable.java -- Defines the XML serialization process for a class. |
2 |
Copyright (C) 2005 The University of Sheffield. |
Copyright (C) 2005 The University of Sheffield. |
3 |
|
|
4 |
This file is part of the CASheW-s editor. |
This file is part of the CASheW-s editor. |
21 |
|
|
22 |
package nongnu.cashews.xml; |
package nongnu.cashews.xml; |
23 |
|
|
24 |
|
import java.io.Serializable; |
25 |
|
|
26 |
|
import javax.xml.namespace.QName; |
27 |
|
|
28 |
/** |
/** |
29 |
* Marks a class that can be converted to an XML tree. |
* Specifies that a class can be converted to an XML tree. The methods |
30 |
|
* specified by this class allow additional information to be specified |
31 |
|
* to the serializer. |
32 |
* |
* |
33 |
* @author Andrew John Hughes (gnu_andrew@member.fsf.org) |
* @author Andrew John Hughes (gnu_andrew@member.fsf.org) |
34 |
* @see Serializer |
* @see Serializer |
35 |
*/ |
*/ |
36 |
public interface Xmlizable |
public interface Xmlizable |
37 |
|
extends Serializable |
38 |
{ |
{ |
39 |
|
|
40 |
|
/** |
41 |
|
* Retrieves the name to use for the XML element that represents |
42 |
|
* this class. If <code>null</code> is specified, the class name |
43 |
|
* will be used with the first letter set to lowercase. |
44 |
|
* |
45 |
|
* @return the element name, or <code>null</code> if the class name |
46 |
|
* should be used. |
47 |
|
*/ |
48 |
|
String getElementName(); |
49 |
|
|
50 |
|
/** |
51 |
|
* Retrieves an array of qualified names which specifies the |
52 |
|
* namespaces to declare when serializing this element as XML. |
53 |
|
* Specifying <code>null</code> or an empty array corresponds to no |
54 |
|
* namespace declarations. |
55 |
|
* |
56 |
|
* @return an array of qualified names for namespace declaration. |
57 |
|
*/ |
58 |
|
QName[] getDeclaredNamespaces(); |
59 |
|
|
60 |
} |
} |