Co je XML feed

Transkript

Co je XML feed
Co je XML feed
Jedná se o speciální datový soubor ve formátu XML, který obsahuje informace o nabízených kurzech
(název, popis, lektor, termín, místo a další důležité informace).
Generované XML si vytvářejte synchronně s databází uvedenou ve vašem systému nebo na vašich
webových stránkách.
Pro lepší představu o struktuře dat v XML se můžete podívat na následující obrázek.
Jak XML feed vytvořit
V případě, že si XML soubor tvoříte ručně, otevřete např. Poznámkový blok. Na prvním řádku uveďte
hlavičku:
<? xml version="1.0" encoding="utf-8" ?>
Je potřeba mít kódování opravdu ve formátu UTF 8. Nestačí jen kódování uvést do hlavičky souboru. Kódování souboru
si ověřte např. ve vašem internetovém prohlížeči.
na dalším řádku uveďte uvozující tag “courses” a identifikátor firmy:
<courses company="identifikator-Vasi-firmy">
Identifikátor firmy je unikátní hash, který Vám přidělíme. Před přidělením můžete do pole identifikátor vložit
např. jméno firmy bez diakritiky a mezer.
Na další řádky vložte informace o jednotlivých kurzech s jejich popisem, kategorizací, termíny a lektory. Tyto
řádky je ideální generovat automaticky z vaší databáze. např.:
<course id="124">
<name>Marketing na Facebooku a dalších sociálních sítích</name>
<description>
<![CDATA[
<p><strong>Sociální média:</strong> Definice, druhy a principy</p>
<ul>
<li>proč řešit sociální média, co je WOM a jak využít virální
šíření</li>
<li>jak sociální média fungují, typologie uživatelů</li>
<li>Facebok – profily, stránky, skupiny, aplikace</li>
<li>český Facebook – data, čísla, trendy</li>
<li>Twitter, LinkedIn – uživatelé, marketingové využití</li>
<li>strategie na sociálních sítích, plánování, fáze</li>
<li>vyhodnocení komunikace, opuštění sociálních sítí.</li>
</ul>
]]>
</description>
<focus id="210">Marketing</focus>
<language id="1">Čeština</language>
<keyword>Sociální média</keyword>
<keyword>Facebook, Twitter, LinkedIn</keyword>
<keyword>Sociální marketing</keyword>
<profession id="155">Marketingový analytik</profession>
<profession id="156">Marketingový ředitel/manažer</profession>
<level id="2">středně pokročilí</level>
<term id="t1">
<date from="2012-12-01" to="2012-12-01"/>
<lector id="petr-novak">
<firstname>Petr</firstname>
<surname>Novák</surname>
</lector>
<price amount="3700" currency="CZK"/>
</term>
<term id="t2">
<date from="2012-12-05" to="2012-12-05"/>
<address street="Jankovcova" registry_number="1" city="Praha"
zip="16000">Mimořádně na adrese Jankovcova 1</address>
<lector id="petr-novak">
<firstname>Petr</firstname>
<surname>Novák</surname>
</lector>
<price amount="3700" currency="CZK"/>
</term>
</course>
Informace o dalších kurzech vkládejte ve stejném formátu vždy za značku </course> tak, aby byla
dodržena správná posloupnost elementů (viz. výše uvedený příklad, nebo ukázkové XML).
Za poslední vložený kurz vložíte ještě ukončení elementu:
</courses>
Výsledný soubor pak zveřejněte na vašich stránkách tak, aby byl k dispozici pro pravidelné stahování naším
robotem. Robot bude XML stahovat každý den v nočních hodinách. Při nedostupnosti souboru nebo dlouhém načítání souboru
nebude aktualizace provedena.
Pro lepší představu o struktuře a možnostech XML jsme připravili ukázkový soubor.
• ukázkový XML soubor [http://www.jobs.cz/xsd/example.xml]
XML elementy
XML soubor se skládá z jednotlivých elementů, u kterých je potřeba dodržet správné pořadí. Na
následujících řádcích jsou jednotlivé elementy popsány. Je také dodrženo jejich správné pořadí.
U povinných položek je uvedeno “povinné”, ostatní položky jsou volitelné. Čím více položek vyplníte, tím lépe
uživatelé Váš kurz naleznou.
<?xml version="1.0" encoding="UTF-8"?>
Uvozující element s identifikací verze XML a kódování.
<courses company="identifikátor firmy">
Kořenová značka v jejímž rámci je vše ostatní. Obsahuje jeden povinný atribut: company="...". Do tohoto
atributu uveďte námi přidělený unikátní identifikátor.
Tento identifikátor vám bude přidělen po vytvoření profilu firmy našim administrátorem. Identifikátor firmy naleznete také
v administraci kurzů na https://edu.lmc.cz.
Kurz
O kurzu vyplňte co nejvíce položek, díky tomu uživatelé váš kurz lépe najdou.
<course id="...">elementy kurzu</course>
Základní element, který uzavírá všechny ostatní elementy. Kurzů může být v XML neomezené množství.
Obsahuje jeden povinný atribut: id="...". Jedinečný a časově stálý identifikátor kurzu. Identifikátorem může
být jakákoli číselná nebo textová hodnota, jedinou podmínkou je jeho unikátnost a časová stálost.
• povinné
<name>název kurzu</name>
Obsahuje název kurzu. Neuvádějte prosím celý název KAPITÁLKAMI.
• maximální délka 255 znaků
• povinné
<description> <![CDATA[ popis kurzu ]]> </description>
Popis kurzu může být formátován pomocí html značek <strong> <p> <ul> <li>.
• povinné
<image src="URL obrázku ke kurzu"/>
V atributu src="..." je uveden odkaz na obrázek, který reprezentuje kurz (ilustrační obrázek). Ke kurzu je
povolen pouze jeden ilustrační obrázek.
• minimální rozměry obrázku 640 x 480 px, větší obrázek bude poměrově zmenšen a případně oříznut
• akceptované formáty obrázku: jpeg, png, gif
Obrázek se zobrazí ve výsledcích vyhledávání a v detailu kurzu. Díky obrázku bude váš inzerát výraznější!
Jaký zvolit obrázek ke kurzu?
Příklady:
- fotografie z již proběhlých termínů kurzu
- fotografie učebny nebo místa, kde bude výuka probíhat
- obrázek pomůcky nebo učebnice, které se budou při výuce používat
- ilustrační foto související s tématikou kurzu
<focus id="id kategorie">Název kategorie</focus>
Tento element určuje zařazení kurzu do kategorií. Uvnitř elementu může / nemusí být název kategorie.
obsahuje atribut: id="...".
•
•
•
•
povinné
počet uvedených kategorií je 1 - 3.
kurz musí být zařazen do konkrétních podkategorií (id není dělitelné 100)
id musí odpovídat číselníku: XML číselník kategorií
Proč máme tak málo hlavních kategorií a podkategorií?
Prototypy jsme testovali na uživatelích a zjistili jsme, že si mnohem lépe vyberou z omezeného počtu kategorií. Webové
stránky se lidem lépe používají a rychleji najdou to, co hledají. Výsledky si pak dokáží upřesnit dle potřeby např. podle
profesí a dalších parametrů jako je termín, lokalita, lektor nebo cena.
Může se stát, že si žádnou z kategorií nevyberete, nebude odpovídat vašemu kurzu. V tomto případě vás prosíme o
návrh kategorie nové. Zvážíme její přidání s ohledem na potenciál obsahu.
<language id="id jazyka">název jazyka</language>
Slouží po uvedení vyučovacího jazyka kurzu. Uvnitř elementu můžete uvést název jazyka, obsahuje atribut:
id="...".
• číselník id: 1 - čeština, 2 - angličtina.
• není-li element uváděn, je kurzu nastaven jazyk “čeština”
<keyword>klíčové slovo</keyword>
Zde uvádějte klíčová slova, podle kterých bude váš kurz lépe dohledatelný. Těchto elementů může být
několik za sebou bez omezení jejich max. počtu.
Jaká klíčová slova napsat? Jsou to slova nebo sousloví, která charakterizují váš kurz. Můžete použít např.
slangové výrazy nebo dovednosti získané na kurzu. Pro kurz o tvorbě webu můžete použít např.: webdesign,
webovky, design, grafika, webové stránky, stránka, prezentace na internetu.
Naše vyhledávání umí skloňovat a doplňovat množné číslo, proto nemusíte uvádět všechny tvary každého slova.
<profession id="id profese">název profese</profession>
Slouží pro přiřazení profese ke kurzu. Zde určíte pro jaké profese je kurz nejvhodnější. Těchto elementů
může být několik za sebou, uvnitř elementu může / nemusí být název profese. Element obsahuje atribut:
id="...", který určuje profesi.
• počet uvedených profesí: 0 - 10.
• id musí odpovídat číselníku: XML číselník profesí
Kurzy lépe dostanete k uživatelům přidáním profesí a klíčových slov. Díky správně zadaným profesím se budou
moci zobrazovat relevantní nabídky vzdělávání a rozvoje všem uživatelům Jobs.cz a personalistům v aplikaci
Teamio.
<level id="id úrovně">název úrovně</level>
Zde uvádějte úroveň požadovaných znalostí - těchto elementů může být několik za sebou. Uvnitř elementu
může být název úrovně. Povinně obsahuje atribut: id="...".
• úrovní může být uvedeno: 0 - 3
• číselník id: 1 - začátečníci, 2 - středně pokročilí, 3 - odborníci, 0 - nezáleží
• když není element uváděn, je kurzu nastavena úroveň “nezáleží”
Termín
K jednomu kurzu může být uvedeno více termínů. Tyto termíny uvádějte za sebou, každý s unikátním
identifikátorem. Termín určují následující elementy.
<term id="1" tip="false" lastminute="true" state="1">elementy
termínu</term>
Element uzavírá termín kurzu - těchto elementů může být několik za sebou. Obsahuje několik atributů:
id="..." je povinné a v rámci kurzu je to jedinečný a časově stálý identifikátor termínu. Identifikátorem může
být jakákoli číselná nebo textová hodnota, jedinou podmínkou je jeho unikátnost (v rámci kurzu) a časová
stálost.
tip="..." je nepovinný (defaultně 0), nabývá hodnot true (1) nebo false (0) a označuje zda-li má být termín
tohoto kurzu označen TIP a upřednostněn ve výpisu mezi ostatními kurzy. Jedná se o placenou službu!
lastminute="..." je nepovinný (defaultně 0), nabývá hodnot true nebo false a označuje zda-li má být termín
tohoto kurzu vypisován mezi LastMinute kurzy. Jedná se o placenou službu!
state="..." je také nepovinný atribut (defaultně 1), určuje stav termínu, jestli se má nebo nemá daný termín
zobrazovat uživatelům. Může nabývat těchto hodnot: 0 - uzavřený (nezobrazuje se uživatelům), 1 - otevřený
(zobrazuje se), 2 - archivovaný (nezobrazuje se, je uložen v archivu).
• povinné
• minimálně 1 termín ke kurzu
<date from="2012-12-24T18:00:00" to="2012-12-24T19:00:00"/>
Tento element určuje datum a čas konání kurzu. A obsahuje dva následující atributy, které jsou povinné:
from="..." Udává od kdy se tento termín kurzu koná. Formát data je yyyy-mm-ddThh:mm:ss
yyyy - rok zapsaný čtyřmi číslicemi; mm měsíc zapsaný dvěmi číslicemi (je-li jednočíselný pak je uvozen
nulou); dd - den; T - oddělovač data a času; h - hodiny; m - minuty; s - sekundy
to="..." Udává do kdy se tento termín kurzu koná. Formát data je stejný yyyy-mm-ddThh:mm:ss
• povinné
Datum termínu není možné po zadání změnit. V případě nutnosti změny již existujícího data u termínu kontaktuje
zákaznickou podporu společnosti LMC.
<address street="ulice" registry_number="číslo popisné"
house_number="číslo orientační" city="město" zip="PSČ">upřesnění
adresy</address>
Určuje adresu konání kurzu. Jako textovou informaci tohoto elementu lze uvést (nemusí být uvedeno)
nějakou poznámku k adrese např. “Hotel ABC, 10. patro, zasedačka modrá”. Má následující atributy:
street="..." povinné, název ulice
registry_number="..." povinné, číslo popisné
city="..." povinné, název města či obce
zip="..." povinné, PSČ
house_number="..." nepovinné, číslo orientační
Pokud není element s adresou uveden, je použita adresa sídla firmy.
Lektor
Tento element určuje lektora daného termínu nebo na něj odkazuje. Stačí když je lektor uveden v XML jen
jednou a v ostatních případech se na něj už jen odkazuje.
Proč uvádět lektora? Lektoři jsou totiž pro naše uživatele velmi důležití, častokrát hledají přímo jejich jméno.
Lektor dokáže ovlivnit celkový dojem z kurzu. Proto uvedené jméno lektora a jeho vyplněný profil dokáže přilákat
potenciální účastníky vašeho kurzu.
<lector ref="id lektora"/>
Odkaz na již existujícího lektora. Obsahuje atribut ref=”…”, v tomto atributu uvádějte odkaz na existující ID
lektora.
<lector id="id lektora">elementy lektora</lector>
Tento element obsahuje další elementy upřesňující informace o lektorovi. Povinný je také atribut id=”…”,
který musí být v rámci dokumentu unikátní (pro daného lektora). Na zde uvedené id se poté můžete
odkazovat v celém XML dokumentu (viz. specifikace předchozího elementu).
<firstname>jméno</firstname>
Jméno lektora může obsahovat také tituly před jménem nebo prostřední jméno.
• povinné (v případě, že je lektor uveden)
<surname>přijmení</surname>
Příjmení lektora může obsahovat i tituly za jménem.
• povinné (v případě, že je lektor uveden)
<description> <![CDATA[ popis lektora ]]> </description>
Zde uveďte základní informace o lektorovi (krátké CV). Popis kurzu může být formátován pomocí html
značek <strong> <p> <ul> <li>.
<image src="URL foto lektora"/>
V atributu src="..." uveďte odkaz na fotografii, která reprezentuje lektora. K lektorovi je povoleno pouze jedno
foto.
• minimální rozměry fotografie jsou 200 x 200 px, větší fotografie bude poměrově zmenšena a případně
oříznuta
• akceptované formáty obrázku: jpeg, png, gif
<skills>dovednosti lektora</skills>
Zde uvádějte dovednosti, specializace nebo získané certifikáty lektora.
Cena kurzu / termínu
<price amount="cena bez DPH" currency="měna" discount="sleva
absolutní" discount-percent="sleva v %"/>
Element určuje cenu kurzu v daném termínu (cena se u jednotlivých termínů může lišit). Je možné také
uvést slevu z ceny. Obsahuje následující atributy:
amount="..." povinný atribut uvádějící cenu za kurz bez DPH, celé číslo bez mezer
currency="..." povinný atribut určující měnu uváděné ceny, mohou být použity následující hodnoty: CZK,
EUR
discount="..." nepovinné, určuje slevu z ceny “amount” v absolutním čísle (stačí uvádět jen “discout” nebo
“discount-percent”).
discount-percent="..." nepovinné, určuje slevu z ceny “amount” v procentech (stačí uvádět jen “discout” nebo
“discount-percent”).
• povinné
Povinné a nepovinné informace
Souhrn povinných a nepovinných informací ke kurzům a jejich případné omezení. Tyto informace odpovídají
jednotlivým elementům nebo atributům. Získáte tak rychlý přehled o datech, která si musíte připravit pro
funkční export.
Bez správně vyplněných povinných položek nelze kurz naimportovat a zobrazovat našim uživatelům.
Povinné položky firmy
• id firmy, přiděleno LMC, unikátní identifikátor
<courses company="identifikátor firmy">
Povinné položky kurzu
• id kurzu
<course id="...">elementy kurzu</course>
• název kurzu, omezení: 255 znaků
<name>název kurzu</name>
• popis kurzu, formát: html, povolené tagy: p, strong, ul, li
<description> <![CDATA[ popis kurzu ]]> </description>
• zařazení kurzu do pokategorie (focus id podle číselníku), omezení: alespoň jedno zařazení, id není
dělitené 100 (zařazení do konkrétní podkategorie)
<focus id="id kategorie">Název kategorie</focus>
• termín kurzu, viz. níže, omezení: alespoň jeden
Nepovinné položky kurzu
• ilustrační obrázek kurzu, omezení: nejvýše jeden, minimální rozměry 640 x 480 px, formát: jpg, png, gif.
(ne logotyp firmy)
<image src="URL obrázku ke kurzu"/>
• jazyk kurzu (podle číselníku), defaultně id:1 čeština
<language id="id jazyka">název jazyka</language>
• klíčová slova, neomezené množství
<keyword>klíčové slovo</keyword>
• vazba na profese (vhodné pro, id podle číselníku)., omezení: nejvýše deset
<profession id="id profese">název profese</profession>
• úroveň kurzu (id podle číselníku), omezení: nejvýše tři., defaultně:0 nezáleží
<level id="id úrovně">název úrovně</level>
Povinné položky termínu
• id termínu
<term id="1" tip="false" lastminute="true" state="1">elementy termínu</term>
• datum termínu OD, formát: ISO (2012-08-26T09:00:00) nebo YYYY-MM-DD
<date from="2012-12-24T18:00:00" to="2012-12-24T19:00:00"/>
• datum termínu DO, formát: ISO (2012-08-26T09:00:00) nebo YYYY-MM-DD
<date from="2012-12-24T18:00:00" to="2012-12-24T19:00:00"/>
Nepovinné položky termínu
• lastminute (0/1), defaultně 0
<term id="1" tip="false" lastminute="true" state="1">elementy termínu</term>
• tip (0/1), defaultně 0
<term id="1" tip="false" lastminute="true" state="1">elementy termínu</term>
• stav (id podle číselníku), defaultně = 1 (otevřený termín)
<term id="1" tip="false" lastminute="true" state="1">elementy termínu</term>
• adresa. viz. níže, omezení: nejvýše jedna, defaultně = adresa firmy
• lektor, viz. níže, bez omezení
• cena termínu, defaultně = 0
<price amount="cena bez DPH" currency="měna" discount="sleva absolutní"
discount-percent="sleva v %"/>
• měna ceny., defaultně = CZK
<price amount="cena bez DPH" currency="měna" discount="sleva absolutní"
discount-percent="sleva v %"/>
• absolutní sleva z ceny, defaultně = 0
<price amount="cena bez DPH" currency="měna" discount="sleva absolutní"
discount-percent="sleva v %"/>
• procentuální sleva z ceny, defaultně = 0
<price amount="cena bez DPH" currency="měna" discount="sleva absolutní"
discount-percent="sleva v %"/>
Povinné položky adresy
• ulice
<address street="ulice" registry_number="číslo popisné" house_number="číslo
orientační" city="město" zip="PSČ">upřesnění adresy</address>
• číslo popisné
<address street="ulice" registry_number="číslo popisné" house_number="číslo
orientační" city="město" zip="PSČ">upřesnění adresy</address>
• město
<address street="ulice" registry_number="číslo popisné" house_number="číslo
orientační" city="město" zip="PSČ">upřesnění adresy</address>
• psč
<address street="ulice" registry_number="číslo popisné" house_number="číslo
orientační" city="město" zip="PSČ">upřesnění adresy</address>
Nepovinné položky adresy
• číslo orientační
<address street="ulice" registry_number="číslo popisné" house_number="číslo
orientační" city="město" zip="PSČ">upřesnění adresy</address>
• dodatečné textové info (např. "v pátém patře")
<address street="ulice" registry_number="číslo popisné" house_number="číslo
orientační" city="město" zip="PSČ">upřesnění adresy</address>
Povinné položky lektora
pokud je lektor uveden
• id nebo reference na id již definovaného lektora
<lector id="id lektora">elementy lektora</lector>
V případě, že není použita reference, pak jsou povinnými položkami také:
• jméno
<firstname>jméno</firstname>
• příjmení
<surname>přijmení</surname>
Nepovinné položky lektora
• foto, omezení: nejvýše jedno, 200 x 200 px
<image src="URL foto lektora"/>
• popis, omezení: viz. popis kurzu
<description> <![CDATA[ popis lektora ]]> </description>
• skills, omezení: prostý text bez omezení délky
<skills>dovednosti lektora</skills>
Číselníky
Číselníky se automaticky aktualizují dle naší databáze. Pro aktuální data doporučujeme XML s číselníky
automaticky stahovat z níže uvedených URL.
• kategorie kurzů: http://www.jobs.cz/kurzy-a-skoleni/media/xml/focus.xml
• profese: http://www.jobs.cz/kurzy-a-skoleni/media/xml/profession.xml
Ověření validity XML
Validitu XML ověříte XSD schématem. To vám pomůže s přípravou validního XML. XSD schéma si můžete
stáhnout zde.
Jak si validitu ověřit:
Validace XML proti XSD je možná pomoci nástroje XmlLint (pro Windows jej najdete zde: http://
www.zlatkovic.com/libxml.en.html):
Poté je potřeba XmLint spustit a zadat následující příkaz:
xmllint --noout --schema course.xsd název-vašeho-suboru.xml
Můžete využít také on-line nástroj: http://www.freeformatter.com/xml-validator-xsd.html

Podobné dokumenty

XML export kurzů na Jobs.cz a Temio Edumarket Jak XML import

XML export kurzů na Jobs.cz a Temio Edumarket Jak XML import

upřesnění adresy
dodatečné textové info (např. "v pátém patře")
Více

franšízing - Česká asociace franchisingu

franšízing - Česká asociace franchisingu pozornosti. „Zásadní je si pečlivě pročíst smlouvu. Vypovídá hodně nejen o systému, ale i o franšízorovi. V dobrých systémech by neměl být problém s poskytnutím návrhu smlouvy k analýze,“ upozorňuj...

Více

ZJCZ_05_15_S01_Editorial Prefinal

ZJCZ_05_15_S01_Editorial Prefinal trendu eura. Nejnovější kurzový vývoj ale minimálně mluví pro několikaměsíční konsolidaci. Proto by měli investoři inkasovat své zisky z discount put certifikátu (ISIN DE000DG2GG34) doporučeného v ...

Více

Instrukce a data

Instrukce a data stávající instrukce umožňují pouze použití konstant uložených v paměti – např. přičtení 4 k registru $s3 lw $t0, OffsetConst4 ($s1) add $s3, $s3, $t0

Více

Řešení - BRKOS

Řešení - BRKOS Ňoumy, zda by dokázal svými lichoběžníky pokrýt tvar připomínající kornout s dvěma kopečky zmrzliny (viz obrázek). Může to Ňouma zvládnout? Řešení. Nakreslený „kornout se zmrzlinouÿ můžeme rozdělit...

Více

(zveřejněna 1. 3. 2012) PDF - Národní digitální knihovna

(zveřejněna 1. 3. 2012) PDF - Národní digitální knihovna tj.
 mají
 jeden
 záznam
 v
katalogu,
 někdy
 jsou
 jednotlivé
 díly
 vedeny
 jako
 jednotlivé
 záznamy
 v
katalogu;
obou
případech
musí
vzniknout
metadatový
popis
ke
každému
svazku
jako
základní
 ...

Více

1 Kombinatorika - sbírka vybraných úloh 2 1.1 Základní

1 Kombinatorika - sbírka vybraných úloh 2 1.1 Základní průběh turnaje (tj. případné soupeře v dalších kolech) neuvažujte. 15. Na kostkách domina je v každém poli znázorněno 0 - 10 bodů, přičemž libovolná z možných dvojic je na právě jedné kostce. Kolik...

Více

(zveřejněna 5. 4. 2012)

(zveřejněna 5. 4. 2012) Pole
MODS
a
DC
pro
titul
periodika
...............................................................................................................................
23
 Pole
MODS
a
DC
pro
ročník
peri...

Více