Un identifiant de ressource extensible ( XRI ) est un protocole de schéma et de résolution pour les identifiants abstraits compatibles avec les identifiants de ressources uniformes (URI) et les identifiants de ressources internationalisés (IRI), développés par le comité technique XRI de l'OASIS (fermé en 2015). L'objectif de XRI était une syntaxe standard et un format de découverte pour les identifiants abstraits et structurés qui sont indépendants du domaine, de l'emplacement, de l'application et du transport, afin qu'ils puissent être partagés entre n'importe quel nombre de domaines, de répertoires et de protocoles d'interaction .
Les spécifications XRI 2.0 ont été rejetées par OASIS, un échec attribué à l'intervention du groupe d'architecture technique du W3C qui a recommandé de ne pas utiliser les XRI ou de faire avancer les spécifications XRI. Le cœur du litige est de savoir si les URI HTTP largement interopérables sont capables de remplir le rôle d'identifiants abstraits et structurés, comme le croit le TAG, mais dont les limites ont été spécifiquement traitées par le comité technique XRI.
Les concepteurs de XRI pensaient qu'en raison de la croissance du XML , des services Web et d'autres moyens d'adapter le Web aux communications automatisées de machine à machine, il était de plus en plus important de pouvoir identifier une ressource indépendamment de tout chemin, emplacement ou protocole de réseau physique spécifique afin de :
- Créez des identifiants structurés avec des « balises » autodescriptives qui peuvent être comprises dans tous les domaines.
- Maintenir un lien persistant avec la ressource, que son emplacement réseau change ou non.
- Déléguez la gestion des identifiants non seulement dans le segment d'autorité (le premier segment suivant le nom de schéma « xxx:// ») mais n'importe où dans le chemin de l'identifiant.
- Identifiants de carte utilisés pour identifier une ressource dans un domaine à d'autres synonymes utilisés pour identifier la même ressource dans le même domaine ou dans d'autres domaines.
Ces travaux ont conduit, début 2003, à la publication d'un protocole basé sur HTTP(S) et des documents XML simples appelé XRDS (Extensible Resource Descriptor Sequence) .
Caractéristiques
- Compatibilité URI et IRI
- Il existe une manière spécifique d'exprimer les XRI sous la forme d'URI
- Références croisées
- Un XRI peut contenir un autre XRI (ou un URI), à n'importe quel niveau d'imbrication. Cela permet la construction d'identifiants structurés et « balisés » qui permettent le partage d'identifiants entre domaines de la même manière que XML permet le partage de données entre domaines.
- Symboles de contexte global
- Il s'agit de symboles à caractère unique (
=,@,+,$ou!) qui fournissent un moyen simple et convivial d'indiquer le contexte global d'un i-name ou d'un i-number . Ils ne sont pas obligatoires, mais peuvent être utilisés au sein de communautés d'intérêt qui s'accordent sur leur signification et sur la manière dont ils sont résolus. - Adressage peer-to-peer
- La syntaxe XRI permet à deux nœuds de réseau de s'attribuer mutuellement des XRI et d'effectuer une résolution croisée. Autrement dit, une autorité d'espace de noms de niveau supérieur peut être référencée par des noms attribués par d'autres parties. Cela facilite la fédération des espaces de noms entre les organisations ou les communautés d'intérêt.
- Décentralisation
- Les XRI peuvent être enracinés soit dans des systèmes d'adressage centralisés (par exemple, des adresses IP ou des noms de domaine DNS), soit dans des autorités racines privées/décentralisées et dans un adressage peer-to-peer.
- Délégation
- Les espaces de noms peuvent être délégués à d’autres autorités d’espaces de noms.
- Fédération
- Les espaces de noms définis séparément à n'importe quel niveau peuvent être réunis (de manière hiérarchique ou polyarchique) et rendus visibles et résolubles.
- Persistance
- La capacité d’exprimer l’intention selon laquelle certaines parties (ou la totalité) d’un XRI sont des identifiants permanents qui ne seront jamais réattribués.
- Formats conviviaux pour l'homme et la machine
- XRI fournit une syntaxe à la fois pour les identifiants qui peuvent être créés et compris facilement par les humains ( i-names ) et pour ceux qui sont optimisés pour la structuration/analyse par machine ( i-numbers ).
- Résolution simple et extensible
- XRI propose un schéma de résolution léger utilisant HTTP et un format de document XML simple appelé XRDS .
- Résolution de confiance
- Le protocole de résolution XRI comprend trois modes de version fiable : a) HTTPS , b) assertions SAML et c) les deux.
- Plusieurs options de résolution
- La résolution XRI peut être indépendante du DNS.
- Entièrement internationalisable
- Exploitez les spécifications Unicode et IRI existantes .
- Indépendant des transports
- Les XRI sont indépendants des protocoles ou mécanismes de transport spécifiques.
Composition d'un identifiant de ressource extensible
Un XRI commençant par «= » est censé identifier une personne. Un XRI commençant par «@ » identifie une entreprise ou une organisation. Un XRI commençant par «+ » indique un concept, un sujet ou un thème générique.
Un «* » marque une délégation. Par exemple, avec , délègue la résolution de son sous-XRI à un autre résolveur. Cela est analogue à la délégation par DNS de la résolution de sous-domaine à d'autres serveurs de noms ( : après avoir résolu , le serveur de noms responsable de délègue au serveur de noms, qui délègue au serveur de noms). =family*name=familynamename.family.dededefamilyname
Résolution d'un identifiant de ressource extensible
Les XRI sont résolus en documents XRDS à l'aide du protocole HTTP ( S ) de la même manière que les URL sont résolues en enregistrements de ressources à l'aide du protocole DNS . Ce processus de recherche peut être configuré en transmettant des paramètres.
Les résolveurs de proxy et le HXRI
Un XRI peut être transformé en URI en ajoutant " http://xri.net/" au début et en ajoutant le XRI. En interne, l'URI fait maintenant référence à un résolveur proxy , qui résout un URI de ce type en un document XRDS. Le résolveur proxy trouvé sous http://xri.net par exemple peut être utilisé pour résoudre un XRI. =exampleDevient donc http://xri.net/=example. La deuxième forme est appelée HTTP XRI ou HXRI en abrégé. Le propriétaire du XRI =examplepeut indiquer au résolveur proxy ce qu'il doit faire, si le HXRI est appelé. Une réaction possible est d'effectuer une redirection HTTP 302 vers un URI stocké.
D'autres paramètres permettant de spécifier la résolution peuvent être ajoutés au HXRI, par exemple pour obtenir l'intégralité du document XRDS ou pour obtenir des descriptions de service pour ce XRI. Par exemple, si vous vous connectez ?_xrd_r=application/xrds+xmlau HXRI, l'intégralité du document XRDS est renvoyée. http://xri.net/=example?_xrd_r=application/xrds+xmlRenvoie donc l'intégralité du XRDS pour le XRI =example.
Exemples de syntaxe de référence croisée XRI
Supposons qu'un système de bibliothèque utilise des URN dans l'espace de noms ISBN pour identifier les livres et des sous-domaines DNS pour identifier ses succursales de bibliothèque. La syntaxe URI HTTP ne fournit pas de moyen standard d'exprimer l'URN du titre du livre dans le contexte du nom DNS de la succursale de la bibliothèque. La syntaxe de référence croisée XRI résout ce problème en permettant à la bibliothèque (et même aux programmes automatisés exécutés dans la bibliothèque) de construire par programmation les XRI nécessaires pour adresser n'importe quel livre dans n'importe quelle succursale. Exemples :
xri://broadview.library.example.com/(urn:isbn:0-395-36341-1) xri://shoreline.library.example.com/(urn:isbn:0-395-36341-1) xri://northgate.library.example.com/(urn:isbn:0-395-36341-1)
Cette capacité à créer des identifiants structurés et autodescriptifs peut être étendue à de nombreuses autres utilisations. Par exemple, supposons que la bibliothèque souhaite indiquer le type de chaque livre disponible. En établissant un simple dictionnaire XRI des types de livres, elle peut désormais construire par programmation des XRI qui incluent ces métadonnées,
xri://broadview.library.example.com/(urn:isbn:0-395-36341-1)/(+couverture rigide) xri://broadview.library.example.com/(urn:isbn:0-395-36341-1)/(+broché) xri://broadview.library.example.com/(urn:isbn:0-395-36341-1)/(+référence)
Autres exemples de syntaxe XRI 2.0
(Notez qu'aucun d'entre eux n'affiche le préfixe « xri:// », qui est facultatif dans les XRI lorsqu'ils ne sont pas sous forme URI normale, c'est-à-dire qu'ils n'ont pas subi la transformation spécifiée entre le format XRI et le format URI.)
Exemples d'IRX composés entièrement de segments réassignables :
=Mary.Jones @Jones.et.Company +numéro.de.téléphone +numéro.de.téléphone/(+indicatif.régional) =Mary.Jones/(+numéro.de.téléphone) @Jones.and.Company/(+numéro.de.téléphone) @Jones.and.Company/((+numéro.de.téléphone)/(+indicatif.régional))
Exemples d'IRX composés entièrement de segments persistants :
=!13cf.4da5.9371.a7c5 @!280d.3822.17bf.ca48!78d2/!12
Exemple de XRI avec des mélanges de segments persistants et réassignables (XRI permet n'importe quelle combinaison des deux) :
=!13cf.4da5.9371.a7c5/(+numéro.de.téléphone) @Jones.and.Company!78d2/!12/(+code.régional)
Applications
Voici quelques exemples d’applications développées à l’aide de l’infrastructure XRI :
- OpenID 2.0 inclut la prise en charge des XRI et utilise XRDS pour la découverte d'identifiants OpenID.
- Le projet Higgins utilise les XRI et les XRDS pour adresser et découvrir les fournisseurs de contexte Higgins.
- Services d'adressage d'identité numérique I-name et I-number de XDI.org .
- Le protocole de partage de données XDI est en cours de développement par le comité technique OASIS XDI.
Licences
Le Comité technique XRI est agréé en vertu du mode RF à durée limitée de la politique IPR d'OASIS (voir http://www.oasis-open.org/committees/xri/ipr.php pour plus de détails.)
Le Dr Phillip Hallam-Baker , représentant de VeriSign dans l'affaire OASIS, a fait valoir que l'utilisation des technologies employées dans XRI est soumise à des revendications de brevets, que les droits de licence sur ces brevets ont été accordés à XDI.org, une organisation à but non lucratif qui a à son tour accordé une licence non exclusive sur l'utilisation des brevets à des sociétés associées aux détenteurs de brevets initiaux, malgré la déclaration de propriété intellectuelle ci-dessus. L'opposition de VeriSign et des sociétés qui avaient des liens avec Hallam-Baker a contribué à assurer le rejet de la proposition d'adoption des spécifications.