⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 orm_1_0.xsd

📁 hibernate3.2.6源码和jar包
💻 XSD
📖 第 1 页 / 共 4 页
字号:
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="association-override">
        <xsd:annotation>
            <xsd:documentation>

                @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME)
                public @interface AssociationOverride {
                String name();
                JoinColumn[] joinColumns();
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="join-column" type="orm:join-column"
                         maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="id-class">
        <xsd:annotation>
            <xsd:documentation>

                @Target({TYPE}) @Retention(RUNTIME)
                public @interface IdClass {
                Class value();
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:attribute name="class" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="id">
        <xsd:annotation>
            <xsd:documentation>

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

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="column" type="orm:column"
                         minOccurs="0"/>
            <xsd:element name="generated-value" type="orm:generated-value"
                         minOccurs="0"/>
            <xsd:element name="temporal" type="orm:temporal"
                         minOccurs="0"/>
            <xsd:element name="table-generator" type="orm:table-generator"
                         minOccurs="0"/>
            <xsd:element name="sequence-generator" type="orm:sequence-generator"
                         minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="embedded-id">
        <xsd:annotation>
            <xsd:documentation>

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

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="attribute-override" type="orm:attribute-override"
                         minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="transient">
        <xsd:annotation>
            <xsd:documentation>

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

            </xsd:documentation>
        </xsd:annotation>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="version">
        <xsd:annotation>
            <xsd:documentation>

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

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="column" type="orm:column" minOccurs="0"/>
            <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="basic">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)
                public @interface Basic {
                FetchType fetch() default EAGER;
                boolean optional() default true;
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="column" type="orm:column" minOccurs="0"/>
            <xsd:choice>
                <xsd:element name="lob" type="orm:lob" minOccurs="0"/>
                <xsd:element name="temporal" type="orm:temporal" minOccurs="0"/>
                <xsd:element name="enumerated" type="orm:enumerated" minOccurs="0"/>
            </xsd:choice>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="fetch" type="orm:fetch-type"/>
        <xsd:attribute name="optional" type="xsd:boolean"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:simpleType name="fetch-type">
        <xsd:annotation>
            <xsd:documentation>

                public enum FetchType { LAZY, EAGER };

            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="LAZY"/>
            <xsd:enumeration value="EAGER"/>
        </xsd:restriction>
    </xsd:simpleType>

    <!-- **************************************************** -->

    <xsd:complexType name="lob">
        <xsd:annotation>
            <xsd:documentation>

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

            </xsd:documentation>
        </xsd:annotation>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:simpleType name="temporal">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)
                public @interface Temporal {
                TemporalType value();
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="orm:temporal-type"/>
    </xsd:simpleType>

    <!-- **************************************************** -->

    <xsd:simpleType name="temporal-type">
        <xsd:annotation>
            <xsd:documentation>

                public enum TemporalType {
                DATE, // java.sql.Date
                TIME, // java.sql.Time
                TIMESTAMP // java.sql.Timestamp
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="DATE"/>
            <xsd:enumeration value="TIME"/>
            <xsd:enumeration value="TIMESTAMP"/>
        </xsd:restriction>
    </xsd:simpleType>

    <!-- **************************************************** -->

    <xsd:simpleType name="enumerated">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)
                public @interface Enumerated {
                EnumType value() default ORDINAL;
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="orm:enum-type"/>
    </xsd:simpleType>

    <!-- **************************************************** -->

    <xsd:simpleType name="enum-type">
        <xsd:annotation>
            <xsd:documentation>

                public enum EnumType {
                ORDINAL,
                STRING
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="ORDINAL"/>
            <xsd:enumeration value="STRING"/>
        </xsd:restriction>
    </xsd:simpleType>

    <!-- **************************************************** -->

    <xsd:complexType name="many-to-one">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)
                public @interface ManyToOne {
                Class targetEntity() default void.class;
                CascadeType[] cascade() default {};
                FetchType fetch() default EAGER;
                boolean optional() default true;
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:choice>
                <xsd:element name="join-column" type="orm:join-column"
                             minOccurs="0" maxOccurs="unbounded"/>
                <xsd:element name="join-table" type="orm:join-table"
                             minOccurs="0"/>
            </xsd:choice>
            <xsd:element name="cascade" type="orm:cascade-type"
                         minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="target-entity" type="xsd:string"/>
        <xsd:attribute name="fetch" type="orm:fetch-type"/>
        <xsd:attribute name="optional" type="xsd:boolean"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="cascade-type">
        <xsd:annotation>
            <xsd:documentation>

                public enum CascadeType { ALL, PERSIST, MERGE, REMOVE, REFRESH};

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="cascade-all" type="orm:emptyType"
                         minOccurs="0"/>
            <xsd:element name="cascade-persist" type="orm:emptyType"
                         minOccurs="0"/>
            <xsd:element name="cascade-merge" type="orm:emptyType"
                         minOccurs="0"/>
            <xsd:element name="cascade-remove" type="orm:emptyType"
                         minOccurs="0"/>
            <xsd:element name="cascade-refresh" type="orm:emptyType"
                         minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="one-to-one">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)
                public @interface OneToOne {
                Class targetEntity() default void.class;
                CascadeType[] cascade() default {};
                FetchType fetch() default EAGER;
                boolean optional() default true;
                String mappedBy() default "";
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:choice>
                <xsd:element name="primary-key-join-column"
                             type="orm:primary-key-join-column"
                             minOccurs="0" maxOccurs="unbounded"/>
                <xsd:element name="join-column" type="orm:join-column"
                             minOccurs="0" maxOccurs="unbounded"/>
                <xsd:element name="join-table" type="orm:join-table"
                             minOccurs="0"/>
            </xsd:choice>
            <xsd:element name="cascade" type="orm:cascade-type"
                         minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="target-entity" type="xsd:string"/>
        <xsd:attribute name="fetch" type="orm:fetch-type"/>
        <xsd:attribute name="optional" type="xsd:boolean"/>
        <xsd:attribute name="mapped-by" type="xsd:string"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="one-to-many">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)
                public @interface OneToMany {
                Class targetEntity() default void.class;
                CascadeType[] cascade() default {};
                FetchType fetch() default LAZY;
                String mappedBy() default "";
                }

            </xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="order-by" type="orm:order-by"
                         minOccurs="0"/>
            <xsd:element name="map-key" type="orm:map-key"
                         minOccurs="0"/>
            <xsd:choice>
                <xsd:element name="join-table" type="orm:join-table"
                             minOccurs="0"/>
                <xsd:element name="join-column" type="orm:join-column"
                             minOccurs="0" maxOccurs="unbounded"/>
            </xsd:choice>
            <xsd:element name="cascade" type="orm:cascade-type"
                         minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="target-entity" type="xsd:string"/>
        <xsd:attribute name="fetch" type="orm:fetch-type"/>
        <xsd:attribute name="mapped-by" type="xsd:string"/>
    </xsd:complexType>

    <!-- **************************************************** -->

    <xsd:complexType name="join-table">
        <xsd:annotation>
            <xsd:documentation>

                @Target({METHOD, FIELD}) @Retention(RUNTIME)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -