モジュール java.xml.bind
パッケージ javax.xml.bind.annotation

注釈型XmlAttribute



  • @Retention(RUNTIME)
    @Target({FIELD,METHOD})
    public @interface XmlAttribute

    JavaBeanプロパティをXML属性にマップします。

    使用法

    @XmlAttribute注釈は、次のプログラム要素で使用できます。

    • JavaBeanプロパティ
    • フィールド

    static finalフィールドは、XML固定属性にマップされます。

    追加の一般的な情報については、javax.xml.bind.package javadocの「パッケージの仕様」を参照してください。

    使用には次の制約があります。
    • フィールドまたはプロパティの型がコレクション型の場合、コレクション項目の型がスキーマ単純型にマップされなければいけません。
           // Examples
           @XmlAttribute List<Integer> items; //legal
           @XmlAttribute List<Bar> foo; // illegal if Bar does not map to a schema simple type
       
    • フィールドまたはプロパティの型がコレクション型でない場合、そのプロパティまたはフィールドの型が単純スキーマ型にマップされなければいけません。
           // Examples
           @XmlAttribute int foo; // legal
           @XmlAttribute Foo foo; // illegal if Foo does not map to a schema simple type
       
    • この注釈型は、次の注釈型とともに使用できます。XmlIDXmlIDREFXmlListXmlSchemaTypeXmlValueXmlAttachmentRefXmlMimeTypeXmlInlineBinaryDataXmlJavaTypeAdapter

    例1: JavaBeanプロパティをXML属性にマップします。

         //Example: Code fragment
         public class USPrice {
             @XmlAttribute
             public java.math.BigDecimal getPrice() {...} ;
             public void setPrice(java.math.BigDecimal ) {...};
         }
     
    
         <!-- Example: XML Schema fragment -->
         <xs:complexType name="USPrice">
           <xs:sequence>
           </xs:sequence>
           <xs:attribute name="price" type="xs:decimal"/>
         </xs:complexType>
     

    例2: JavaBeanプロパティを、匿名型を使用したXML属性にマップします。

    @XmlTypeの例7を参照してください。

    例3: JavaBeanコレクション・プロパティをXML属性にマップします。

         // Example: Code fragment
         class Foo {
             ...
             @XmlAttribute List<Integer> items;
         }
     
    
         <!-- Example: XML Schema fragment -->
         <xs:complexType name="foo">
           ...
           <xs:attribute name="items">
             <xs:simpleType>
               <xs:list itemType="xs:int"/>
             </xs:simpleType>
         </xs:complexType>
    
     
    導入されたバージョン:
    1.6, JAXB 2.0
    関連項目:
    XmlType
    • オプション要素のサマリー

      オプションの要素 
      修飾子と型 オプション要素 説明
      String name
      XMLスキーマ属性の名前です。
      String namespace
      XML Schema属性のXMLターゲット名前空間を指定します。
      boolean required
      XML Schema属性が省略可能か必須かを指定します。
    • 要素の詳細

      • name

        String name
        XMLスキーマ属性の名前です。 デフォルトでは、XMLスキーマ属性名は、JavaBeanプロパティ名から派生します。
        デフォルト:
        「##default」
      • required

        boolean required
        XML Schema属性が省略可能か必須かを指定します。 trueの場合、JavaBeanプロパティは、必須のXMLスキーマ属性にマップされます。 そうでない場合、省略可能なXMLスキーマ属性にマップされます。
        デフォルト:
        false
      • namespace

        String namespace
        XML Schema属性のXMLターゲット名前空間を指定します。
        デフォルト:
        「##default」