Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Dereferenciácia je proces, kedy je referencovateľný identifikátor entity zároveň možné použiť aj ako URL lokátor entity. Tým je možné zabezpečiť zobrazenie entity vo webovom prehliadači ako aj získať informácii o entite v štrukturovanom formáte (RDF/XML, JSON, XML...). Aby bola zabezpečená šifrovaná komunikácia od počiatku, všetky jednotné referencovateľné identifikátory vydávane MetaIS majú doménu data.gov.sk a komunikačný protokol https tj. https://data.gov.sk. Zobrazenie informácií, ktoré sú výsledkom dereferenciácie sú plne v kompetencii zdroja tj. vlastníka menného priestoru. Dereferenciácia môže zohľadňovať prístupové práva a zobrazovať citlivé údaje v zmysle platnej legislatívy.

Kľúčovú rolu v dereferenciacii jednotný jednotných referencovateľných identifikátorov zohrávajú dva komponenty : MetaIS ako referenčný register referencovateľných identifikátorov a portál data.gov.sk, ktorý je doménou pre referenčné dátajednotné referencovateľné identifikátory.

Riešenie dereferenciácie na sieťovej úrovni pozostáva z nastavenia presmerovania všetkých dopytov na data.gov.sk, ktoré spĺňajú regulárny výraz :

Code Block
https://data.gov.sk/(id|def|set|doc)/.*

na stránku MetaIS a to takým spôsobom, že všetko čo sa nachádza za https://data.gov.sk/(id|def|set|doc)/.* automaticky presmeruje na

Code Block
https://metais.finance.gov.sk/refid/(id|def|set|doc)/.*

 

Primárnym účelom dereferenciácie je zobrazenie entity v čitateľnom tvare vo webovom prehliadači. Preto je pre dereferenciáciu pre webový prehliadač vyžadované použitie GET metódy a HTTP hlavičky Content-type: text/html alebo application/xhtml+xml

1.Algoritmus vyhodnocovania dereferenciácie prostredníctvom MetaIS

1.1 Dereferenciácia menného priestoru - bez zadania identifikátora entity


Nakoľko je MetaIS referenčným registrom referencovateľných identifikátorov a tým pádom sú všetky menné priestory registrované v ňom, MetaIS sa stáva primárnym kameňom pre dereferenciáciu pridelených menných priestorov referencovateľných identifikátorov.

Žiadateľ môže v systéme MetaIS požiadať o pridelenie celého menného priestoru. Napr. RPO požiada o zaregistrovanie menného priestoru :

Code Block
https://data.gov.sk/id/legal-subject/{id}

pre potreby jednotnej referencovateľnej identifikácie RPO entít. Samotný menný priestor je

Code Block
https://data.gov.sk/id/legal-subject/

Po zadaní tohto menného priestoru do webového prehliadača, portál data.gov.sk presmeruje dopyt na :

Code Block
https://metais.finance.gov.sk/refid/id/legal-subject/

Nakoľko nie je zadaná presná entita ale menný priestor, MetaIS zobrazí stránku o popise menného priestoru s údajmi ako kto je vlastníkom daného menného priestoru, dátum registrácie a pod.

...

MetaIS je primárnym registrátorom niektorých základných entít ako napríklad dátové prvky, ontológie a preto v prípade zadania do webového prehliadača referencovateľný identifikátor referencovateľného identifikátora entity, ktorá je v gescii MetaIS, MetaIS presmeruje referencovateľný identifikátor samo do seba. V príklade je zobrazená verzionovateľná entita tj. entita, ktorá má verzie .

...

Code Block
https://data.gov.sk/doc/egov/eform/ICO_poskytovatela.nazov_elektronickeho_formulara.jazyk.doplnujuca_informacia/1.1/schema.xsd

 

