1 CdbXML referentiegids Subject Toelichting van het CdbXML uitwisselingsformaat Date 16/09/2011 Reference Authors Sven Houtmeyers (SHO) Karel Lievens...
Heb je de laatste versie voor je? Om er zeker van te zijn dat je de meest recente versie van de documentatie voor je hebt, vergelijk je die best met de revisietabel op http://tools.uitdatabank.be/docs/. Vragen? Je kan met je vragen terecht op [email protected] of via Twitter @UiTdatabank.
Licentie
De CdbXML referentiegids van CultuurNet Vlaanderen is in licentie gegeven volgens een Creative Commons Naamsvermelding-NietCommercieel-GelijkDelen 3.0 Unported licentie. Gebaseerd op een werk op tools.uitdatabank.be.
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
3/49
2 Over CultuurNet Vlaanderen (meer) mensen (meer) goesting (meer) cultuur
CultuurNet Vlaanderen (°2002, Brussel) is een specialist in cultuurmarketing. Op vraag van de Vlaamse overheid trachten we (meer) mensen (meer) goesting in (meer) cultuur te geven. Informeren De Vlaming beleeft 80% van zijn vrije tijd binnen een straal van 30 kilometer rond de woonplek. Om een zo aantrekkelijk mogelijk antwoord te bieden op de vragen “Wat kan ik beleven in mijn vrije tijd?” en “Waar kan ik in mijn buurt naartoe?”, zet CultuurNet Vlaanderen een UiTnetwerk van gemeentelijke en regionale partners op dat straks heel Vlaanderen moet bestrijken: Van UiT in Aarschot en UiT in regio Kortrijk tot UiT in Sint-Laureins en UiT in Brussel. De websites en magazines van deze lokale spelers worden de kortste weg naar activiteiten en evenementen om de hoek. Dit UiTnetwerk haalt zijn informatie uit de UiTdatabank. Ze is de centrale plek die alle gegevens over vrije tijd en cultuur in Vlaanderen verzamelt. Meer dan 6.000 lokale contactpersonen voeren jaarlijks 75.000 activiteiten in. UiTinVlaanderen.be is het grote uitstalraam waarop het volledige aanbod in Vlaanderen terug te vinden is. De UiTdatabank is verder ook dé bron voor de vrijetijdsagenda’s van de meeste Vlaamse dagbladen, magazines en (websites van) televisiezenders. Ook kinderen bekleden een speciale plaats. Voor hen is er Vlieg, een label dat het cultuuraanbod voor de -12 jarigen zichtbaar maakt. Meer dan 450 cultuurhuizen en gemeenten gebruiken het vrolijke insect in hun communicatie. Goesting geven De informatie over heel Vlaanderen verspreiden is slechts een eerste stap. We zoeken meer dan lezers van informatie, we zoeken deelnemers aan cultuur. Binnen het UiTnetwerk geven we lokale besturen ondersteuning om hun cultuur- en vrijetijdscommunicatie strategischer aan te pakken. We betrekken daarbij zoveel mogelijk lokale organisaties. Samen met hen zetten we initiatieven naar een breed publiek op. De Vliegacties ten slotte trekken duizenden kinderen letterlijk over de drempel van cultuurhuizen. Met Vlieg hebben we een herkenbaar figuurtje geïntroduceerd in hun leefwereld. Sinds 2004 staan we ook in voor de organisatie en communicatie van de jaarlijkse uitreiking van de CultuurPrijzen Vlaanderen.
3 Outline Dit document behandelt de gegevensstandaard CdbXML 3, een eenvoudige en efficiënte XMLstructuur om cultuur- en vrijetijdsinformatie uit te wisselen. Onder cultuur en vrijetijdsinformatie begrijpen we: een brede waaier aan gegevens die onder meer betrekking hebben op het cultuur en vrijetijdsaanbod (evenementen en activiteiten), organisaties, en locaties waar er cultuur wordt aangeboden.
De uitwisseling van data kan zowel plaatsvinden tussen de UiTdatabank en de verschillende organisaties of partners, als tussen (culturele) organisaties onderling. Om gegevens uit te wisselen, weze het gegevens toevoegen aan een bron of gegevens af te nemen uit een bron, moeten er een aantal conventies en regels m.b.t. het formaat van de boodschap zelf gerespecteerd worden. Als deze regels niet gerepecteerd worden zal de engine die de gegevens moet verwerken de inkomende boodschap ofwel niet verstaan ofwel als foutief beschouwen. Dit document behandelt deze regels. Hoe moet het inhoudelijke deel van een boodschap geformatteerd worden om geldig “valid” te zijn? Of, hoe is de te hanteren communicatiestandaard “CdbXML” opgebouwd? Wat is CdbXML CdbXML is een compacte, eenvoudige gegevensstandaard voor uitwisseling van agendagegevens die gehanteerd wordt door de UiTdatabank en tal van andere organisaties. CdbXML beschrijft ten eerste het datamodel van de UiTdatabank en ten tweede de categorisatie en andere systeemwaarden. Dit document gaat gepaard met het XML Schema Dit document is een toelichting bij het XML Schema (XSD) van het uitwisselingsformaat CdbXML 3.1. Je vindt het Schema op http://www.cultuurdatabank.com/XMLSchema/CdbXSD/3.1/FINAL.
Volgende onderwerpen komen aan bod:
Wijzigingen t.a.v. CdbXML 3.0
Overzicht van CdbXML 3.1 elementen en attributen
Per item type worden de “constraints” behandeld: is het veld verplicht, welk datatype, bijv. timestamp, double, string moet gebruikt worden, welke cardinaliteit wordt gehanteerd. Daarnaast wordt vermeld of het element enkel voor “input” is, d.i. jouw data versturen naar de UiTdatabank, of voor “output”, d.i. data uit de databank opnemen in jouw systeem, of voor beide werkwijzen geldt.
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
5/49
4 Conventies omtrent noteringen Velden worden als hun XPath positie genoteerd. XPath wordt gebruikt om door elementen en attributen in een XML document te navigeren. In XPath wordt een XML document behandelt als een boomstructuur met nodes. Er worden path expressions gebruikt om door de nodes te navigeren. Het bovenste element in de boomstructuur is de root node. Harry PotterJ K. Rowling2005 <price>29.99
Root node
J K. Rowling
Element node
lang="en"
Attribuut node
De pad expressies die in dit document gebruikt worden zijn hieronder opgelijst:
Expressie
Beschrijving
nodename
Selecteert alle kind elementen van de genoemde node.
/
Selecteert de root node.
//
Selecteert de nodes in het document vanuit de huidige nodie ongeacht waar die zijn.
@
Selecteert attributen.
In onderstaande tabel worden de expressie toegepast op het voorbeeld: Path Expression
Result
bookstore
Selecteert alle kind nodes van het bookstore element.
/bookstore
Selecteert het root element bookstore.
bookstore/book
Selecteert alle book elementen die onderdeel zijn van bookstore.
//book
Selecteert alle book elementen ongeacht waar ze zich in het document bevinden.
//@lang
Selecteert alle attributen die lang heten
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
6/49
5 Wijzigingen t.a.v. het CdbXML 3.0 formaat Deze paragraaf werd opgesteld om partijen die eerder met CdbXML werkten een overzicht te bieden van de wijzingen in de nieuwe versie CdbXML 3.1 FINAL. Algemeen
/cdbxml (document element) De namespace is gewijzigd: xmlns="http://www.cultuurdatabank.com/XMLSchema/CdbXSD/3.1/FINAL"
//longdescription Het is nu mogelijk HTML op te nemen in een lange beschrijving (is van type xs:anyType)
//categories Het element //categories vervangt //eventcategories, //actorcategories en //productioncategories. Hierdoor wordt het eenvoudiger categorisatiefacetten toe te voegen. Deze wijziging maakte onderdeel uit van een algehele vereenvoudiging van de categorisatie tav vorige versies.
//media Media bevatte vroeger verwijzingen naar objecten die aan de feed (samen met de xml in een zipbestand) werden toegevoegd. In de nieuwe versie bevat media ofwel in-line tekst ofwel verwijzingen naar objecten ergens op het web. Deze objecten kunnen foto's zijn of videofragmenten, maar evengoed tekstfragmenten en verwijzingen naar applicaties zoals Google Maps of webpagina's om tickets te bestellen. Hierdoor is copyright niet meer verplicht, evenmin het //filetype en de //filename. Daarnaast kan (moet) een media/file object ofwel een //hlink element bevatten ofwel een //plaintext element. Een aantal mediatypes zijn niet langer relevant: poster, other, audio, photo, brochure. Daartegenover zijn er bijgekomen imageweb, imageprint (deze twee tvv van photo), webresource en reservations. Video, roadmap en text zijn behouden.
Toegevoegd
/cdbxml/nofrecords voor output, d.i. het totaal aantal zoekresultaten.
cdbxml/list voor output, lijstrepresentatie voor events. Zie http://build.uitdatabank.be/api/events/search?key=a0164e2c-7f5a-4e42-9212-305a046461ab
cdbxml/actor/@asset voor output, om aan te duiden dat het betreffende actor object uniek is en bewaakt wordt op "kwaliteit" door onze redacteurs
//@createdby, //@creationdate, //@lastupdatedby, //@lastupdated, //@owner voor output, informatie over de auteurs van het betreffende object
//categories Een overkoepelende element definitie voor de formattering van categorieën voor een event, actor of productie. Zie uitleg hierboven.
//event/@isparent Als een aanbod een koepelaanbod is wordt deze boolean waarde op true gezet
//event/@pctcomplete Geeft aan hoe "rijk" een aanbod werd ingevuld
//event/@published Voor output, geeft aan of een event mag gepubliceerd worden
//event/@wfstatus
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
7/49
Voor output, geeft aan of een event werd gemodereerd (@wfstatus=”draft”, ”readyforvalidation”, “rejected”, “approved”)
//media/file/plaintext plaintext is een onderdeel van een choice element. Voor media objecten moet men ofwel een //hlink element invullen ofwel //plaintext voorzien. Zie uitleg hierboven.
//production/relatedevents Voor output, via de UiTdatabank Search API kan men binnen een productie de lijst van evenementen opvragen die ervoor zijn ingepland
Verwijderd
//cdbxml/links De hoofd informatie eenheid “Links” bestaat niet meer in de UiTdatabank. Enkel “Event, “Actor” en “Production” bestaan nog.
//address/physical/street/@streetid De UiTdatabank beschikt niet meer over een geografisch bestand. Voor geografische validatie wordt nu Google Maps gebruikt.
Deprecated (dwz dat je deze informatie nog mag aanleveren maar dat ze zal genegeerd worden bij import)
//actorcategories, //eventcategories, //productioncategories vervangen door een algemeen element //categories. Zie uitleg hierboven.
//actor/@availablefrom, //actor/@availableto embargodatum en archiveringsdatum zijn niet relevant voor Actor objecten.
//@method er wordt niet meer verzonden of het object in de feed zit omdat het een create of een update is
//actor/@person er wordt niet meer bewaard of een Actor obect een persoon of een organisatie is. //actor/@validator, //actor/@owner Actor objecten worden niet meer gevalideerd maar centraal beheerd. Er zijn geen eigenaarsgroepen meer voor Actor objecten //actor/@private Het is niet meer mogelijk actoren aan het systeem toe te voegen die enkel voor de eigenaar toegankelijk zijn
//address/@reservation Men kan geen fysiek adres meer ingeven waar mensen terecht kunnen voor reservaties.
//address/@main Men kan niet meer ingeven wat het "hoofdadres" is
//relatedactors
//timestamp/@availability
Er zijn geen onderlinge relaties meer mogelijk tussen actor objecten.
Het is niet meer mogelijk om voor een bepaald tijdstip aan te geven of een event op dat tijdstip uitverkocht, geannuleerd, verplaatst is. Uitverkocht en geannuleerd zijn nu categorieën.
//event/eventdetails/eventdetail/admission Het is niet meer mogelijk in vrije tekst de toegangsvoorwaarden voor een event te beschrijven.
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
8/49
//event/eventdetails/eventdetail/estimatedtime Het is niet meer mogelijk de geschatte tijdsduur van een event in te geven.
//properties Het is niet meer mogelijk vrije "partnerspecifieke" informatie toe te voegen.
//media/file/@mediatype=poster, //media/file/@mediatype=other, //media/file/@mediatype=audio, //media/file/@mediatype=brochure, //media/file/@mediatype=photo, //media/file/@mediatype=logo Een aantal mediatypes zijn niet langer relevant. Wel zijn er bijgekomen imageweb, imageprint, webresource en reservations. Video, roadmap en text zijn behouden.
//eventrelations Het is niet meer mogelijk te verwijzen naar een koepelaanbod zoals dat voorheen tewerk ging. Nu wordt de naam van het koepelevent als keyword meegegeven.
Niet langer verplicht
//shortdescription Het is niet langer verplicht een korte beschrijving te voorzien.
//event/organizer Het is niet langer verplicht in te vullen wie de organisator van een event is.
//media/file/copyright Het is niet langer verplicht copyright informatie bij media elementen te plaatsen. Uitleg zie hoger.
//media/file/filetype Het is niet langer verplicht het “filetype” van een media element te voorzien. Uitleg zie hoger.
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
9/49
6 Overzicht elementen en attributen 6.1 /cdbxml (het document element) Definitie //cdbxml is het container element waarbinnen de informatie geleverd wordt. Het kan volgende kindelementen bevatten: OF //events, OF //productions, OF //actors EN eventueel //deletes EN eventueel //metadata. Dus: <metadata>... <events> <event>... <deletes> <delete>
Verwijzing naar de locatie waar het XML Schema zich bevindt, met name http://www.cultuurdatabank.com/XMLSchema/CdbXSD/3.1/FINAL/CdbXSD.xsd
/cdbxml/events
Het child element dat als container dient voor één of meer event items. Zie 6.2.
0..1
0..1
/cdbxml/actors
Het child element dat als container dient voor één of meer actor items. Zie 6.3.
0
0..1
/cdbxml/productions
Het child element dat als container dient voor één of meer production items. Zie
0
0..1
0..1
0..1
0
0..1
6.4. /cdbxml/deletes
Het child element dat als container gebruikt wordt om objecten te laten verwijderen uit de afnemende databank. Zie 6.5.
/cdbxml/list
Het list element bevat de lijstrepresentatie voor event objecten bij output. Zie
1 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
Beschrijft welke versie van de categorisatie gebruikt wordt.
0
0..1
6.2 /cdbxml/events/event Definitie Dit is het “core” object in de UiTdatabank. Volgende voorbeelden illustreren wat we onder een Event verstaan:
Het kortfilmfestival dat doorgaat van 1 tot 8 december in het STUK en Cinema ZED.
Admiral Freebee Solo op 30/11 in de Monty in Antwerpen
De kerstmarkt van 30/11 t/m 30/12 op de Grote Markt in Brussel
“Dagprogramma à la carte: een hedendaagse kijk op kunst (12 tot 18 jaar)”: rondleidingen op afspraak in het MUHKA en het Middelheimmuseum, elke dag behalve maandag tussen 10 en 17 u.
De Zimmertoren in Lier met op de eerste verdieping de Astronomische Studio
Voorbeeld 2: alle velden <events> <event availablefrom="2010-02-25T00:00:00" availableto="2010-08-09T00:00:00" cdbid="ea37cae2-c91e-4810-89ab-e060432d2b78" createdby="mverdoodt" creationdate="2010-07-05T18:28:18" externalid="SKB Import:SKB00001_216413" isparent="false" lastupdated="2010-07-28T13:58:55" lastupdatedby="mverdoodt" owner="SKB Import" pctcomplete="80" private="false" published="true" validator="SKB" wfstatus="approved"> 182010-08-0121:00:00.0000000ConcertJazz en bluesRegionaal <mail>[email protected]0487-62.22.31http://www.bonnefooi.be <eventdetails> <eventdetail lang="nl"> zo 01/08/10 om 21:00MuzikantWeggelaten voor leesbaarheid... <media> Bonnefooihttp://www.bonnefooi.be/images/sized/site/images/uploads/Jeroen_Jamming453x604.jpg <mediatype>imageweb Jeroen Jamming <price> <pricevalue>0 <shortdescription>Matt, onze English Man in Brussels, geeft elke zondag vanaf 20u30 onbekende muzikanten de gelegenheid de kans hun talenten te delen met een groter publiek. Dus kom eens langs en leg een oortje te luisteren of pak een instument en speel een stukje mee. The Bonnefooi Acoustic Jam <eventdetail lang="en"> <shortdescription>Matt, our English Man in Brussels, gives musicians the upportunity to display their talent in front of a larger audience. Every Sunday from 20:30 until well after midnight. So come in and have a listen or pick up an instrument and jam along with Matt and all the others. The Bonnefooi Acoustic JamConcertFree Jazz, AcoustischNederlands
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
12/49
FransBrusselBE8 <street>Steenstraat 1000
Eigenschappen Element
Beschrijving
In
Out2
event/@availablefrom
Embargodatum; datum waarop het item mag gepubliceerd worden.
0
1
0
1
0
1
0
1
0
1
1
1
0
1
0
1
0
1
0
1
(type: dateTime) event/@availableto
Archiefdatum; datum waarop een item niet langer gepubliceerd is. (type: dateTime)
event/@cdbid
ID toegekend door de UiTdatabank. D.i. de CIDN. (type: string, minlength:1, maxlength:60)
event/@createdy
Auteur van het item. (type: string)
event/@createdon
Datum waarop het item aan de UiTdatabank werd toegevoegd. (type: dateTime)
event/@externalid
Inkomend voorziet de partner de ID uit zijn databank. Uitgaand wordt dit ID voorafgegaan door een prefix. (type: string, minlength:1, maxlength:250)
event/@lastupdated
Auteur van de laatste aanpassing. (type: string)
event/@lastupdatedon
Datum laatste aanpassing. (type: dateTime)
event/@owner
Eigenaar invoerdersgroep (type: string)
event/@pctcomplete
Volledigheidspercentage voor het betreffende aanbod. (type: integer)
2 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
13/49
event/@private
Is het event slechts beschikbaar voor publicatie op een beperkt aantal kanalen?
1
1
0
1
0
1
0
1
0..1
0..1
(type: boolean) event/@published
Is het event geschikt voor publicatie? (type: boolean)
event/@validator
Wie stond in voor de moderatie van het event? (type: string)
event/@wfstatus
In welk “moderatiestatus” bevindt het event zich. (type: string, enumeration values: “draft”, “readyforvalidation”, “approved”, “rejected”)
event/agefrom
Tot welke leeftijdsklasse richt men zich met het aanbod? (type: nonNegativeInteger)
event/calendar
Wanneer gaat het aanbod door? Zie xxx.
1
1
event/categories
Welke categorieën gelden voor het event? Zie xxx.
1
1
event/contactinfo
URL, tel of e-mail waar men terecht kan voor meer informatie of reserveringen.
1
1
Zie xxx. event/eventdetails/
Dit is een parent element dat de meertalige velden omvat.
1
1
event/eventdetail/
Het parent element voor de velden in een specifieke taal.
1..n
1..n
event/eventdetails/@lang
De taal waarin de velden van de child elementen voorzien werden.
1
1
0
1
0..1
0..1
Een uitvoerder. Verplicht als het //performers element wordt voorzien.
1..n
1..n
event/eventdetails/eventdet
Bij een uitvoerder kan de rol opgenomen worden die hij opneemt t.a.v. het
0..1
0..1
ail/performers/performer/rol
betreffende aanbod.
e
(type: string, minlength:1, maxlength:1000)
event/eventdetails/eventdet
De naam van de uitvoerder. Verplicht als (1) het //performer element wordt
Samenvatting in het Nederlands van de kalenderinformatie.
ail/calendarsummary
(type: string)
event/eventdetails/eventdet
Parent element waaronder meerdere “uitvoerders” kunnen gepubliceerd
ail/performers/
worden. Uitvoerders zijn degene die het aanbod brengen, bijv. muzikanten, lezers, acteurs, kunstenaars, S De rol kan in meerdere talen voorzien worden. Er kan verwezen worden naar een Actor object door //performer/label/@cdbid te voorzien, door een //actor object te embedden, of er kan slechts een label voorzien worden. Zie xxx.
Verwijzing naar het actor object adhv de CIDN code van dat betreffende object. Zie xxx.
event/organiser/actor
Een “geëmbed” actor object. Verplicht als het //organiser/label object niet wordt voorzien. Zie xxx.
6.3 /cdbxml/actors/actor Definitie Actoren zijn publieksrelevante organisaties en personen die in relatie gebracht worden tot cultuur en andere vormen van vrije tijd. Deze actoren kunnen verschillende rollen opnemen zoals locatie, organisator, uitvoerder,
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
15/49
producent,S Mogelijke vormen van actoren zijn organisaties zoals musea, bibliotheken, socio-culturele verenigingen, heemkundige kringen, kunstgalerijen, edmS of personen zoals muzikanten, beeldende kunstenaars of acteurs, enz. Voorbeelden van actoren zijn organisaties zoals De Vooruit, Vlaams Centrum voor Amateurkunsten, CC Berchem, Decascoop, of personen zoals Alex Agnew of Luc Devos.. De noodzaak aan een bepaald veld voor organisaties en personen is afhankelijk van het “subtype” waaronder de desbetreffende persoon of organisatie ressorteert: Locatie, Organisator of Uitvoerder. Voorbeeld 1: uitvoerder (verplichte velden) DaanUitvoerder
Voorbeeld 2: locatie (alle velden) ma, do van 16:00 tot 19:00 woe van 14:00 tot 17:00 za van 10:00 tot 12:00 (di, vrij, zo gesloten)Weggelaten voor leesbaarheid <media> Bibnethttp://media.cultuurnet.be/media/9B5BED64-A171-410D062521C05B299E5F.jpg <mediatype>imageweb <shortdescription>Kunstencentrum Vooruit vzw heeft als missie in Vlaanderen een unieke plek te zijn als centrum voor muziek en podiumkunsten. Kunstencentrum VooruitLocatieKunstencentrumNationaalDrankgelegenheid
Geeft aan dat een Actor object centraal bewaakt wordt op uniciteit.
0
1
0
1
0
1
0
1
1
1
0
1
0
1
1
1
(type: boolean) actor/@cdbid
ID toegekend door de UiTdatabank. D.i. de CIDN. (type: string, minlength:1, maxlength:60)
actor/@createdy
Auteur van het item. (type: string)
actor/@createdon
Datum waarop het item aan de UiTdatabank werd toegevoegd. (type: dateTime)
actor/@externalid
Inkomend voorziet de partner de ID uit zijn databank. Uitgaand wordt dit ID voorafgegaan door een prefix. (type: string, minlength:1, maxlength:250)
actor/@lastupdated
Auteur van de laatste aanpassing. (type: string)
actor/@lastupdatedon
Datum laatste aanpassing. (type: dateTime)
actor/actordetails/
Dit is een parent element dat de meertalige velden omvat.
3 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
17/49
actor/actordetail/
Het parent element voor de velden in een specifieke taal.
1..n
1..n
actor/actordetails/@lang
De taal waarin de velden van de child elementen voorzien werden.
Samenvatting in het Nederlands van de kalenderinformatie.
l/calendarsummary
(type: string)
actor/actordetails/actordetai
Taalonafhankelijke beschrijving van ongelimiteerde lengte. Mag formattering
l/longdescription
bevatten (type: anyType)
actor/actordetails/actordetai
Extra beschrijvingen, links naar meer informatie en “multimedia objecten” zoals
l/media
afbeeldingen, thumbnails, enz. Zie xxx.
actor/actordetails/actordetai
Een korte beschrijving over het item.
l/shortdescription
(type: string, minlength:1, maxlength:600)
actor/actordetails/actordetai
De titel van het item.
l/title
(type: string, minlength:1, maxlength:250)
actor/categories
Welke categorieën gelden voor de organisatie of persoon? Zie xxx.
1
1
actor/contactinfo
URL, tel of e-mail waar men terecht kan voor meer informatie of reserveringen.
0..1
0..1
0..1
0..1
0..1
0..1
Zie xxx. actor/keywords
Bijkomende informatie (tags). Meerdere tags worden door ; gescheiden. (type: string)
actor/weekscheme
De openingstijden waarop de organisatie open is. Zie xxx.
6.4 /cdbxml/productions/production Definitie Een productie kan je zien als potentieel aanbod, klaar om georganiseerd te worden. Vandaar dat een productie (nog) geen gegevens bevat die eigen zijn aan de organisatie ervan, zoals de locatie, de prijs, de toegangsvoorwaarden, de kalenderS Voorbeelden van producties zijn films en theatertournees. Deze bestaan en kunnen geboekt worden door organisatoren van aanbod. Voorbeeld <productions> <production cdbid="8e9127f5-ba1d-4064-a42e7da0e00956db" externalid="CDB:8e9127f5-ba1d-4064-a42e7da0e00956db" lastupdated="2010-06-07T15:18:08.515625"> TheatervoorstellingRegionaal <productiondetails> <productiondetail lang="nl"> HISTRYLOGIE One-Hit Wonders
enz. <shortdescription>Wanneer we ... Histrylogie - One Hit Wonders
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
18/49
Eigenschappen Element
Beschrijving
In
Out4
production/@availablefrom
Embargodatum; datum waarop het item mag gepubliceerd worden.
0
1
0
1
0
1
0
1
0
1
1
1
0
1
0
1
0
1
1
1
(type: dateTime) production/@availableto
Archiefdatum; datum waarop een item niet langer gepubliceerd is. (type: dateTime)
production/@cdbid
ID toegekend door de UiTdatabank. D.i. de CIDN. (type: string, minlength:1, maxlength:60)
production/@createdy
Auteur van het item. (type: string)
production/@createdon
Datum waarop het item aan de UiTdatabank werd toegevoegd. (type: dateTime)
production/@externalid
Inkomend voorziet de partner de ID uit zijn databank. Uitgaand wordt dit ID voorafgegaan door een prefix. (type: string, minlength:1, maxlength:250)
production/@lastupdated
Auteur van de laatste aanpassing. (type: string)
production/@lastupdatedon
Datum laatste aanpassing. (type: dateTime)
production/@owner
Eigenaar invoerdersgroep (type: string)
production/@private
Is het production slechts beschikbaar voor publicatie op een beperkt aantal kanalen?
4 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
19/49
(type: boolean) production/agefrom
Tot welke leeftijdsklasse richt men zich met de productie?
0..1
0..1
(type: nonNegativeInteger) production/categories
Welke categorieën gelden voor de productie? Zie xxx.
1
1
production/productiondetails/
Dit is een parent element dat de meertalige velden omvat.
1
1
production/productiondetail/
Het parent element voor de velden in een specifieke taal.
1..n
1..n
production/productiondetails/@l
De taal waarin de velden van de child elementen voorzien werden.
Samenvatting in het Nederlands van de kalenderinformatie.
0
1
ductiondetail/calendarsummary
(type: string)
production/productiondetails/pro
Parent element waaronder meerdere “uitvoerders” kunnen gepubliceerd
0..1
0..1
ductiondetail/performers/
worden. Uitvoerders zijn degene die het aanbod brengen, bijv. muzikanten,
Een uitvoerder. Verplicht als het //performers element wordt voorzien.
1..n
1..n
production/productiondetails/pro
Bij een uitvoerder kan de rol opgenomen worden die hij opneemt t.a.v. het
0..1
0..1
ductiondetail/performers/perfor
betreffende aanbod.
mer/role
(type: string, minlength:1, maxlength:1000)
production/productiondetails/pro
De naam van de uitvoerder. Verplicht als (1) het //performer element wordt
1
1
ductiondetail/performers/perfor
voorzien en (2) het //performer/actor element niet wordt voorzien. Zie xxx.
mer/label
(type: string, minlength:1, maxlength:250) 0..1
0..1
1
1
0..1
0..1
0..1
0..1
0..1
0..1
1
1
0..1
0..1
lezers, acteurs, kunstenaars, S De rol kan in meerdere talen voorzien worden. Er kan verwezen worden naar een Actor object door //performer/label/@cdbid te voorzien, door een //actor object te embedden, of er kan slechts een label voorzien worden. Zie xxx. production/productiondetails/pro ductiondetail/performers/perfor mer
production/productiondetails/pro
Verwijzing naar het actor object adhv de CIDN code van dat betreffende
ductiondetail/performers/perfor
object. Zie xxx.
mer/label/@cdbid production/productiondetails/pro
Een “geëmbed” actor object. Verplicht als het //performer/label object niet
ductiondetail/performers/perfor
wordt voorzien. Zie xxx.
mer/actor production/productiondetails/pro
Taalonafhankelijke beschrijving van ongelimiteerde lengte. Mag
ductiondetail/longdescription
formattering bevatten (type: anyType)
production/productiondetails/pro
Extra beschrijvingen, links naar meer informatie en “multimedia objecten”
ductiondetail/media
zoals afbeeldingen, thumbnails, enz. Zie xxx.
production/productiondetails/pro
Een korte beschrijving over het item.
ductiondetail/shortdescription
(type: string, minlength:1, maxlength:600)
production/productiondetails/pro
De titel van het item.
ductiondetail/title
(type: string, minlength:1, maxlength:250)
production/keywords
Bijkomende informatie (tags). Meerdere tags worden door ; gescheiden.
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
20/49
(type: string) production/languages
Talen waarin het item opgevoerd wordt, vb. Engels gesproken, Nederlands
0..n
0..n
0
1
ondertiteld, Frans gedubbed. Zie xxx. production/relatedevents
Een overzicht van evenementen die tot de productie behoren. Zie UiTdatabank Search API
6.5 /cdbxml/deletes Definitie Om data te publiceren raadt CultuurNet aan gebruik te maken van de UiTdatabank Search API en bijgevolg data niet te kopiëren in je eigen systeem. Voor partijen die alsnog informatie synchroniseren met eigen repository voorziet CultuurNet periodiek delete messages voor de objecten die uit het eigen systeem verwijderd werden. Het is daarnaast mogelijk delete messages naar de UiTdatabank te versturen. Delete messages worden opgenomen in feeds met events en actoren of kunnen als aparte feeds verzonden worden. Voorbeeld <deletes> <delete cdbid="945edc52-6c9c-43a9-b3c6-275812217b4c" externalid="SKB import:Organisation_112" objecttype="actor" /> <delete cdbid="d146fe63-2c11-4b6e-9ba6-f1a0592d5326" externalid="CDB:c5646f55-7632-4e64-9f8d-26f4693f5fbc" objecttype="event" /> <delete cdbid="19a2471f-bd7d-47bf-bbed-da2846a35f95" externalid="CDB:19a2471f-bd7d-47bf-bbed-da2846a35f95" objecttype="production" />
5 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
21/49
6.6 /cdbxml/list Definitie List is de representatie die typisch gebruikt wordt om zoekresultaten te tonen. Voorbeeld <list>
Eigenschappen Element
Beschrijving
In
Out6
list/item/@cdbid
ID van het item in de UiTdatabank.
0
1
list/item/@externalid
ID van het item toegekend door een extern systeem.
0
1
list/item/@title
Titel van het item
0
1
list/item/@shortdescription
Korte beschrijving, max. 400 kars.
0
1
list/item/@thumbnail
Thumbnail afbeelding.
0
1
list/item/@calendarsummary
Samenvatting van de kalenderinformatie.
0
1
list/item/@heading
Rubrieken. Zie xxx.
0
1
list/item/@city
Gemeente waar het item zich bevindt.
0
1
list/item/@zip
Postcode van de gemeente waar het item zich bevindt.
0
1
list/item/@location
Naam van de locatie.
0
1
list/item/@locationid
ID van de locatie.
0
1
6 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
22/49
list/item/@agefrom
Leeftijdsklasse waarvoor het item geschikt is.
0
1
list/item/@performers
Uitvoerders.
0
1
list/item/@available_to
Archiveringsdatum.
0
1
list/item/@created
Datum waarop het item in de UiTdatabank gecreëerd werd.
0
1
list/item/@latlng
Geografische coördinaten van de locatie waar het item zich bevindt.
0
1
list/item/@address
Het adres van de locatie waar het item zich bevindt.
0
1
6.7 event/calendar en //weekscheme Definitie We maken een onderscheid tussen tijdelijk en permanent aanbod. Tijdelijk aanbod kan doorgaan op één of meer tijdstippen. Elk tijdstip kan optioneel een startuur en een einduur hebben. Tijdelijk aanbod kan daarnaast gedurende een periode lopen, typisch geldt dat voor tentoonstellingen. Permanent (of doorlopend) aanbod kent geen einddatum. Voorbeelden van permanent aanbod zijn fietsroutes, musea en hun permanente collecties en monumenten. Voor aanbod dat gedurende een periode loopt en voor permanent aanbod kunnen optioneel de openingstijden meegegeven worden, en uitzonderingen t.a.v. die periode en/of openingstijden (uitzonderlijk open/gesloten opS). De openingstijden geven aan op welke dagen het aanbod open is of gesloten, en indien het aanbod open is van wanneer tot wanneer. Meerdere openings- en sluitingsuren per dag zijn mogelijk. Het is ten slotte ook mogelijk openingstijden voor een Actor (van het type locatie) te voorzien.
Aandachtspunten: -
Als een aanbod plaatsvindt op meerdere tijdstippen is het (in tegenstelling tot bijv facebook) slechts één aanbod object.
-
Voor output in het Nederlands voorziet de UiTdatabank een tekstuele weergave in de velden //event/eventdetails/eventdetail/calendarsummary en //actor/actordetails/actordetail/calendarsummary.
Voorbeeld 1: aanbod met één tijdstip <events> <event externalid="1"> 2011-01-01Concerthttp://www.xyz.com <eventdetails> <eventdetail lang="nl"> TitelAntwerpen
Voorbeeld 3: aanbod met meerdere tijdstippen, met aanvangstijd en aanvangstijd en eindtijd <events> <event externalid="1"> 2011-01-0121:00:002011-01-0219:00:0021:00:00
Elk //timestamp element heeft minstens een //date element en optioneel
1..n
1..n
amp
//timestart en //timeend elementen.
calendar/timestamps/timest
Datum veld
1
1
amp/date
(type: date)
calendar/timestamps/timest
Tijdstip waarop het event van start gaat.
0..1
0..1
art
(type: time)
calendar/timestamps/timee
Tijdstip waarop het event eindigt.
0..1
0..1
nd
(type: time)
calendar/periods/period
Container element dat verplicht child elements //datefrom en //dateto moet
0..1
0..1
1
1
bevatten en optioneel child elements //weekschem en //exceptions calendar/periods/period/dat
Startdatum van het event
efrom
(type: date)
7 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
29/49
calendar/periods/period/dat
Einddatum van het event
1
1
eto
(type: date)
calendar/periods/period/we
Zie //weekscheme
0..1
0..1
Tijdstippen binnen een periode waarop het event uitzonderlijk open/gesloten is.
0..n
0..n
calendar/periods/period/exc
Is het event op dat tijdstip (binnen een periode) uitzonderlijk open of gesloten.
1
1
eptions/timestamp/@opent
(string, enumeration: “open”, “closed”)
Zie //calendar/timestamps/timestamp
1..n
1..n
calendar/permanentopeingt
Container element dat aangeeft dat een aanbod permanent aanbod is en
1
1
imes/permanent
eventueel een //weekscheme element kan bevatten
//weekscheme
De openingstijden voor de locatie / het aanbod.
0..1
0..1
weekscheme/monday
Openingstijden op maandag
1
1
weekscheme/tuesday
Openingstijden op dinsdag
1
1
weekscheme/wednesday
Openingstijden op woensdag
1
1
weekscheme/thursday
Openingstijden op donderdag
1
1
weekscheme/friday
Openingstijden op vrijdag
1
1
weekscheme/saturday
Openingstijden op zaterdag
1
1
weekscheme/sunday
Openingstijden op zondag
1
1
weekscheme/*/@opentype
Is de locatie of het aanbod op die dag open of gesloten?
Element dat het start en het einduur van de openingstijden bevat.
0..n
0..n
weekscheme/*/openingtime
Starttijd
0..1
0..1
Eindtijd
0..1
0..1
/@from weekscheme/*/openingtime /@to
6.8 //categories Definitie Categoriseren definiëren we als een proces waarbij gerelateerde items volgens een gecontroleerde set van termen worden gegroepeerd en op logische wijze geordend. Dit biedt verscheidene voordelen. In eerste instantie laat een classificatie toe dat de gebruiker vlot in een databank kan zoeken of er in kan ‘browsen’. Een categorisatie reduceert de complexiteit van uitgebreide gegevensbestanden en is eenvoudig weer te geven. Op basis van verschillende eigenschappen van een item, kennen we aan dat item verschillende dimensies van categorisatie aan toe. Voor wat het aanbod betreft, kunnen we stellen dat elk aanbod, onder meer, een bepaalde vorm heeft (tentoonstelling, festival, beurs, etc.), een doelgroep (gezinnen, kinderen tussen 12 en 14 jaar, etc.), een thema enz.. Aan elke dimensie wordt vervolgens een geheel van categorieën of een categorisatiekorf
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
30/49
verbonden. Een overzicht van de dimensies en categoriekorven is beschikbaar op http://www.cultuurdatabank.com/XMLSchema/CdbXSD/3.1/FINAL/. In onderstaande tabel een overzicht van welke dimensies gelden voor welke object types:
Informatieeenheid
Dimensie
Aanbod
Type van activiteit
Productie
Actor
Actor: Locatie
Verplicht
Maximum aantal categorieën
X
1
Thema
1
Publieksbereik
1
Doelgroep
*
Varia
*
Type van activiteit
X
1
Thema
1
Publieksbereik
1
Doelgroep
*
Type organisatie/persoon
X
3
Publieksbereik
1
Doelgroep
*
Voorzieningen
*
Voorbeeld 1: event met categorieën <events> <event externalid="1"> 2011-01-01FestivalPop en rockWijk/buurtJongeren vanaf 12 jaar (12+)http://www.xyz.com <eventdetails> <eventdetail lang="nl"> TitelAntwerpenBE2018
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
31/49
Voorbeeld 2: actor met categorieën LocatieLocatieKunstencentrumNationaalDrankgelegenheidEetgelegenheidAlveringemBE <xcoordinate>2.710781 51.0117731 <street>Dorp 8690
Eigenschappen Element
Beschrijving
In
Out8
//categories
Container element om categorieën aan een event, productie of actor item te
1
1
1..n
1..n
koppelen categories/category
De betreffende categorie. Optioneel kan de benaming als inner element meegegeven worden, conform het formaat op http://www.cultuurdatabank.com/XMLSchema/CdbXSD/3.1/FINAL/
categories/category/@catid
De categorie ID
1
1
categories/category/@type
Tot welke dimensie de categorie behoort.
1
1
8 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
6.9 //contactinfo Definitie Het contactinfo element herbergt waar men kan terecht kan voor meer informatie. Via welke telefoonnummers, emailadressen en webformulieren kan men in contact kan treden met de organisator van het event of met een andere partij voor tweedelijnsinformatie? Het contactinfo element bevat ook links naar verdiepende informatie over het event, de organisatie of de persoon. Voor elk event is het verplicht minstens één contactgegeven te voorzien. Voorbeeld 1: contactinformatie bij een event <events> <event externalid="1"> 2011-01-01Festival <mail>[email protected]0473/82.79.54http://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> TitelAntwerpenBE2018
Eigenschappen Element
Beschrijving
In
Out9
9 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
33/49
//contactinfo
Container element om contactgegevens aan een event actor item te koppelen.
1
1
0..n
0..n
0..1
0..1
0..n
0..n
0..n
0..n
0..1
0..1
0..1
0..1
Contactinfo is verplicht voor events en optioneel voor actor items. contactinfo/phone
Telefoonnrs waar men terecht kan voor meer informatie of reservering. (type: string)
contactinfo/phone/@type
Telefoon of fax (type: string, enumeration: “phone”, “fax”, default: “phone”)
contactinfo/mail
E-mailadressen waar men terecht kan voor meer informatie of reservering. (type: mailaddress)
contactinfo/url
Webpagina’s waar men terecht kan voor meer informatie of reservering. (type: url)
contactinfo/*/@main
Wordt vnl gebruikt om aan te geven welke link verwijst naar een webpagina met gedetailleerde informatie over het event of de organisatie of persoon.
contactinfo/*/@reservation
6.10
Is het conctactgegeven (ook) geschikt om reserveringen te plaatsen?
//media
Definitie Media in CdbXML 3.1 bevat ten eerste verwijzingen naar “verrijkende” informatie ergens op het web, bijvoorbeeld naar thumbnails op de web servers van CultuurNet, of een link naar een pagina waar men tickets kan bestellen. Ten tweede kan media ook platte tekst fragmenten bevatten: doelgroepspecifieke beschrijvingen. Voorbeeld: thumbnail <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> <media> Els VerstraeteC6A4C794-F84C-DAA9-F1BA0D814A7BDC21.jpgjpeghttp://media.cultuurnet.be/media/C6A4C794-F84C-DAA9F1BA0D814A7BDC21.jpg <mediatype>imageweb Titel
- “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
34/49
AntwerpenBE2018
Eigenschappen Element
Beschrijving
In
Out10
media/file
Container element voor één media element. //media kan meerder //file
1..n
1..n
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
0..1
1
1
1
1
elementen bevatten media/file/@main
Wordt gebruikt om te bepalen welk element van het type //mediatype=”photo" of //mediatype=”imageweb” in aanmerking komt als thumbnail voor het object. (type: boolean)
media/file/@cdbid
De ID die door de UiTdatabank aan het object toegekend werd. (type: string, minlength: 1, maxlength: 60)
media/file/@creationdate
De datum waarop het media object aan het parent object gekoppeld werd. (type: dateTime)
media/file/@channel
Het kanaal waarlangs het media object geaggregeerd werd. (type: string, minlength: 1, maxlength: 60)
media/file/@private
Duidt aan of het media object enkel op het kanaal van de Publisher mag verschijnen of op alle kanalen. (type: boolean)
De URL van het object. Het is verplicht ofwel media/file/hlink ofwel media/file/plaintext te voorzien. (type: string, minlenght: 3, maxlength: 400)
media/file/plaintext
Een tekstwaarde, bijv. een recensie of een doelgroepspecfieke beschrijving.
10 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
35/49
Het is verplicht ofwel media/file/hlink ofwel media/file/plaintext te voorzien. (type: anyType) media/file/mediatype
Een begeleidende titel bij het object. (type: string, minlength: 1, maxlength: 250)
6.11
//event/eventdetails/eventdetail/price
Definitie Het //price element geeft aan of een event gratis is, of betalend. Indien het betalend is moet de richtprijs opgegeven worden. Daarnaast kan optioneel in vrije tekst extra prijsinformatie voorzien worden. Voorbeeld 1: gratis aanbod <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> <price> <pricevalue>0 TitelAntwerpenBE2018
Voorbeeld 2: betalend aanbod <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> <price> <pricevalue>10 <pricedescription>10 euro VVK, 12 euro aan de kassa. TitelAntwerpenBE2018
Eigenschappen Element
Beschrijving
In
Out11
//price
Container element voor prijsinformatie. //pricevalue is een verplicht child
0..1
0..1
1
1
0..1
0..1
element als //price opgegeven wordt. //price/pricevalue
De richtprijs. Als //pricevalue 0 is betekent dit dat het aanbod gratis toegankelijk is. (type: double)
//price/pricedescription
Extra prijsinformatie. (type: string, minlength: 1, maxlength: 1000)
6.12
event/headings
Definitie Headings (of rubrieken) zijn mappings van de UiTdatabank categorisatie naar één dimensie. Bijvoorbeeld de heading “muziek met kinderen” is een combinatie van categorieën die behoren tot de “type aanbod” dimensie, de 11 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
37/49
“thema” dimensie en de “doelgroep” dimensie. Headings zijn enkel beschikbaar voor output via de UiTdatabank Search API. Ze worden gebruikt als navigatierubrieken op outputkanalen. Voorbeeld <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> TitelFestivalsMuziekAntwerpenBE2018
Eigenschappen Element
Beschrijving
In
Out12
//headings
Container element dat één of meer //heading elementen kan bevatten. Een
0
0..1
0
1..n
0
0..1
overzicht van headings is beschikbaar op http://build.uitdatabank.be/lib headings/heading
De naam van de heading (type: string, minlength:1, maxlength:250)
headings/heading/@id
De ID van de heading in de UiTdatabank.
12 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
38/49
6.13
//keywords
Definitie Het //keywords element bevat één of een lijst van tags/markers die relevant zijn voor het betreffende object. Meerdere tags worden gescheiden door punt-komma (;). Voorbeeld <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> TitelSkateboarding;Jongerenfestival;CultuurNet Zomerfestival SelectieAntwerpenBE2018
Eigenschappen Element
Beschrijving
In
Out13
//keywords
Eén of meer keywords. Als het //keywords element meerdere keywords bevat
0..1
0..1
worden die gescheiden door een punt-komma (;). (type: string)
13 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
39/49
6.14
//event/languages
Definitie Het element //event/languages bevat de taal/talen waarin het aanbod (of de productie) opgevoerd wordt. Die taal kan de vorm aannemen van “ondertiteld”, “gesproken” of “gedubbed”. Voorbeeld <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> TitelEngelsNederlandsFransAntwerpenBE2018
Eigenschappen Element
Beschrijving
In
Out14
//languages
Container element dat één of meer //language elementen kan bevatten.
0..1
0..1
languages/language
De naam van de taal.
1..n
1..n
(type: string, minlength:1, maxlength:250)
14 - “In”: data versturen naar de UiTdatabank, - “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
40/49
languages/language/@type
Is het event of de productie in de betreffende taal gesproken, gedubbed of
Definitie Het element //address bevat de plaats waar een locatie zich bevindt / waar een aanbod doorgaat. In het geval van //event is //address een child element van //location. I.g.v. //actor is //address een child element van //contactinfo. Een adres van een “fysiek” adres zijn of een “virtueel” adres. Een fysiek adres bevat minstens de gemeente en haar postcode en het land waar ze zich in bevindt en optioneel straat en huisnummer en geografische coördinaten. Een virtueel adres bevat enkel een label, bijv. “De kust”, “Gans Vlaanderen”, enz. Voorbeeld 1: fysiek adres verplichte velden <events> <event externalid="1"> 2011-01-01Festivalhttp://www.myspace.com/skatefest_belgium <eventdetails> <eventdetail lang="nl"> TitelAntwerpenBE2018
Voorbeeld 2: fysiek adres met alle velden <events> <event externalid="1"> 2011-01-01
De ID code die de UiTdatabank aan de gemeente heeft toegekend, bijv. 2000_ANTWERPEN. (type: string)
address/physical/country
Het land waar de gemeente zich bevindt. (type: string, enumeration: ISO codes, “BE”, “FR”, “NL” enz.)
address/physical/gis
Een container element dat de geografische coördinaten van een adres bevat. GIS coördinaten worden door de UiTdatabank berekend adhv Google Maps.
address/physical/gis/xcoord
Het X-coördinaat van de geografische coördinaten. D.i. de longitude waarde.
inate
(type: decimal)
address/physical/gis/ycoord
Het X-coördinaat van de geografische coördinaten. D.i. de latitude waarde.
inate
(type: decimal)
address/physical/housenr
Het huisnummer van het adres. (type: string)
address/physical/street
De straat van het adres (type: string, minlength: 1, maxlength: 250)
address/physical/zipcode
De postcode van de gemeente. (type: string)
address/virtual/title
De titel van de plek, bijv. Gans Vlaanderen.
- “Out”: data afnemen van de UiTdatabank, - “0”: niet toegestaan - “1”: verplicht - “1..n”: minstens één - “0..1”: niet verplicht max. 1 - “0..n”: niet verplicht meer mogelijk
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
43/49
7 Relaties tussen Actor, Productie en Aanbod objecten
Figuur 1: Relatie tussen informatie-eenheden
Een actor-item kan nul, één of meer relaties hebben t.o.v. een aanbod-item. We onderscheiden verschillende soorten relaties:
Organisator: De organisatie of persoon die het aanbod organiseert.
Uitvoerder: De organisatie of persoon die aanbod uitvoert, bijv. de regisseur, acteurs, het dansgezelschap,S
Locatie: De organisatie die als locatie van aanbod dient.
Een aanbod-item kan
Nul, één of meer relaties hebben tot ander aanbod in de vorm van een hiërarchische relatie. We noemen dit koepelaanbod, zoals de Gentse Feesten en de Zomer van Antwerpen enz. waarbij in het kader van het desbetreffende aanbod verschillende activiteiten, evenementen doorgaan.
Nul of één relatie hebben tot een productie-item
Actor object geëmbed in een Aanbod items vs. label De tournee “Homo Erectus” van de muziekgroep “Gorki” kan doorgaan in Ancienne Belgique of in de sporthal van het St-Gabriëlcollege. In het eerste geval zal er een relatie tussen het aanbod “Homo Erectus” en de actor “Ancienne Belgique” bestaan. In het tweede geval is die relatie er niet omdat de sporthal niet toegevoegd werd als actor. In UiTdatabank-jargon bevat de eerste actor rijke informatie en is de tweede actor een dummy instantie. Van dummy instanties wordt enkel het label voorzien. Rijke actor objecten worden ofwel geheel opgenomen in een event, of er wordt een verwijzing naar het Actor object opgenomen. Van dummy objecten zijn enkel de labels beschikbaar. Voorbeeld 1: aanbod dat doorgaat op een “dummy” locatie “de sporthal van het St-Gabriëlcollege”
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
44/49
<events> <event availablefrom="2010-05-25T00:00:00" availableto="2010-08-25T00:00:00" cdbid="b2e82d35-4b5c-4ac6-97c9-9f9ca79a72b4" createdby="[email protected]" creationdate="2010-05-25T19:21:40" externalid="CDB:769acd2d-12e3-4a89-8b85-6e635e6bb772" lastupdated="2010-07-06T09:09:08" lastupdatedby="cultfunc" owner="Ranst Validatoren" pctcomplete="80" published="true" validator="Ranst Validatoren" wfstatus="approved" isparent="false"> 2010-08-2420:00:00DansvoorstellingVolksdans en werelddans03/225.34.19http://www.ranst.behttp://www.frissefolk.behttp://www.ranst.be/Default.aspx%3Ftabid%3D1541 <eventdetails> <eventdetail lang="nl"> di 13/07/10, di 27/07/10, di 24/08/10 om 20:00 <media> gemeente Ransta8fa0952-deb0-40a6-b2a1-83c8d09744f2.jpgjpeghttp://media.uitdatabank.be/20100525/a8fa0952-deb0-40a6-b2a183c8d09744f2.jpg <mediatype>photo <price> <pricevalue>0.00 <shortdescription>Jeugd-, cultuurdienst en de mensen van de Cijnshoeve werken weer samen om u 3 avonden dansplezier te bezorgen. Dansen bij valavond bestaat uit een uurtje dansinitiatie, gevolgd door een optreden in dezelfde stijl. Data en genres staan al vast. dinsdag 13 juli: mr.P & Lies (Country & western) dinsdag 27 juli: Hot Griselda (folk), dans door Koen d'Hondt dinsdag 24 augustus: Fatty_K (hiphop) Dansen bij valavondRanstBE <xcoordinate>4.537203 51.191210155 <street>Herentalsebaan 2520
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
45/49
Voorbeeld 2: aanbod dat doorgaat op een locatie waarvoor een Actor object beschikbaar is <events> <event availablefrom="2010-06-08T11:07:45" availableto="2010-09-22T00:00:00" cdbid="55da35a0-bbb7-4f86-83a0-3f39fade9a32" createdby="stevent" creationdate="2010-0608T11:07:45" externalid="CDB:ceb6eedb-2195-4e50-8532-4d71cc71e550" lastupdated="2010-0608T19:10:58" lastupdatedby="sdebuck1" owner="Invoerders Algemeen " pctcomplete="80" published="true" validator="Gent Validatoren" wfstatus="approved" isparent="false"> 2010-09-142010-09-21 <weekscheme> <monday opentype="closed"/> <wednesday opentype="open"/> <saturday opentype="closed"/> <sunday opentype="closed"/> TheatervoorstellingTekst- en muziektheaterInternationaalGentBE <xcoordinate>51.047733 3.72730823 <street> Sint-Pietersnieuwstraat 9000http://vooruit.be/nl/event/2303 <eventdetails> <eventdetail lang="nl"> van 14/09/10 tot 21/09/10 di, woe, do, vrij (ma, za, zo gesloten) <shortdescription> NB Arne SierensUitvoerder(s)
15/09/2011
20110915 CdbXML uitwisselingsformaat.docx
46/49
Arne Sierens is een meesterverteller van kleine verhalen, in Verkavelingsvlaams maar altijd universeel. (Gentblogt.be)
Bloemenmeisjes, het klinkt onschuldig maar dat is het allerminst. Voor hun nieuwe voorstelling duiken Arne Sierens en Cie Cecilia in de onderwereld van vertier en losbandigheid. In een amusementsclub laten Madame en haar bloemenmeisjes klanten genieten en onthaasten Het leven van de meisjes van plezier loopt niet over rozen en de onderlinge concurrentie is bikkelhard: wie niet genoeg opbrengt, wordt aan de kant geschoven. Wie te oud is, telt niet meer mee.
Arne Sierens vond inspiratie in Aziatische films en romans, maar ook bij de Lola-films van Von Sternberg en Fassbinder. Op de planken staan o.a. Mieke Dobbels, die vorig seizoen ontroerde als Alabama in The Broken Circle, en Titus De Voogdt, bekend van de films Anyway the wind blows en Steve+Sky en verschillende stukken van Compagnie Cecilia. Robrecht Vanden Thoren maakte eerder al indruk in Compagnie Cecilias Altijd Prijs. Net als toen zorgt ook nu gitarist Jean-Yves Evrard voor de muzikale begeleiding live op scène. <media> Guido Vrolixcc9f43c3-9f41-4f09-81a3-863c0d51af72.jpgjpeghttp://media.uitdatabank.be/20100608/cc9f43c3-9f41-4f09-81a3863c0d51af72.jpg <mediatype>photo Schöne Blumen <price> <pricevalue>16.00 <shortdescription>“Bloemenmeisjes”, het klinkt onschuldig maar dat is het allerminst. Voor hun nieuwe voorstelling duiken Arne Sierens en Cie Cecilia in de onderwereld van vertier en losbandigheid. Schöne Blumen <eventrelations> Schöne BlumenGentBE <xcoordinate>51.047733 3.72730823 <street> Sint-Pietersnieuwstraat 9000 <media> Matthias Timmermans / Vooruit vzw09c13aa0-30bf-46b6-8e53-95bf04e38d07.jpgjpeghttp://images.uitdatabank.be/09c13aa0-30bf-46b6-8e5395bf04e38d07.jpgVooruit <shortdescription>Kunstencentrum Vooruit vzw heeft als missie in Vlaanderen een unieke plek te zijn als centrum voor muziek en podiumkunsten. Kunstencentrum VooruitLocatie
8 CdbXML versies en duurtijd ondersteuning Het XML Schema en categorisation.xml hebben versienummers. De versie van het XML Schema werd opgenomen in de namespace declaratie. CdbXML heeft een hoofdversienummer (in dit geval “3”) en een subversienummer. Daarnaast heeft een versie een status. Deze kan DRAFT of FINAL zijn. In status DRAFT kunnen ten allen tijde wijzigingen worden doorgevoerd. Bij status FINAL wordt het schema bevroren (d.i. niet meer gewijzigd in het huidige versienummer), behalve in uitzonderlijke situaties voor correcties van inconsistenties tussen de documentatie en het XML Schema. Het subversienummer wordt verhoogd als wijzigingen worden doorgevoerd die geen gevolgen hebben voor publishers of subscribers in die zin dat ze geen ontwikkelingen vereisen om in overeenstemming te blijven. Het betreft hier meestal toevoegen van niet-verplichte elementen. Het hoofdversienummer wordt verhoogd als de wijzigingen wel gevolgen hebben, dus als ze wel ontwikkelingen vereisen aan de kant van de partner. Deze gevolgen uiten zich in het niet meer valide zijn van de XML. Ze vereisen veelal aanpassingen in de databanken, XML parsing- en generatiemodules, of andere applicaties van partners.
Wijzigingen worden verspreid naar partners die beschikken over een abonnement of key. Merk op dat enkel datafeeds gebruikt mogen worden mits geldig en correct abonnement, enkel in dat geval wordt de gebruiker ook op de hoogte gehouden van eventuele wijzigingen. Bij wijziging van het emailadres van de contactpersoon moet dit bvb. doorgegeven worden. Daarnaast worden ze gepubliceerd in een nieuwe directory en onder een nieuwe namespace, bijvoorbeeld http://www.cultuurdatabank.com/XMLSchema/CdbXSD/3.1/FINAL/. De oudere versies blijven bestaand.
Na verloop van tijd kan een publisher (bijv. CultuurNet) echter besluiten deze versies niet meer te ondersteunen. Hij kan dan alsnog voorzien in een achterwaartse transformatie voor subscribers wiens systemen het nieuwe schema nog niet ondersteunen. Deze ondersteuning is voor minimaal 1 jaar gegarandeerd en wordt in voorkomend geval expliciet gecommuniceerd.