Okey, this indeed clears some things out...

Will search for other solution eventually
(it would rather be a 'nice to have' than a must for my app --> automatically generating forms based on the scheme, I would use the annotations to provide the user some information about the fields...)

Grtz

Ward

Radu Preotiuc-Pietro schreef:
Hi,
For the annotations inside <element ref=...> and <attributeGroup ref=...>, the answer is that those are not accessible as per XMLSchema; <element ref=...> corresponds to what XMLSchema calls a "particle" (http://www.w3.org/TR/xmlschema-1/#declare-element) and those don't have annotations and <attributeGroup ref=...> doesn't correspond to any component at all (http://www.w3.org/TR/xmlschema-1/#declare-attributeGroup). Now, one can ask why are they even allowed if they are not accessible and indeed if you look at the second link it says at some point " in the second [case] the |ref| attribute is required, and the element must be empty". So maybe XMLBeans should flag an error, but I have to say this is a "gray" area of the spec and I would have to check the Schema mailing lists to see if this has been brought up. For the third case, <attribute name=...>, you need to get the SchemaLocalAttribute object representing that attribute (via SchemaType.getAttributeModel()) and that will have a getAnnotation() method. Oh, and I should also mention that even in the cases where the annotations are not accessible, you can get the textual representation of the Schema as an XmlObject. Then, of course, you will get access to the annotations, if this is critical for your app, but you'll have to search for them. Hope this helps,
Radu

    ------------------------------------------------------------------------
    *From:* Ward [mailto:[email protected]]
    *Sent:* Friday, April 03, 2009 4:54 AM
    *To:* [email protected]
    *Subject:* Retrieving annotation/documentation of
    elements/attributes/attribute-groups

    Hello,

    I'm working with XMLBeans for some weeks now, but now I'm interested
    in accessing the documentation availlable in my xsd-scheme.
    Until now I only managed to get the documentation directly under any
    complextype, but not the documentation specific to any element,
    attribute or attributegroup

    Consider following snippet from my scheme:

        <complexType name="titleType">
            <annotation>
                <documentation><!-- THIS DOCUMENTATION I CAN ACCESS -->
     The name given to a resource e.g. a media item, media object, sequence.
                    For a series – use the series title; for a programme
    – a programme title; for an
                    item – an item title. etc. To differentiate between
    a series title and programme
                    title when these are identical, recommended best
    practice is to use a date along
                    with the programme title. For example, “News” is a
    series title; “News 2007.11.12”
                    is a programme title. Titles are recorded as they
    appear. </documentation>
            </annotation>
            <sequence>
                <element ref="dc:title">
                    <annotation>
                        <documentation>
    <!--HOW CAN I ACCESS THIS DOCUMENTATION??? -->
    The EBU core metadata set is built as a refinement of the Dublin
                            Core. </documentation>
                    </annotation>
                </element>
            </sequence>
            <attributeGroup ref="ebucore:typeGroup">
                <annotation>
                    <documentation>
    <!--HOW CAN I ACCESS THIS DOCUMENTATION??? -->
    The typeGroup is used to define the type of Title such as Episode,
                        Programme, Collection, Programme Group, Series,
    Item, Scene, Shot, Element,
                        Segment, Project, , Series Number, Episode
    Number, Scene Number, Take Number
                        Recording, Album, etc. The name of the type can
    be provided in the form of a
                        text label, or a link to a code of a
    classification scheme, optionally
                        accompanied by a definition</documentation>
                </annotation>
            </attributeGroup>
            <attribute name="note" type="string">
                <annotation>
                    <documentation> Optional addditional contextual
    information. <!--HOW CAN I ACCESS THIS DOCUMENTATION??? -->
    </documentation>
                </annotation>
            </attribute>
        </complexType>

    Any ideas on this?

    Thanks in advance

    Ward

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to