Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Context UDI"

(New page: * A ContextIdDatatype MUST conform to the ABNF defined below. == See Also == * ContextId)
 
(See Also)
Line 1: Line 1:
 
 
* A [[ContextIdDatatype]] MUST conform to the ABNF defined below.
 
* A [[ContextIdDatatype]] MUST conform to the ABNF defined below.
 +
 +
== Syntax ==
 +
The following [http://en.wikipedia.org/wiki/Augmented_Backus-Naur_form ABNF] defines a Higgins [[ContextId]]. All rules not defined in this ABNF are defined in the [http://wiki.oasis-open.org/xri/XriCd02/Xri2dot0Abnf ABNF for XRI 2.0] (which includes the IRI ABNF from [http://www.ietf.org/rfc/rfc3987.txt RFC 3987]) except:
 +
* '''xri2-authority''' and '''xri2-subseg''' are the '''xri-authority''' and '''xri-subset''' rules defined in the [http://wiki.oasis-open.org/xri/XriCd02/Xri2dot0Abnf ABNF for XRI 2.0]
 +
* '''xri3-authority''' and '''xri3-subseg''' are the '''xri-authority''' and '''xri-subset''' rules defined in the [http://wiki.oasis-open.org/xri/XriThree/SyntaxAbnf proposed ABNF for XRI 3.0]
 +
 +
<pre>
 +
contextId          = contextURI / contextXRI
 +
 +
contextURI        = contextfileURI / contexthttpURI
 +
contextfileURI    = [ "file://" ] ipath-abempty descriptor-ext
 +
descriptor-ext    = ".xrds" / ".xdi"                                      ;see note 1
 +
contexthttpURI    = ( "http://" / "https://" ) iauthority
 +
                    ipath-abempty [ descriptor-ext ] [ "?" iquery ]
 +
 +
contextXRI        = contextQXRI /                                        ;see note 2
 +
                    contextHXRI                                          ;see note 3
 +
contextQXRI        = ( [ "xri://" ] xri2-contextQXRI ) /
 +
                    ( [ "xri:" ] xri3-contextQXRI )
 +
xri2-contextQXRI  = xri2-authority [ "/($context)" *xri2-subseg ]
 +
xri3-contextQXRI  = xri3-authority [ "/$context" *xri3-subseg ]
 +
contextHXRI        = proxy-URI "/" (xri2-contextQXRI / xri3-contextQXRI )
 +
proxy-URI          = ( "http://" / "https://" ) proxy-reg-name
 +
proxy-reg-name    = "xri." ireg-name
 +
</pre>
 +
 +
Notes:
 +
 +
# ".xrds" and ".xdi" are formats designed expressly for discovery and description of resources using HTTP(S) URIs and/or XRIs. XRDS format is defined by [http://www.oasis-open.org/committees/download.php/24286/xri-resolution-v2.0-wd-11-ed-02.doc XRI Resolution Working 2.0]. XDI format is being defined by the [http://www.oasis-open.org/committees/xdi OASIS XDI Technical Committee]. Other resource description file types can be supported by extending this ABNF rule.
 +
# QXRI (Query XRI) is an XRI in URI-normal form without the "xri://" prefix (XRI 2.0) or "xri:" prefix (XRI 3.0). See Section 11.2 of [http://docs.oasis-open.org/xri/2.0/specs/cd02/xri-resolution-V2.0-cd-02.pdf XRI Resolution 2.0].
 +
# HXRI (HTTP(S) XRI) is the format for encapsulating an XRI within an HTTP(S) URI for purposes of resolution by an XRI proxy resolver. See Section 6 of [http://docs.oasis-open.org/xri/2.0/specs/cd02/xri-resolution-V2.0-cd-02.pdf XRI Resolution 2.0].
  
 
== See Also ==
 
== See Also ==
 
* [[ContextId]]
 
* [[ContextId]]

Revision as of 22:57, 31 January 2008

Syntax

The following ABNF defines a Higgins ContextId. All rules not defined in this ABNF are defined in the ABNF for XRI 2.0 (which includes the IRI ABNF from RFC 3987) except:

  • xri2-authority and xri2-subseg are the xri-authority and xri-subset rules defined in the ABNF for XRI 2.0
  • xri3-authority and xri3-subseg are the xri-authority and xri-subset rules defined in the proposed ABNF for XRI 3.0
contextId          = contextURI / contextXRI

contextURI         = contextfileURI / contexthttpURI
contextfileURI     = [ "file://" ] ipath-abempty descriptor-ext
descriptor-ext     = ".xrds" / ".xdi"                                      ;see note 1
contexthttpURI     = ( "http://" / "https://" ) iauthority
                     ipath-abempty [ descriptor-ext ] [ "?" iquery ]

contextXRI         = contextQXRI /                                         ;see note 2
                     contextHXRI                                           ;see note 3
contextQXRI        = ( [ "xri://" ] xri2-contextQXRI ) / 
                     ( [ "xri:" ] xri3-contextQXRI )
xri2-contextQXRI   = xri2-authority [ "/($context)" *xri2-subseg ] 
xri3-contextQXRI   = xri3-authority [ "/$context" *xri3-subseg ] 
contextHXRI        = proxy-URI "/" (xri2-contextQXRI / xri3-contextQXRI )
proxy-URI          = ( "http://" / "https://" ) proxy-reg-name
proxy-reg-name     = "xri." ireg-name

Notes:

  1. ".xrds" and ".xdi" are formats designed expressly for discovery and description of resources using HTTP(S) URIs and/or XRIs. XRDS format is defined by XRI Resolution Working 2.0. XDI format is being defined by the OASIS XDI Technical Committee. Other resource description file types can be supported by extending this ABNF rule.
  2. QXRI (Query XRI) is an XRI in URI-normal form without the "xri://" prefix (XRI 2.0) or "xri:" prefix (XRI 3.0). See Section 11.2 of XRI Resolution 2.0.
  3. HXRI (HTTP(S) XRI) is the format for encapsulating an XRI within an HTTP(S) URI for purposes of resolution by an XRI proxy resolver. See Section 6 of XRI Resolution 2.0.

See Also

Back to the top