Nakoľko pre dokumenty typu /doc nie je časť referencovateľného identifikátora {id} ani {version} požadovaná, je možné si zaregistrovať aj úložisko ako (ide čisto o príklad, nie reálny referencovateľný identifikátor pre UPVII dokumenty)

...

Modifikácia dereferenciácie použitím otáznika, za ktorým pokračujú key=value parametre väzbené cez & znak. Pre každý registrovaný menný priestor jednotný referencovateľný identifikátor je vyžadované aby všetky vstupné parametre "key" ako aj ich hodnoty "value" boli štrukturovane zdokumentované v MetaIS.

Modelová situácia ( slúži len ako príklad. Samotnú dereferenciáciu https://data.gov.sk/id/egov/app-service/ bude mat v kompetencii subjekt, ktorý vlastní daný menný priestor)

Pri štandardnom dopyte na:

...

2.2 HTTP Status codes

 

1. Dereferenciácia URI referencovateľného identifikátora pre neregistrovaný menný priestor

V prípade, že používateľ chce dereferencovať referenčný identifikátor, ktorého menný priestor nie je registrovaný v MetaIS alebo daná entita nie je v správe MetaIS, systém MetaIS vráti HTTP status code 404.

2. Dereferenciácia URI referencovateľného identifikátora pre registrovaný menný priestor no neexistujúcu entitu

V prípade, že entita identifikovaná prostredníctvom jednotného referencovateľného identifikátora neexistuje v systéme na ktorý bolo z MetaIS spravené presmerovanie, daný systém má povinnosť vrátiť návratovú hodnotu HTTP status code 404. V takom prípade MetaIS zobrazí vlastníka menného priestoru s oznamom, že daná entita neexistuje v zdrojovom systéme.

3. Dereferenciácia referencovateľného identifikátora (nie jednotného referencovateľného identifikátora)  - prvky, bez data.gov.sk domény

V praxi môže nastať situácia, kedy je jedna entita reprezentovaná viacerými referencovateľnými identifikátormi. Podľa štandardu je povinnosť mať vytvorený mapovací dataset, ktorý premapováva vlastné referencovateľné identifikátory na jednotné referencovateľné identifikátory, ktoré sú schválené v MetaIS.

Príklad: 

Bratislavský kraj sa nachádza vo viacerých číselníkoch s rozdielnymi referencovateľným identitikátorom, kde je jedno no zároveň existuje aj jednotný referencovateľný identifikátor a používa data.gov.sk. , ktorý je referečný. Poskytovateľ má mapovací dataset, kde pozná vzťah medzi referencovateľným a jednotným referencovateľným identifikátorom : 

<https://statistics.sk/id/region/1> owl:sameAs <https://data.gov.sk/id/nuts3/SK010>  

 

V prípade, že poskytovateľ (v tomto príklade štatistický úrad) by mal implementovanú dereferenciáciu, je požadované, aby na zadanie URI referencovateľného identifikátora https://statistics.sk/id/region/1 do webového prehliadača bola odpoveď HTTP Status code 303 (See Other), ktorá vráti pre danú entitu referenčné URI jednotný referencovateľný identifikátor tj https://data.gov.sk/id/nuts3/SK010 čí čím sa postupne prečistí celý URI priestor referencovateľných identifikátorov. 

4. Not modified pri použití HTTP hlavičky If-Modified-Since

V prípade, že sa nezmení verzinovateľný zdroj od času definovaného v If-Modified-Since, je návratová hodnota HTTP Status Code 304 Not Modified.

2.3 Použitie Fragment Identifier (#) v

URI

referencovateľnom identifikátore na určenie podriadeného prvku vrámci zdroja

Dereferenciácia dokáže odkazovať aj na obsah, pre ktorý je v mnohých prípadoch nutné identifikovať podriadený prvok vrámci dereferencovaného obsahu. Táto požiadavka je riešená pre dokumenty typu /doc pomocou Fragment identifier .

Takýmto spôsobom je možné ukázať

Unknown macro: {add-label}