<reversexref>
Summary
A cross-reference from another document pointing to this document or fragment.
This element is informational – ignored by upload.
Reverse xrefs include both block and inline xrefs which have been defined as bidirectional, plus images and links.
Reverse xrefs are part of the document or fragment metadata and always reflect existing xrefs in the content. They cannot be used to create xrefs between documents and are generated by the system.
Terminology
The source document refers to the document containing the original xref in its content. The target document refers to document being pointed at.
Reverse xrefs are bidirectional by definition. The forward direction refers to the reference from the source to the target. The reverse direction refers to the reference from the target back to the source.
In the context of a reverse xref, the source document is the other document, and the target is this document.
Usage context
Element category | metadata |
---|---|
PSML level | metatada |
Permitted content | none |
Permitted parent | <reversexrefs> |
HTML equivalent | no equivalent |
OpenXML equivalent | no equivalent |
Attributes
This element includes the following attributes:
Name | Type | Required | Description |
---|---|---|---|
archived | boolean | no | Whether the source document is archived |
config | xref-config | no | The xref config name for this xref |
docid | document-id | no | The Doc ID of the source document |
documenttype | document-type | no | The source document type |
external | boolean | no | Whether the source document is external |
forwardtitle | xs:string | no | The title of the xref |
forwardtype | xref-type + image | no | The type of xref |
forwarddisplay | xref-display | no | Defines format of target link text |
forwardfrag | fragment-id | no | The fragment of the target |
frag | fragment-id | no | The fragment of the source |
href | xs:string | no | The path of the source document |
id | xs:long | no | The ID of the XLink |
labels | label-list | no | The labels of the xref |
level | xref-level | no | The level that the heading numbering of the target document is to start from |
mediatype | xs:string | no | The source document’s media type |
title | xs:string | no | The manual reverse title of the xref |
type | xref-type | no | The reverse type of the xref, always none |
uriid | xs:long | no | The ID of the source document |
urititle | xs:string | no | The title of the source document |
urilabels | label-list | no | Labels of the source document (generated) |
urltype | document-type | no | The source URL type (external URIs only) |
@archived
A boolean flag indicating whether the source document is archived. INFORMATIONAL - ignored by upload.
This attribute was introduced in PSML v1.3 in PageSeeder 5.99.
@config
The xref config name used when creating/editing this xref.
This attribute was introduced in PSML v1.4 in PageSeeder 6.
@docid
The Doc ID of the document which contains the original xref, if it has one, AND the original xref uses the Doc ID (through the @docid
attribute) to refer to this document.
@documenttype
An informational attribute provided for convenience to indicate the type of document linking to this document.
@external
If true
, the source is a URL.
This attribute was introduced in PSML v1.4 in PageSeeder 6.
@forwardtitle
The title of the xref in the forward direction. In other words, this is the title of xref to this document used by the source document.
@forwardtype
The type of xref in the forward direction.
The type of XLink, can have the following values:
embed
– Replace this element’s content with the document/fragment pointed to when publishing (only valid for<blockxref>
).transclude
– Replace this element’s content with the document/fragment pointed to when displaying (only valid for<blockxref>
).image
– Replace this element's@src
with the image pointed to when displaying (only valid for<image>
).link
– Replace this element's@href
with the URL pointed to when displaying (only valid for<link>
).math
– Replace this element's content with the equation pointed to when displaying.alternate
– An alternate representation of the current document.none
– no special processing.
@forwarddisplay
Defines how the target link text of this xref is displayed (Default is document
).
The following values are allowed:
document
– [document title].document+manual
– [document title]: [manual title].document+fragment
– [document title]: [target fragment id].manual
– [manual title].
@forwardfrag
The fragment of the target document of the xref.
@frag
The fragment of the source document containing the xref.
@href
The path to the source document.
@id
The ID of the XLink corresponding to the xref.
The ID is specific to the PageSeeder instance.
@labels
A comma-separated list of labels on the xref. The labels apply to both directions, but they are set in the forward direction.
@level
The level that the heading numbering of the target document is to start from (1 to 5).
@mediatype
The media type of the source document.
@title
The manual title in the reverse direction. In other words, the title for the xref when referring to the source document.
@type
The only supported reverse type is none
, indicating that there is no special processing.
@uriid
The URI ID of the source document.
The URI ID is specific to the PageSeeder instance.
@urititle
The title of the source document as defined by its URI.
@urilabels
A comma-separated list of labels of the source URI. Introduced in v0.11 of the PSML schema in PageSeeder v5.95.
@urltype
An informational attribute provided for convenience to indicate the type of URL linking to this document (external URI sources only).
This attribute was introduced in PSML v1.3 in PageSeeder 5.99.
Examples
Example 1: xref
The following is a reversexref from an xref inline within the text of a help document:
<reversexref uriid="346" href="/ps/sample/help/terms/mathematics.psml" frag="3" urititle="Mathematics" mediatype="application/vnd.pageseeder.psml+xml" documenttype="help" id="3560" title="Supported formats" config="default" type="none" forwardtype="none" forwardtitle="AsciiMath" forwarddisplay="manual" forwardfrag="default"/>
It corresponds to the following <xref>:
<xref id="3560" title="AsciiMath" frag="default" reversefrag="3" reversetitle="Supported formats" reverselink="true" reversetype="none" display="manual" config="default" type="none" uriid="375" href="/ps/sample/help/terms/ascii_math.psml" urititle="AsciiMath" urilabels="term" mediatype="application/vnd.pageseeder.psml+xml" documenttype="help">AsciiMath</xref>
Example 2: embed xref
The following is a <reversexref>
from a references document using an embed
xref type.
<reversexref uriid="816" href="/ps/sample/documentation/system_requirements.psml" frag="2" urititle="System Requirements" mediatype="application/vnd.pageseeder.psml+xml" documenttype="references" id="6156" title="References" type="none" forwardtype="embed" forwarddisplay="document" forwardfrag="default"/>
It corresponds to the following <blockxref>:
<blockxref id="6156" frag="default" reversefrag="2" reversetitle="References" reverselink="true" reversetype="none" display="document" type="embed" uriid="807" href="/ps/sample/documentation/sr/design_constraints.psml" urititle="Design Constraints" mediatype="application/vnd.pageseeder.psml+xml">Design Constraints</blockxref>
Example 3: transclusion
The following is the <reversexref>
for a transclusion.
<reversexref uriid="3379" href="/ps/sample/documentation/introduction.psml" frag="2" urititle="main" mediatype="application/vnd.pageseeder.psml+xml" id="19114" title="" config="default" type="none" forwardtype="transclude" forwarddisplay="document" forwardfrag="2" />
It corresponds to the following <blockxref>
:
<blockxref id="19114" frag="2" reversefrag="2" reversetitle="" reverselink="true" reversetype="none" display="document" config="default" type="transclude" uriid="3380" href="/ps/sample/documentation/common_terms.psml" urititle="Common terms" mediatype="application/vnd.pageseeder.psml+xml">Common terms</blockxref>
Example 4: image
The following is the <reversexref>
for an image:
<reversexref uriid="176" href="/ps/sample/help/layout/toolbar.psml" frag="10" urititle="Document toolbar" mediatype="application/vnd.pageseeder.psml+xml" documenttype="help" id="2245" title="" type="none" forwardtype="image" forwardfrag="default"/>
It corresponds to the following <image>
:
<image src="/ps/sample/help/images/edit_button.png" uriid="568" width="250" height="222" alt="Edit button"/>
Schema
XML Schema
<xs:element name="reversexref"> <xs:complexType> <xs:attribute name="archived" type="xs:boolean" use="optional"/> <xs:attribute name="config" type="xref-config" use="optional"/> <xs:attribute name="uriid" type="xs:long"/> <xs:attribute name="docid" type="document-id" use="optional"/> <xs:attribute name="frag" type="fragment-id"/> <xs:attribute name="href" type="xs:string"/> <xs:attribute name="title" type="xs:string" use="optional"/> <xs:attribute name="forwardtitle" type="xs:string" use="optional"/> <xs:attribute name="urititle" type="xs:string"/> <xs:attribute name="level"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:pattern value="[1-5]"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="id" type="xs:long"/> <xs:attribute name="type"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="none"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="forwardtype"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="alternate"/> <xs:enumeration value="embed"/> <xs:enumeration value="image"/> <xs:enumeration value="link"/> <xs:enumeration value="math"/> <xs:enumeration value="none"/> <xs:enumeration value="transclude"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="forwarddisplay"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="document" /> <xs:enumeration value="document+manual" /> <xs:enumeration value="document+fragment" /> <xs:enumeration value="manual" /> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="forwardfrag" type="fragment-id"/> <xs:attribute name="labels" type="xs:string" use="optional"/> <xs:attribute name="urilabels" type="xs:string" use="optional"/> <xs:attribute name="mediatype" type="xs:string"/> <xs:attribute name="documenttype" type="xs:string"/> <xs:attribute name="external" type="xs:boolean"/> <xs:attribute name="urlttype" type="xs:string"/> </xs:complexType> </xs:element>
Relax schema
element reversexref { attribute archived { xs:boolean }?, attribute config { xref-config }?, attribute uriid { xs:long }, attribute docid { document-id }?, attribute frag { fragment-id }, attribute href { text }, attribute title { text }, attribute forwardtitle { text }?, attribute urititle { text }?, attribute level { xs:integer }?, attribute id { xs:long }?, attribute type { string "none" }, attribute forwardtype { "none" | "alternate" | "embed" | "transclude" | "image" | "link" | "math" }?, attribute forwarddisplay { "document" | "document+manual" | "document+fragment" | "manual" }?, attribute forwardfrag { fragment-id }, attribute labels { text }?, attribute urilabels { text }?, attribute mediatype { text }, attribute documenttype { text }?, attribute external {xs:boolean } attribute urltype { text }?, }
Compatibility
This element was introduced in the first draft of PSML and is well-supported from PageSeeder 5.1.
The urilabels
attribute was introduced in v0.11 of the PSML schema in PageSeeder 5.95.
The urltype
and archived
attributes were introduced in PSML v1.3 in PageSeeder 5.99.
The config
attribute was introduced in PSML v1.4 in PageSeeder 6.