Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EclipseLink/DesignDocs/317962/Phase3"
(→xml-discriminator-node) |
|||
Line 17: | Line 17: | ||
! Method | ! Method | ||
|- | |- | ||
− | | | + | | XmlDiscriminatorNode |
| xml-discriminator-node | | xml-discriminator-node | ||
| align="center" | | | align="center" | | ||
Line 24: | Line 24: | ||
| align="center" | | | align="center" | | ||
|- | |- | ||
− | | | + | | XmlDiscriminatorValue |
| xml-discriminator-value | | xml-discriminator-value | ||
| align="center" | | | align="center" | | ||
Line 32: | Line 32: | ||
|} | |} | ||
− | == | + | == XmlDiscriminatorNode == |
=== Purpose === | === Purpose === | ||
Provide a means to set the class type indicator when using inheritance. | Provide a means to set the class type indicator when using inheritance. |
Revision as of 12:02, 17 August 2010
Phase 3 - MOXy Equavilents of EclipseLink JPA Annotations
This phase of development involves providing additional MOXy annotations and XML metadata support equivalent to that of EclipseLink JPA.
Annotations/XML Metadata
The following MOXy annotations/XML metadata will be targeted in this phase:
MOXy Annotation | XML Metadata Tag | Package | Type | Field | Method |
---|---|---|---|---|---|
XmlDiscriminatorNode | xml-discriminator-node | X | |||
XmlDiscriminatorValue | xml-discriminator-value | X |
XmlDiscriminatorNode
Purpose
Provide a means to set the class type indicator when using inheritance.
Java Metadata
package org.eclipse.persistence.oxm.annotations; @Target({TYPE}) @Retention(RUNTIME) public @interface XmlDiscriminatorNode { String value(); }
XML Metadata
xml-discriminator-node
The xml-discriminator-node
metadata tag will be used to set the class type indicator when using inheritance. The value will be in the form of an XPath to an attribute, i.e. @xsi:type
.
XML Schema
Following is the proposed XSD change necessary to provide this support:
<xs:element name="java-type"> <xs:complexType> <xs:all> <xs:element ref="xml-type" minOccurs="0"/> <xs:element ref="xml-root-element" minOccurs="0"/> <xs:element ref="xml-see-also" minOccurs="0"/> <xs:element ref="xml-java-type-adapter" minOccurs="0"/> <xs:element ref="xml-class-extractor" minOccurs="0"/> <xs:element ref="xml-properties" minOccurs="0" /> <xs:element name="java-attributes" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element ref="java-attribute" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> </xs:all> <xs:attribute name="name" type="xs:string" /> <xs:attribute name="xml-accessor-order" type="xml-access-order" default="UNDEFINED" /> <xs:attribute name="xml-accessor-type" type="xml-access-type" default="PUBLIC_MEMBER" /> <xs:attribute name="xml-customizer" type="xs:string" /> <xs:attribute name="xml-discriminator-node" type="xs:string" /> <xs:attribute name="xml-inline-binary-data" type="xs:boolean" default="false" /> <xs:attribute name="xml-transient" type="xs:boolean" default="false" /> </xs:complexType> </xs:element>
Example:
The following example will demonstrate ...
Testing
This section identifies the test package(s) for each feature outlined on this page.
XML Metadata
XML Metadata | Package |
---|---|
|
Annotations
Annotation | Package |
---|---|
|
Open Issues
This section lists open issues.
Issue# | Description/Notes |
---|---|
1 |
Decisions
This section lists decisions made. These are intended to document the resolution of open issues or constraints added to the project that are important.
Decision# | Description/Notes | Decision |
---|---|---|
1 |