Ensartet ressource -id

fra Wikipedia, den gratis encyklopædi
Spring til navigation Spring til søgning

En Uniform Resource Identifier (forkortelse URI , engelsk for uniform identifikator for ressourcer ) er en identifikator og består af en tegnstreng, der bruges til at identificere en abstrakt eller fysisk ressource . URI'er bruges til at udpege ressourcer (f.eks. Websteder , andre filer, opkald til webtjenester , men også e-mail- modtagere, for eksempel) på Internettet og der frem for alt på WWW . Den aktuelle status for 2016 er offentliggjort som RFC 3986 .

Tim Berners-Lee introducerede oprindeligt udtrykket i 1994 i RFC 1630 som en Universal Resource Identifier . Først senere fremkom resolutionen Uniform i officielle W3C -dokumenter. Af denne grund omtales Universal lejlighedsvis som den første del af navnet - selv i speciallitteratur.

URI'er kan integreres som en tegnstreng (kodet med et tegnsæt ) i digitale dokumenter, især dem i HTML -format, eller skrives ned i hånden på papir. En reference fra et websted til et andet kaldes et hyperlink eller kort sagt "link".

Internationaliserede ressourceidentifikatorer (IRI'er) er en udvidelse af URI'erne, som kun består af udskrivbare ASCII -tegn.

Forestilling

En URI (eller i forlængelsen IRI) er det abstrakte princip, syntaksen, en identifikator, hvor der er givet et sæt regler. Dette grundlæggende koncept for URI overføres derefter til forskellige specifikke anvendelsesområder, for hvilke de tilsvarende regler og vilkår derefter gælder. For eksempel:

  • "URI'er kan ikke indeholde mellemrum." Eller
  • "I begyndelsen er der navnet på et skema med ASCII -bogstaver og cifre, om nødvendigt opdelt efter punktum og bindestreg, begyndende med bogstaver, efterfulgt af et kolon."

Der er dybest set tre typer applikationer:

  • Efternavn
    • Indholdet af en ressource (og dermed hver kopi med det samme indhold) får en unik identifikator.
    • Eksempel: ISBN for en bog. Der er et ubegrænset antal eksemplarer af denne bog.
  • Finderen
    • Placeringen af ​​en ressource er defineret af dens navn. Så det identificeres ved, hvor det kan findes; det bestemmer imidlertid ikke nødvendigvis deres indhold.
    • Eksempel: Aktuel vejrmelding på Internettet. Det vides, hvor (URL) dette kan findes; indholdet ændrer sig konstant.
    • Eksempel: En bog er beskrevet af biblioteket, hvor den er placeret: der i det andet rum, tredje hylde, fjerde rum fra toppen, femte bog fra venstre. Den nuværende top 5 på bestsellerlisten kunne være der - uanset deres indhold.
  • individuel
    • URI's regler kan også bruges, hvis noget slet ikke er en klassisk ressource, men stadig skal identificeres.
    • I første omgang blev "ressource" forstået at være noget som ressourcer i it -forstand, det vil sige i vid forstand elektroniske filer, der også kunne gøres tilgængelige på Internettet. RFC 1630 og RFC 1738 var baseret på dette i 1994. Dette koncept er imidlertid blevet udvidet. I 1998 fastlagde RFC 2396 (afsnit 1.1): "En ressource kan være alt, der har identitet." Mennesker, organisationer og trykte bøger kunne også ses som ressourcer. Denne overvejelse sigter mod identifikation af overdragelige enheder.
    • Eksempler: e-mail-adresse, mobiltelefonnummer, pas samt den legitime ejer, personnummer, fingeraftryk og personen derudover.

I januar 2005, med RFC 3986, blev begrebet ressource i betydningen URI også udvidet til at omfatte abstrakte begreber:

”En ressource er ikke nødvendigvis tilgængelig via Internettet; f.eks. mennesker, virksomheder og indbundne bøger på et bibliotek kan også være ressourcer. På samme måde kan abstrakte begreber være ressourcer, såsom operatorer og operander i en matematisk ligning, typerne af en relation (f.eks. 'Forælder' eller 'medarbejder') eller numeriske værdier (f.eks. Nul, en og uendelig ). ”

”En ressource er ikke nødvendigvis tilgængelig via Internettet; for eksempel kan mennesker, virksomheder og hardback -bøger på biblioteker også være en ressource. På samme måde kan abstrakte begreber som operatorer og operander i en matematisk ligning, typer af relationer (f.eks. 'Forælder' eller 'medarbejder') eller tal (f.eks. Nul, en og uendelig) være en ressource. "

- RFC 3986 , afsnit 1.1

konstruktion

Ifølge den nuværende RFC 3986 -standard består en URI af fem dele: scheme (skema eller protokol), authority (udbyder eller server), path (sti), query (forespørgsel) og fragment (del), hvoraf kun scheme og path i hver URI skal være til stede. Den generiske syntaks er:

 URI = scheme ":" hier-part ["?" forespørgsel] ["#" fragment]

hier-part (hierarkisk del) står for en valgfri authority og path . Hvis specifikationen af ​​en authority påkrævet for i sidste ende at lokalisere ressourcen, introduceres den med et dobbelt skråstreg, og den sti, der følger, skal begynde med et skråstreg. Standarden præciserer disse komponenter med to eksempler:

 foo: //eksempel.com: 8042 / over / der? navn = ilder # næse
  \ _ / \ ______________ / \ _________ / \ _________ / \ __ /
   | | | | |
skema autoritet sti forespørgsel fragment
   | _____________________ | __
  / \ / \
  urne: eksempel: dyr: ilder: næse

Skema

Skemaet (delen før tyktarmen) definerer konteksten og betegner således typen af ​​URI, som bestemmer fortolkningen af ​​den følgende del. Kendte skemaer er f.eks. http og ftp protokollerne og notationskoncepter som urn og doi . Den første obligatoriske del af URI ender med tyktarmen. Hvis der ikke er en henvisning til en (aktiv) myndighed, der organiserer navneadministrationen, følges denne kolon direkte af stien til lokalisering af ressourcen.

Myndighed (i betydningen jurisdiktion )

Mange URI -ordninger såsom http eller ftp har en authority . Udtrykket autoritet refererer til en instans, der centralt kan styre navnene i dette fortolkningsrum (specificeret af skemaet). Et eksempel på dette er Domain Name System , som administreres af globale og lokale registratorer .

authority består af valgfri brugerinformation (efterfulgt af et ' @ '),værten og en valgfri portspecifikation (introduceret af et kolon). Den følger to skråstreger ( // ) og afgrænses af en enkelt skråstreg ( / ), et spørgsmålstegn ( ? ), Et pundtegn ( # ) eller slutningen af ​​URI. Værtsdelen kan bestå af en IP -adresse , en IPv6 -adresse (i firkantede parenteser […] ') eller et registreret navn. Gyldige værdier er f.eks.

Den mulige specifikation af brugernavn og adgangskode i brugeroplysningerne ( user:[email protected] ) beskrives som forældet i RFC 3986 (afsnit 3.2.1) og bør ikke længere bruges, da URI'er ofte overføres og logges i klar tekst.

Sti

Stien indeholder information - ofte organiseret hierarkisk - som sammen med forespørgselsdelen identificerer en ressource. Hvis en authority som beskrevet i det foregående afsnit blev angivet i URI, skal path begynde med et skråstreg ( / ); authority der ikke er nogen authority , kan path ikke begynde med et dobbelt skråstreg ( // ). Dette sikrer en klar fortolkning. Det er afgrænset af et spørgsmålstegn ( ? ), Et hash -tegn ( # ) eller slutningen af ​​URI. Gyldige stier er f.eks.

  • /over/there
  • example:animal:ferret:nose

Forespørgsel (forespørgsel)

Forespørgselsdelen ( forespørgselsstreng ) indeholder data til identifikation af de ressourcer, hvis placering ikke kan specificeres præcist ved at angive stien alene. De skal hentes fra kilden angivet af stien ved hjælp af denne forespørgsel, f.eks. En datapost fra en database. Det begynder med et spørgsmålstegn ( ? ) Og afgrænses af et hash -tegn ( # ) eller slutningen af ​​URI. En gyldig forespørgsel til ' ? 'er for eksempel:

  • title=Uniform_Resource_Identifier&action=submit

Her spiller ' & ' og ' = ' nogenlunde samme rolle som ' . 'og' : 'i den del for authority .

fragment

fragment er den valgfrie fragmentidentifikator og refererer til en position i en ressource. Fragmentidentifikatoren refererer altid kun til den umiddelbart foregående del af URI og introduceres af et hash -tegn ( # ). Et eksempel på dette er ankeret i HTML.

Eksempler

  • https://de.wikipedia.org/wiki/Uniform_Resource_Identifier
  • ftp://ftp.is.co.za/rfc/rfc1808.txt
  • file:///C:/Users/Benutzer/Desktop/Uniform%20Resource%20Identifier.html
  • file:///etc/fstab
  • geo:48.33,14.122;u=22.5
  • ldap://[2001:db8::7]/c=GB?objectClass?one
  • gopher://gopher.floodgap.com
  • mailto:[email protected]
  • sip:[email protected]
  • news:comp.infosystems.www.servers.unix
  • data:text/plain;charset=iso-8859-7,%be%fa%be
  • tel:+1-816-555-1212
  • telnet://192.0.2.16:80/
  • urn:oasis:names:specification:docbook:dtd:xml:4.1.2
  • git://github.com/rails/rails.git
  • crid://broadcaster.com/movies/BestActionMovieEver

Et eksempel med et stort antal elementer på samme tid i URI:

  • http://nobody:[email protected]:8080/cgi-bin/script.php?action=submit&pageid=86392001#section_2

URI -referencer

Applikationer bruger ofte ikke den fulde URI, men snarere en forkortet syntaks, for eksempel for at spare plads eller for at muliggøre let flytning til andre servere. I deres definition begrænser nogle URI -skemaer også syntaksen til en bestemt form. Forskellige stavemåder er opsummeret under udtrykket URI -referencer.

Absolutte URI'er

En absolut URI identificerer en ressource, uanset hvilken kontekst URI'en bruges i. [1] Den består i det mindste af en scheme og hier-part (dvs. en authority og / eller en path ). Eksempler er:

  • https://de.wikipedia.org
  • file://localhost/var/spool/dump.bin

Relativ reference

I modsætning til en absolut URI beskriver en relativ URI kun forskellen mellem den absolutte URI for en ressource og den aktuelle kontekst i et hierarkisk navnerum. [2]

Hvis en URI -reference ikke begynder med et scheme , antages det at være en relativ reference. Opløsningen af ​​en relativ reference til en absolut URI finder sted afhængigt af konteksten i henhold til standardiserede regler. En relativ reference består af en path og eventuelt en query og et fragment . Der er tre typer af relative referencer:

  • Hvis stien starter uden skråstreg, er den en relativ sti -reference , f.eks. image.png , ./image.png og ../images/image.png .
  • Hvis stien begynder med et enkelt skråstreg ( / ), er det en absolut sti -reference .
  • Hvis stien begynder med dobbelte skråstreger ( // ), er det en netværkssti -reference .

Henvisning i samme dokument

URI -referencer kan referere til det samme dokument, som de er en del af. Den mest almindelige anvendelse er pundtegnet ( # ) efterfulgt af et fragment -id.

Suffiksreferencer

Specifikationen af ​​URI -referencer på Internettet uden en beskrivelse af protokollen (skemaet) er udbredt, f.eks. www.wikipedia.de . Forudsat at suffikset (i eksemplet www , DNS -navne er bygget fra højre til venstre) kan bruges til at udlede protokollen (her http ), fungerer opløsningen af ​​sådanne referencer. Denne opløsning er imidlertid afhængig af tilsvarende antagelser og også af den respektive software. Derfor bør suffiksreferencer undgås.

Ordninger

Blandt andet er følgende ordninger defineret:

Skema beskrivelse
crid Tv -udsendelser
data Data-URL : direkte integrerede data
file Filer i det lokale filsystem
ftp Filoverførselsprotokol
geo Geografiske koordinater
gopher Gopher
http Hypertekstoverførselsprotokol
ldap Letvægts biblioteksadgangsprotokol
mailto E -mail -adresse
news Nyhedsgruppe eller nyhedsartikel
pop Adgang til postkasse via POP3
rsync Synkronisering af data med rsync
sip SIP -baseret sessionopsætning, f.eks. B. for IP -telefoni
tel Telefonnummer
telnet Telnet
urn Ensartede ressourcenavne (URN'er)
ws WebSocket
wss
xmpp Udvidelig meddelelses- og tilstedeværelsesprotokol til Jabber -identifikatorer

En komplet liste over de officielle ordninger kan findes på Internet Assigned Numbers Authority (IANA) websted. [3]

Derudover er der etableret nogle uofficielle ordninger, også kaldet "foreløbige" af IANA, til individuelle applikationer eller fælles protokoller:

Skema beskrivelse
about intern browserinformation [4]
afp Apple arkiveringsprotokol [5]
apt Avanceret emballeringsværktøj
callto Telefonnumre (herunder Skype og NetMeeting )
coffee Hyper Text Coffee Pot Control Protocol
daap Digital lydadgangsprotokol
doi Digital Object Identifier
ed2k ED2k URI -skema fra eDonkey2000 / Kademlia
feed Webfeeds
finger Finger [6]
fish Filer overført via Shell -protokollen
git Git
irc / ircs Internet relæ chat [7]
itunes iTunes
javascript Udførelse af JavaScript -kode [8]
lastfm Last.fm
magnet Magnetlink
mms Microsoft Media Server
rtmp Real -time beskedprotokol
sftp SSH -filoverførselsprotokol [9] [10]
skype Telefonnumre (kun Skype )
smb Serverbeskedblok [11]
ssh Secure Shell [12] [10]
svn / svn+ssh Apache Subversion
view-source Kildekodevisning for et websted [13]
webcal iCalendar
wyciwyg What You Cache Is What You Get, Firefox-intern skærm til visning af cachelagret indhold
ymsgr Yahoo Messenger

Underarter

Der skelnes mellem følgende undertyper af URI'er:

Uniform Resource Locator (URL)
Navngiv en ressource ved hjælp af dens primære adgangsmekanisme, f.eks. http eller ftp . Dette efterfølges af navnet på placeringen af ressourcen i netværket - normalt domænenavnet. URL'er var oprindeligt den eneste type URI, hvorfor udtrykket URL ofte bruges synonymt med URI.
Uniform Ressource Name (URN)
URI -skemaet urn identificerer en ressource ved hjælp af et eksisterende eller frit urn:sha1 navn, f.eks. urn:isbn eller urn:sha1 .

Oprindeligt skulle hver URI opdeles i en af ​​disse to klasser (eller andre der skal defineres). Denne strenge opdeling er imidlertid opgivet, fordi det er unødvendigt, og nogle ordninger (f.eks. data eller mailto som tidligere var tildelt webadresser) ikke passer ind i nogen af ​​de to klasser.

Se også

Weblinks

Individuelle beviser

  1. ietf.org
  2. ietf.org
  3. ^ Graham Klyne: Uniform Resource Identifier (URI) -skemaer. I: https://www.iana.org/ . Internet Assigned Numbers Authority (IANA), 20. marts 2016, åbnede 8. april 2016 .
  4. tools.ietf.org
  5. tools.ietf.org
  6. tools.ietf.org
  7. tools.ietf.org
  8. tools.ietf.org
  9. https://www.iana.org/assignments/uri-schemes/prov/sftp
  10. a b tools.ietf.org
  11. tools.ietf.org
  12. https://www.iana.org/assignments/uri-schemes/prov/ssh
  13. ^ Msdn.microsoft.com