Spec-Zone .ru
спецификации, руководства, описания, API
|
@Retention(value=RUNTIME) @Target(value=PACKAGE) public @interface XmlSchema
Отображает имя пакета к пространству имен XML.
Аннотация XmlSchema может использоваться со следующими элементами программы:
Это - аннотация уровня пакета и следует за рекомендациями, и ограничения, содержавшиеся в JSR 175, разделите III, "Аннотации". Таким образом использование подвергается следующим ограничениям и рекомендациям.
Пример 1: Настройте имя пространства имен XML, на которое отображается пакет.
@javax.xml.bind.annotation.XmlSchema ( namespace = "http://www.example.com/MYPO1" ) <!-- XML Schema fragment --> <schema xmlns=... xmlns:po=.... targetNamespace="http://www.example.com/MYPO1" > <!-- prefixes generated by default are implementation depedenent -->
Пример 2: префикс пространства имен Customize, отображение URI пространства имен
// Package level annotation @javax.xml.bind.annotation.XmlSchema ( xmlns = { @javax.xml.bind.annotation.XmlNs(prefix = "po", namespaceURI="http://www.example.com/myPO1"), @javax.xml.bind.annotation.XmlNs(prefix="xs", namespaceURI="http://www.w3.org/2001/XMLSchema") ) ) <!-- XML Schema fragment --> <schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:po="http://www.example.com/PO1" targetNamespace="http://www.example.com/PO1">
Пример 3: Настройте elementFormDefault
@javax.xml.bind.annotation.XmlSchema ( elementFormDefault=XmlNsForm.UNQUALIFIED ... ) <!-- XML Schema fragment --> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:po="http://www.example.com/PO1" elementFormDefault="unqualified">
Модификатор и Тип | Дополнительный Элемент и Описание |
---|---|
XmlNsForm |
attributeFormDefault
Квалификация пространства имен для атрибутов.
|
XmlNsForm |
elementFormDefault
Квалификация пространства имен для элементов.
|
Строка |
расположение
Указывает что это пространство имен (определенный
namespace() ) имеет схему, уже доступную экс-вечно, доступный в этом расположении. |
Строка |
пространство имен
Имя пространства имен XML.
|
XmlNs[] |
xmlns
Настройте URI пространства имен, снабдите префиксом ассоциации.
|
public abstract XmlNs[] xmlns
public abstract String namespace
public abstract XmlNsForm elementFormDefault
public abstract XmlNsForm attributeFormDefault
public abstract String location
namespace()
) имеет схему, уже доступную экс-вечно, доступный в этом расположении. Это дает генераторам схемы JAXB команду просто ссылаться на схему, на которую указывают, в противоположность генерированию компонентов в схему. Эта схема, как предполагается, соответствует то, что было бы иначе произведено генератором схемы (те же самые имена элементов, те же самые имена типов...)
Эта функция предназначается, чтобы использоваться, когда ряд классов Java первоначально сгенерирован из существующей схемы, написанной от руки, чтобы соответствовать внешне определенную схему, или сгенерированная схема изменяется вручную.
Значение могло быть любым абсолютным URI, как http://example.org/some.xsd. Также возможно определить пустую строку, указать, что схема внешне доступна, но расположение является неуказанным (и таким образом это - ответственность читателя генерировать схемы, чтобы определить местоположение этого.) Наконец, значение по умолчанию этого свойства "##generate" указывает, что генератор схемы собирается генерировать компоненты для этого пространства имен (как это сделало в JAXB 2.0.)
Многократный XmlSchema
аннотациям на многократные пакеты позволяют управлять тем же самым namespace()
. В таком случае у всех их должно быть то же самое location()
значения.
Более точно значением должен быть или "", "##generate", или
Генератор схемы, как ожидают, генерирует соответствующий <xs:import namespace="..." schemaLocation="..."/> (или никакой атрибут schemaLocation вообще, если пустая строка будет определена.) Однако, генератору схемы позволяют использовать различное значение в атрибуте schemaLocation (включая не генерирование такого атрибута), например так, чтобы пользователь мог определить локальную копию ресурса через интерфейс командной строки.
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.