This is a feature request for the XMI 2.1 RTF. (Does
it have a mailing list? I'm crossposting to the XML
Schema FTF in case that list is still alive.)
My base document is the proposed available specification
(ptc/02-06-03). (I did not find a later version.)
Section 2.10.2, "Linking" specifies that "the URI
reference must be of the form URI#id_value, where URI
locates the XML file containing the XML element to link
to, and id_value is the value of the XML element's XMI
id attribute."
I propose to add the feature that if the URI does not
contain a fragment, then the link is to the outermost
document element of the referenced file.
This is a common use case, and allows linking to a
document that was provided by someone else and not
annotated with values for the optional xmi:id attribute.
Therefore I propose to change the text in 2.10.2.1 (the
"Using the XMI href attribute to locate an XMI id" sub-
section):
The URI reference must be of the form URI#id_value,
where URI locates the XML file containing the XML
element to link to, and id_value is the value of
the XML element's XMI id attribute.
to
If the URI reference contains a fragment identifier
(as in URI#id_value), then the URI locates an XML
file, and the fragment identifier is used to locate
an XML element with the fragment identifier as its
XMI id attribute. If the URI reference does not
contain a fragment identifier, then the outermost
document element of the XML file is referenced.
And to change, in 2.10.2.2 (the "Using an XLink simple
link and XPointer bare name to locate an XMI id" sub-
section) likewise:
The value of xlink:href must again be a URI reference
of the form URI#id_value. In this case, id_value is
technically an XPointer bare name, but it looks just
like the id_value for the XMI href attribute.
to
The value of xlink:href must again be a URI reference,
which is evaluated as above. If the URI reference
contains a fragment identifier, which is then
technically an XPointer bare name, then the fragment
identifier is used to locate an XML element with the
fragment identifier as its XMI id attribute in the
referenced XML file. If the URI reference does not
contain a fragment identifier, then the outermost
document element of the XML file is referenced.