athletics.lv datus nodod un saņem, izmantojot datu struktūras, kas paredzētas Open Athletics Data Model standartā, kurš savukārt izmanto JSON-LD formātu.
Citus paraugus var aplūkot OpenTrack grupas repozitorijā.
Katrs objekts (gan atbildes augstākā līmeņa, gan iekšā iekļautie, piemēram, "sportists")
satur identifikatoru @id un objekta tipu @type.
Kā identifikatoru vislabāk izmantot konkrētā objekta URL. Piemēram, personas, kas atrodama
adresē https://athletics.lv/person/13569.jsonld identifikators ir https://athletics.lv/person/13569.jsonld.
Ne vienmēr tas iespējams. Piemēram, rezultātā https://athletics.lv/result/340065.jsonld ir sniegums,
kurš nav atverams kā atsevišķs objekts. Šādā gadījumā labi izmantot virsējā objekta URL, tam galā
pieliekot # un kādu norādi uz apakšobjektu. Šajā gadījumā tas ir rezultāta sniegums (performance),
tāpēc identifikators ir https://athletics.lv/result/340065.jsonld#performance. Tieši # izmantojam
tāpēc, ka tas nemaina iegūstamo resursu — pieprasījums uz https://athletics.lv/result/340065.jsonld#performance
atver to pašu https://athletics.lv/result/340065.jsonld, kas satur šo sniegumu.
Daļu aiz # var arī veidot detalizētāk, piemēram, ja nav URL individuāliem rezultātiem, tad sacensību
ietvaros rezultāta identifikators var būt https://athletics.lv/race/3465.jsonld#340065, bet snieguma
identifikators šim rezultātam: https://athletics.lv/race/3465.jsonld#340065-performance.
Var izmantot arī fiktīvus URL. Piemēram, athletics.lv pagaidām nav treneru JSON-LD kartiņas, bet vienalga
var norādīt treneri, izmantojot personas ID, piemēram, https://athletics.lv/coach/3620.jsonld, kaut šāds
URL ne uz ko neved.
Identifikatoru @id var nenorādīt gadījumos, kad informācijai nav nekādas nozīmes ārpus konteksta.
Piemēram, vēja ātrums pie kāda no lēcieniem. Bet to obligāti vajag norādīt visiem objektiem, kas var
parādīties vairākos kontekstos. Piemēram, personas, rezultāti.
Datiem (HTTP atbildei vai failam) jāsatur viens augstākā līmeņa objekts. Šajā objektā
jānorāda arī @context parametrs ar vērtību https://w3c.github.io/opentrack-cg/contexts/opentrack.jsonld,
kas norāda, ka datos izmantots Open Athletics Data Model.
Atbildes datu tipam ieteicams būt application/ld+json vai application/json.
Struktūra:
@idunikāls identifikators@typetipsUnitRaceresultsmasīvs ar rezultātiem
Paraugs: https://athletics.lv/race/27306.jsonld
Struktūra:
@idunikāls identifikators@typetipsResultrankskrējienā gūtā vietacompetitordalībnieksperformancesniegums laika, punktu vai attāluma izteiksmē.
Paraugs: https://athletics.lv/result/34064.jsonld
Struktūra:
Paraugs: https://athletics.lv/competitor/308756.jsonld)
Struktūra:
@idunikāls identifikators@typetipsTeam- (neobligāts)
namepilns vārds un uzvārds givenNamevārdsfamilyNameuzvārdsgenderdzimumsMalevaiFemale- (neobligāts)
nationalitypārstāvētā valsts, ieteicams formātācountrycode:ZZZ, kur ZZZ — valsts ISO 3166-1 alpha-3 kods. Formātscountrycode:LVAir ekvivalents šādai norādei:http://publications.europa.eu/resource/authority/country/LVA. birthDatedzimšanas datums ISO 8601 formātāGGGG-MM-DD, piemēram,1988-11-23.
Paraugs: https://athletics.lv/athlete/3620.jsonld
Struktūra:
@idunikāls identifikators@typetipsTeamnamekomandas nosaukumsathletemasīvs ar komandas sportistiem
Struktūra:
@idunikāls identifikators@typetipsTimePerformancetimelaiks ISO 8601 formātāhh:mm:ss.uuu, piemēram,01:23:53.000vai00:00:12.214.
Paraugs: performance atribūtā šajā objektā https://athletics.lv/result/34064.jsonld#performance
Struktūra:
@idunikāls identifikators@typetipsPointsPerformancepointsgūto punktu skaits
Struktūra:
@idunikāls identifikators@typetipsDistancePerformancedistancedistances vērtība
Struktūra:
@typetipsQuantitativeValueunitCodemērvienība, piemēram MTR (metri) vai KGM (kilogrami)valuevērtība lielums norādītajās mērvienībās
- Procedurāla koda paraugs valodā PHP: https://github.com/GlaivePro/athletics-lv-json-ld/blob/master/examples/php-proc/export.php
- Objektorientēta koda paraugs valodā PHP: https://github.com/GlaivePro/athletics-lv-json-ld/blob/master/examples/php-oop/export.php