Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Entity UDI"
m (NodeId Data Range moved to EntityId Data Range) |
|||
Line 1: | Line 1: | ||
{{#eclipseproject:technology.higgins}} | {{#eclipseproject:technology.higgins}} | ||
== Version == | == Version == | ||
− | This page defines a kind of [[Data Range]] called a [[ | + | This page defines a kind of [[Data Range]] called a [[EntityId Data Range]] used in the [[Higgins Global Graph 1.1]]. |
== Definition == | == Definition == | ||
− | * A [[ | + | * A [[EntityId Data Range]] value identifies an [[Entity]]. |
− | * A [[ | + | * A [[EntityId Data Range]] is URI [[Data Range]]. |
− | * A [[ | + | * A [[EntityId Data Range]] MAY be absolute or relative: |
− | ** An absolute [[ | + | ** An absolute [[EntityId Data Range]] MUST uniquely identify both a [[Context]] and a specific [[Entity]] within that [[Context]]. |
− | ** A relative [[ | + | ** A relative [[EntityId Data Range]] MUST uniquely identify an [[Entity]] within the local [[Context]]. |
− | * A [[ | + | * A [[EntityId Data Range]] MUST conform to the ABNF defined below. |
== ABNF == | == ABNF == | ||
− | The following [http://en.wikipedia.org/wiki/Augmented_Backus-Naur_form ABNF] defines the syntax of a Higgins [[ | + | The following [http://en.wikipedia.org/wiki/Augmented_Backus-Naur_form ABNF] defines the syntax of a Higgins [[EntityId Data Range]]. Rules not defined in this ABNF are defined in either: |
* The [[ContextId Data Range]] definition (i.e. ''ContextURI'' and ''ContextXRI''), or | * The [[ContextId Data Range]] definition (i.e. ''ContextURI'' and ''ContextXRI''), or | ||
* 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]). | * 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]). | ||
Line 26: | Line 26: | ||
* The '''AbsoluteEntityURI''' form is consistent with one of the two proposed forms of [http://www.w3.org/TR/2007/WD-cooluris-20071217/ Cool URIs] defined by the [http://www.w3.org/ W3C]. | * The '''AbsoluteEntityURI''' form is consistent with one of the two proposed forms of [http://www.w3.org/TR/2007/WD-cooluris-20071217/ Cool URIs] defined by the [http://www.w3.org/ W3C]. | ||
* The '''AbsoluteEntityXRI''' form is an [http://en.wikipedia.org/wiki/XRI XRI] as defined by [http://wiki.oasis-open.org/xri/XriCd02/Xri2dot0Abnf XRI Syntax 2.0]. | * The '''AbsoluteEntityXRI''' form is an [http://en.wikipedia.org/wiki/XRI XRI] as defined by [http://wiki.oasis-open.org/xri/XriCd02/Xri2dot0Abnf XRI Syntax 2.0]. | ||
− | * See [[Context Discovery]] for rules defining resolution of an instance of a [[ | + | * See [[Context Discovery]] for rules defining resolution of an instance of a [[EntityId Data Range]]. |
== Relationship to OpenID == | == Relationship to OpenID == | ||
− | * An [http://openid.net/specs/openid-authentication-2_0.html OpenID 2.0] compliant URL or XRI may serve as an absolute [[ | + | * An [http://openid.net/specs/openid-authentication-2_0.html OpenID 2.0] compliant URL or XRI may serve as an absolute [[EntityId Data Range]]. See [[ContextId Data Range]] for details. |
== Examples == | == Examples == |
Revision as of 14:45, 22 April 2008
{{#eclipseproject:technology.higgins}}
Contents
Version
This page defines a kind of Data Range called a EntityId Data Range used in the Higgins Global Graph 1.1.
Definition
- A EntityId Data Range value identifies an Entity.
- A EntityId Data Range is URI Data Range.
- A EntityId Data Range MAY be absolute or relative:
- An absolute EntityId Data Range MUST uniquely identify both a Context and a specific Entity within that Context.
- A relative EntityId Data Range MUST uniquely identify an Entity within the local Context.
- A EntityId Data Range MUST conform to the ABNF defined below.
ABNF
The following ABNF defines the syntax of a Higgins EntityId Data Range. Rules not defined in this ABNF are defined in either:
- The ContextId Data Range definition (i.e. ContextURI and ContextXRI), or
- The ABNF for XRI 2.0 (which includes the IRI ABNF from RFC 3987).
EntityId_Data_Range = AbsoluteEntityId / RelativeEntityId AbsoluteEntityId = AbsoluteEntityURI / AbsoluteEntityXRI AbsoluteEntityURI = ContextURI [ "#" ifragment ] AbsoluteEntityXRI = ContextXRI [ "//" xri-segment ] RelativeEntityId = ifragment / xri-segment
Notes
- In an AbsoluteEntityId, a RelativeEntityId is optional when the Context identified by the ContextURI or ContextXRI contains exactly one Entity.
- The AbsoluteEntityURI form is consistent with one of the two proposed forms of Cool URIs defined by the W3C.
- The AbsoluteEntityXRI form is an XRI as defined by XRI Syntax 2.0.
- See Context Discovery for rules defining resolution of an instance of a EntityId Data Range.
Relationship to OpenID
- An OpenID 2.0 compliant URL or XRI may serve as an absolute EntityId Data Range. See ContextId Data Range for details.
Examples
AbsoluteEntityURIs
Filenames
file://system/config/openid.xrds#pault file://system/config/openid.xdi#pault file://system/config/ldap.xrds#pault file://system/config/ldap.xdi#pault
URLs
http://example.com#49387 https://example.com#49387 http://example.com/higgins/openid.xrds#49387 https://example.com/higgins/openid.xdi#49387 http://example.com/higgins/ldap.xrds#49387 https://example.com/higgins/ldap.xdi#49387
AbsoluteEntityXRIs
XRI 2.0 Form
=drummond/($context)*($openid)//=drummond =drummond/($context)*($ldap)//dreed =!F83.62B1.44F.2813/($context)*($openid)//=drummond =!F83.62B1.44F.2813/($context)*($ldap)//dreed =drummond*mom/($context)*($openid)//spr =drummond*mom/($context)*($ldap)//spreed @example/($context)//Example%20Corp @example/($context)*($openid)//@!2C75.AC49.21D3.1207 @example/($context)*($ldap)//corp @free*example/($context)*($openid)//example @free*example/($context)*($ldap)//example
Proposed XRI 3.0 Form
=drummond/$context$openid//=drummond =drummond/$context$ldap//dreed =!F83.62B1.44F.2813/$context$openid//=drummond =!F83.62B1.44F.2813/$context$ldap//dreed =drummond*mom/$context$openid//spr =drummond*mom/$context$ldap//spreed @example/$context//Example%20Corp @example/$context$openid//@!2C75.AC49.21D3.1207 @example/$context$ldap//corp @free*example/$context*$openid//example @free*example/$context$ldap//example
HXRIs
A HXRI ("HTTP XRI") is an XRI that uses an HXRI proxy resolver prefix. "xri.net" is a public HXRI proxy resolver operated by XDI.org. All others are examples.
XRI 2.0 Form
https://xri.net/=drummond/($context)*($openid)//=drummond https://xri.net/=drummond*mom/($context)*($openid)//spr http://xri.example.com/@example/($context)*($openid)//@example http://xri.example.com/@free*example/($context)*($openid)//example https://xri.example.org/@1000.a1b2.c3d4.9999!1234/($context)*($ldap)//example
Proposed XRI 3.0 Form
https://xri.net/=drummond/$context$openid/=drummond https://xri.net/=drummond*mom/$context$openid//spr http://xri.example.com/@example/$context$openid//@example http://xri.example.com/@example*free/$context$openid//example https://xri.example.org/@1000.a1b2.c3d4.9999!1234/$context$ldap//example