Yes, and we also need to support the ability to pickup the schema annotations from an
external file. The jaxb mechanism for this has an xpath syntax where
An example from the jaxb2 spec, consider the following schema and external binding file.
Source Schema: A.xsd:
| <xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
xmlns:ens="http://example.com/ns"
|
targetNamespace="http://example.com/ns">
| <xs:complexType name="aType">
| <xs:sequence>
| <xs:element name="foo" type="xs:int"/>
| </xs:sequence>
| <xs:attribute name="bar" type="xs:int"/>
| </xs:complexType>
| <xs:element name="root" type="ens:aType"/>
| </xs:schema>
|
External binding declarations file:
| <
jaxb:bindingsxmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
|
xmlns:xs="http://www.w3.org/2001/XMLSchema"
| version="1.0">
| <jaxb:bindings schemaLocation='A.xs'>
| <jaxb:bindings node="//xs:complexType[@name=?aType?]?>
| <jaxb:class name="customNameType"/>
| <jaxb:bindings node=?.//xs:element[@name=?foo?]?>
| <jaxb:property name="customFoo"/>
| </jaxb:bindings>
| <jaxb:bindings node=?./xs:attribute[@name=?bar?]?>
| <jaxb:property name="customBar"/>
| </jaxb:bindings>
| </jaxb:bindings>
| </jaxb:bindings>
| </jaxb:bindings>
|
Conceptually, the combination of the source schema and external binding file above are the
equivalent of the following inline annotated schema.
| <xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
xmlns:ens="http://example.com/ns"
|
targetNamespace="http://example.com/ns"
|
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
| jaxb:version="1.0">
| <xs:complexType name="aType">
| <xs:annotation>
| <xs:appinfo>
| <jaxb:class name="customNameType"/>
| </xs:appinfo>
| </xs:annotation>
| <xs:sequence>
| <xs:element name="foo" type="xs:int">
| <xs:annotation>
| <xs:appinfo>
| <jaxb:property name="customFoo"/>
| </xs:appinfo>
| </xs:annotation>
| </xs:element>
| </xs:sequence>
| <xs:attribute name="bar" type="xs:int">
| <xs:annotation>
| <xs:appinfo>
| <jaxb:property name="customBar"/>
| </xs:appinfo>
| </xs:annotation>
| </xs:attribute>
| </xs:complexType>
| <xs:element name="root" type="ens:aType"/>
| </xs:schema>
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3976856#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...