|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
This interface represents an XML resource. You can use it to load and save XML files. This initial implementation of XML serialization and deserialization is incomplete but will be completed shortly.
Nested Class Summary | |
static interface |
XMLResource.ResourceHandler
|
static interface |
XMLResource.XMLInfo
This interface is used with the XMLMap interface to describe how to serialize objects and features. |
static interface |
XMLResource.XMLMap
This interface represents a mapping from Ecore constructs to the XML representation of those constructs. |
Nested classes inherited from class org.eclipse.emf.ecore.resource.Resource |
Resource.Diagnostic, Resource.Factory, Resource.Internal, Resource.IOWrappedException |
Field Summary | |
static String |
HREF
|
static String |
NIL
|
static String |
NO_NAMESPACE_SCHEMA_LOCATION
|
static String |
OPTION_ANY_SIMPLE_TYPE
This option allows to specify an EClass for the implementation for anySimpleType. |
static String |
OPTION_ANY_TYPE
This option allows to specify an EClass for the implementation for anyType. |
static String |
OPTION_CONFIGURATION_CACHE
Generic option for enable caching (during save and load) to improve performance. |
static String |
OPTION_DECLARE_XML
Begin a save with this line: |
static String |
OPTION_DEFER_ATTACHMENT
Defer adding the root object to the resource until the end of the load when the tree is complete. |
static String |
OPTION_DEFER_IDREF_RESOLUTION
Defer resolution of same document references until the end of the document is reached. |
static String |
OPTION_DISABLE_NOTIFY
Disable notifications during load, and enable them at the end of a load. |
static String |
OPTION_DOM_USE_NAMESPACES_IN_SCOPE
This is option should be used when loading a resource from a DOM Element node, to specify that load method should take into account all the namespaces declarations in scope for this node (by visiting parents of the node being loaded). |
static String |
OPTION_ENCODING
Specify the XML encoding to be used during save. |
static String |
OPTION_EXTENDED_META_DATA
This option allows you to tailor the XML serialization of objects. |
static String |
OPTION_FLUSH_THRESHOLD
Flush the output stream whenever the number of characters/bytes pending exceeds the specified Integer value. |
static String |
OPTION_FORMATTED
Break lines and add indentation to produce a readable document. |
static String |
OPTION_KEEP_DEFAULT_CONTENT
Keep default content ( e.g. default attributes). |
static String |
OPTION_LAX_FEATURE_PROCESSING
Turn this load option on to indicate that a feature should be populated from either an attribute or an element even if its feature kind is specified (e.g. element). |
static String |
OPTION_LINE_WIDTH
Attribute formatting that exceeds the specified width will cause a line break so that formatting will continue indented on the next line. |
static String |
OPTION_PARSER_FEATURES
Specify parser features with their corresponding values, i.e., true or false using XMLResource.XMLMap .
|
static String |
OPTION_PARSER_PROPERTIES
Specify parser properties with their corresponding values using a XMLResource.XMLMap .
|
static String |
OPTION_PROCESS_DANGLING_HREF
This can be one of "THROW", "DISCARD", "RECORD", where "THROW" is the default. |
static String |
OPTION_PROCESS_DANGLING_HREF_DISCARD
|
static String |
OPTION_PROCESS_DANGLING_HREF_RECORD
|
static String |
OPTION_PROCESS_DANGLING_HREF_THROW
|
static String |
OPTION_RECORD_ANY_TYPE_NAMESPACE_DECLARATIONS
Enable preserving namespace declarations on elements of type AnyType |
static String |
OPTION_RECORD_UNKNOWN_FEATURE
This options allows you to record unknown features during deserialization/loading. |
static String |
OPTION_RESOURCE_HANDLER
Implementations can register the resource handler to receive call backs for loading from InputStream or saving to OutputStream resources. |
static String |
OPTION_SAVE_DOCTYPE
Save a doctype declaration using systemId and publicId values specified on the resource |
static String |
OPTION_SAVE_TYPE_INFORMATION
Use XMLTypeInfo to determine whether type information (xsi:type/xmi:type) is to be serialized for references. |
static String |
OPTION_SCHEMA_LOCATION
Produce an xsi:schemaLocation/xsi:noNamespaceSchemaLocation in the saved result. |
static String |
OPTION_SCHEMA_LOCATION_IMPLEMENTATION
Produce an xsi:schemaLocation/xsi:noNamespaceSchemaLocation in the saved result to encode the name of the Java interface that declares the eINSTANCE of the EPackage implementation for those cases where OPTION_SCHEMA_LOCATION would not produce a physical location URI. |
static String |
OPTION_SKIP_ESCAPE
Skip processing for values that contain characters special to XML Faster for large computer-generated files |
static String |
OPTION_SKIP_ESCAPE_URI
Skip escaping special characters, such as '&' char, in URIs during XML serialization. |
static String |
OPTION_USE_CACHED_LOOKUP_TABLE
Specify a place holder List for caching information during the subsequent saving of XML documents.
|
static String |
OPTION_USE_DEPRECATED_METHODS
Use deprecated methods - the default is true .
|
static String |
OPTION_USE_ENCODED_ATTRIBUTE_STYLE
All EObject references will be uniformly encoded as one or more QName URI pairs, where the QName is optional depending on whether the referenced object's type is not identicle to that of the feature. |
static String |
OPTION_USE_FILE_BUFFER
Write the intermediate results of serialization to the file system rather to an in-memory buffer. |
static String |
OPTION_USE_LEXICAL_HANDLER
Determines whether comments and CDATA will be preserved in any mixed text processing. |
static String |
OPTION_USE_PARSER_POOL
Specify a parser pool to be used for loading XML documents from InputStream. |
static String |
OPTION_USE_XML_NAME_TO_FEATURE_MAP
Specify a map XMLResource.XMLMap to be used during the subsequent loading of XML documents.
|
static String |
OPTION_XML_MAP
This save option allows you to tailor the XML serialization of objects. |
static String |
OPTION_XML_OPTIONS
Allows the user to specify XML options XMLOptions and default implementation you can use XMLOptionsImpl |
static String |
OPTION_XML_VERSION
Specify the XML version to be used during save. |
static String |
SCHEMA_LOCATION
|
static String |
TYPE
|
static String |
XML_NS
|
static String |
XML_SCHEMA_URI
|
static String |
XSI_NS
|
static String |
XSI_URI
|
Fields inherited from interface org.eclipse.emf.ecore.resource.Resource |
OPTION_CIPHER, OPTION_ZIP, RESOURCE__CONTENTS, RESOURCE__ERRORS, RESOURCE__IS_LOADED, RESOURCE__IS_MODIFIED, RESOURCE__IS_TRACKING_MODIFICATION, RESOURCE__RESOURCE_SET, RESOURCE__URI, RESOURCE__WARNINGS |
Method Summary | |
Map |
getDefaultLoadOptions()
Returns the map of options that, in addition to the overriding options specified during load, are used to to control load behavior. |
Map |
getDefaultSaveOptions()
Returns the map of options that, in addition to the overriding options specified during save, are used to to control save behavior. |
DOMHelper |
getDOMHelper()
Returns the DOMHelper |
String |
getEncoding()
Get the XML encoding for this resource. |
Map |
getEObjectToExtensionMap()
Returns the map with EObject as keys and corresponding AnyType s as the values.
|
Map |
getEObjectToIDMap()
Deprecated. since 2.1.0 This map should not be manipulated directly. Use setID(EObject, String) and getID(EObject) or
Resource.getEObject(String) instead. This method may be removed from
this interface. |
String |
getID(EObject eObject)
Returns the ID that was assigned with setID(EObject, String) ; if there is
no ID, it returns null. |
Map |
getIDToEObjectMap()
Deprecated. since 2.1.0 This map should not be manipulated directly. Use setID(EObject, String) and getID(EObject) or
Resource.getEObject(String) instead. This method may be removed from
this interface. |
String |
getPublicId()
Returns public identifier specified on the doctype. |
String |
getSystemId()
Returns system identifier specified on the doctype. |
String |
getXMLVersion()
Get the XML version for this resource. |
void |
load(InputSource inputSource,
Map options)
|
void |
load(Node node,
Map options)
Loads the resource from the DOM node, either an Element or Document, using the specified options. |
Document |
save(Document document,
Map options,
DOMHandler handler)
Create a DOM tree representing contents of this resource. |
void |
save(Writer writer,
Map options)
Saves the resource to the writer using the specified options. |
void |
setDoctypeInfo(String publicId,
String systemId)
Sets the values of system and public identifiers on this resource. |
void |
setEncoding(String encoding)
Set the XML encoding for this resource. |
void |
setID(EObject eObject,
String id)
Sets the ID for the given object. |
void |
setUseZip(boolean useZip)
Set whether the contents will be zipped. |
void |
setXMLVersion(String version)
Set the XML version for this resource |
boolean |
useZip()
Returns whether the contents will be zipped. |
Methods inherited from interface org.eclipse.emf.ecore.resource.Resource |
getAllContents, getContents, getEObject, getErrors, getResourceSet, getURI, getURIFragment, getWarnings, isLoaded, isModified, isTrackingModification, load, load, save, save, setModified, setTrackingModification, setURI, unload |
Methods inherited from interface org.eclipse.emf.common.notify.Notifier |
eAdapters, eDeliver, eNotify, eSetDeliver |
Field Detail |
public static final String OPTION_USE_PARSER_POOL
This option can dramatically improve performance for deserialization (loading) of XML resource.
XMLParserPool
,
Constant Field Valuespublic static final String OPTION_USE_XML_NAME_TO_FEATURE_MAP
Specify a map XMLResource.XMLMap
to be used during the subsequent loading of XML documents.
This is mapping between XML name, namespace and an EClass to the corresponding EStructuralFeature.
This option can significantly improve performance for deserialization (loading) of multiple XML resources which are based on the same model (XML Schema or Ecore).
EClass
,
EStructuralFeature
,
Constant Field Valuespublic static final String OPTION_USE_CACHED_LOOKUP_TABLE
List
for caching information during the subsequent saving of XML documents.
This option can improve performance for serialization (saving) of multiple XML resources. This option
is similar to the OPTION_USE_XML_NAME_TO_FEATURE_MAP which is used for deserialization (loading).
public static final String OPTION_USE_DEPRECATED_METHODS
true
.
To improve deserialization performance turn this option to false
.
The methods affected are:
Note: if you use this option the SAX parser used for parsing documents must be namespace-aware parser, i.e. the namespaces should be turned on for the parser used. The default parser implementation is not namespace-aware. To turn on namespaces, either use OPTION_USE_PARSER_POOL or overwrite XMLLoadImpl#makeParser()
public static final String OPTION_CONFIGURATION_CACHE
ConfigurationCache
to cache the following things:
public static final String OPTION_SAVE_TYPE_INFORMATION
public static final String OPTION_PARSER_FEATURES
true
or false
using XMLResource.XMLMap
.
This option is applicable during loading of XML resources from an InputStream
public static final String OPTION_PARSER_PROPERTIES
XMLResource.XMLMap
.
This option is applicable during loading of XML resources from an InputStream.
public static final String OPTION_USE_LEXICAL_HANDLER
public static final String OPTION_DOM_USE_NAMESPACES_IN_SCOPE
Note that loading will only succeed if the subset of DOM being loaded could be treated as a valid resource according to the model.
public static final String OPTION_EXTENDED_META_DATA
BasicExtendedMetaData
,
Constant Field Valuespublic static final String OPTION_ANY_TYPE
org.eclipse.emf.ecore.sdo.SDOPackage
getEDataObjectAnyType()
.
OPTION_ANY_SIMPLE_TYPE
,
Constant Field Valuespublic static final String OPTION_ANY_SIMPLE_TYPE
org.eclipse.emf.ecore.sdo.SDOPackage
getEDataObjectSimpleAnyType()
method.
OPTION_ANY_TYPE
,
Constant Field Valuespublic static final String OPTION_XML_MAP
It is strongly suggested to use instead of this option the ExtendedMetaData.
OPTION_EXTENDED_META_DATA
,
Constant Field Valuespublic static final String OPTION_USE_ENCODED_ATTRIBUTE_STYLE
public static final String OPTION_FORMATTED
Boolean.TRUE
unless set to Boolean.FALSE
explicitly.
public static final String OPTION_LINE_WIDTH
public static final String OPTION_DECLARE_XML
public static final String OPTION_KEEP_DEFAULT_CONTENT
Boolean.TRUE
.
public static final String OPTION_SAVE_DOCTYPE
getSystemId()
,
getPublicId()
,
setDoctypeInfo(String,String)
,
Constant Field Valuespublic static final String OPTION_SKIP_ESCAPE
public static final String OPTION_SKIP_ESCAPE_URI
Boolean.TRUE
. To enforce escaping special characters, set this
option to Boolean.FALSE
.
public static final String OPTION_PROCESS_DANGLING_HREF
public static final String OPTION_PROCESS_DANGLING_HREF_THROW
public static final String OPTION_PROCESS_DANGLING_HREF_DISCARD
public static final String OPTION_PROCESS_DANGLING_HREF_RECORD
public static final String OPTION_RECORD_UNKNOWN_FEATURE
Boolean.FALSE
unless set to Boolean.TRUE
explicitly.
The unknown features and their values can be accessed via getEObjectToExtensionMap().
{@link #getEObjectToExtensionMap}
,
Constant Field Valuespublic static final String OPTION_LAX_FEATURE_PROCESSING
Boolean.FALSE
unless set to Boolean.TRUE
explicitly.
public static final String OPTION_XML_OPTIONS
XMLOptions
and default implementation you can use XMLOptionsImpl
public static final String OPTION_DISABLE_NOTIFY
public static final String OPTION_SCHEMA_LOCATION
public static final String OPTION_SCHEMA_LOCATION_IMPLEMENTATION
public static final String OPTION_ENCODING
public static final String OPTION_XML_VERSION
public static final String OPTION_RECORD_ANY_TYPE_NAMESPACE_DECLARATIONS
AnyType
public static final String OPTION_FLUSH_THRESHOLD
public static final String OPTION_USE_FILE_BUFFER
Boolean.FALSE
unless set to Boolean.TRUE
explicitly.
public static final String OPTION_DEFER_IDREF_RESOLUTION
public static final String OPTION_RESOURCE_HANDLER
XMLResource.ResourceHandler
,
BasicResourceHandler
,
Constant Field Valuespublic static final String OPTION_DEFER_ATTACHMENT
public static final String HREF
public static final String NIL
public static final String TYPE
public static final String SCHEMA_LOCATION
public static final String NO_NAMESPACE_SCHEMA_LOCATION
public static final String XML_NS
public static final String XSI_NS
public static final String XSI_URI
public static final String XML_SCHEMA_URI
Method Detail |
public boolean useZip()
public void setUseZip(boolean useZip)
public Map getDefaultSaveOptions()
public Map getDefaultLoadOptions()
public String getPublicId()
public String getSystemId()
public void setDoctypeInfo(String publicId, String systemId)
publicId
- systemId
- public String getEncoding()
public void setEncoding(String encoding)
public String getXMLVersion()
public void setXMLVersion(String version)
public Map getIDToEObjectMap()
setID(EObject, String)
and getID(EObject)
or
Resource.getEObject(String)
instead. This method may be removed from
this interface.
public Map getEObjectToIDMap()
setID(EObject, String)
and getID(EObject)
or
Resource.getEObject(String)
instead. This method may be removed from
this interface.
public String getID(EObject eObject)
setID(EObject, String)
; if there is
no ID, it returns null.
public void setID(EObject eObject, String id)
null
as the id value.
public Map getEObjectToExtensionMap()
EObject
as keys and corresponding AnyType
s as the values.
It's used to record unrecognized elements and attributes.
public Document save(Document document, Map options, DOMHandler handler)
document
- an empty Document
to use or null. If no document is specified, the
new Document
will be created using JAXP API.options
- the "save" optionshandler
- the DOMHandler
to record mappings or null.
If no DOMHandler is passed, the default DOMHandler will be created.
Document
. In the case the document is specified as a parameter,
the returned document is the same as the one specified, otherwise the newly created document is returned.public void save(Writer writer, Map options) throws IOException
writer
- the writeroptions
- the save options.
IOException
public DOMHelper getDOMHelper()
DOMHelper
public void load(Node node, Map options) throws IOException
This method assumes that no namespace fixup needs to be done. To process comments and CDATA section nodes, please set XMLResource.OPTION_USE_LEXICAL_HANDLER option to Boolean.TRUE.
node
- DOM Element or Document node.options
- the load options.
IOException
save(Document, Map, DOMHandler)
public void load(InputSource inputSource, Map options) throws IOException
IOException
|
Copyright 2001-2006 IBM Corporation and others. All Rights Reserved. |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |