diff --git a/config/authorization/config.ex b/config/authorization/config.ex
index 0b2b3de4..0c8d4469 100644
--- a/config/authorization/config.ex
+++ b/config/authorization/config.ex
@@ -15,6 +15,7 @@ defmodule Acl.UserGroups.Config do
"http://data.vlaanderen.be/ns/persoon#Geboorte",
"http://www.w3.org/ns/org#Membership",
"http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
+ "http://mu.semte.ch/vocabularies/ext/BestuurseenheidContact",
"http://data.vlaanderen.be/ns/mandaat#Mandataris",
"http://data.vlaanderen.be/ns/mandaat#Mandaat",
"http://mu.semte.ch/vocabularies/ext/BeleidsdomeinCode",
diff --git a/config/cl-authorization/config.lisp b/config/cl-authorization/config.lisp
index 489a842c..6d6f4314 100644
--- a/config/cl-authorization/config.lisp
+++ b/config/cl-authorization/config.lisp
@@ -121,9 +121,10 @@
("mandaat:Kandidatenlijst" -> _)
("ext:KandidatenlijstLijsttype" -> _)
("mandaat:Verkiezingsresultaat" -> _)
- ("ext:VerkiezingsresultaatGevolgCode" -> _)
("ext:SystemNotification" -> _)
- ("astreams:Tombstone" -> _))
+ ("astreams:Tombstone" -> _)
+ ("ext:BestuurseenheidContact" -> _)
+ ("ext:VerkiezingsresultaatGevolgCode" -> _))
(define-graph organization-leidinggevende ("http://mu.semte.ch/graphs/organizations/")
("contacthub:AgentInPositie" -> _)
diff --git a/config/dispatcher/dispatcher.ex b/config/dispatcher/dispatcher.ex
index e0218747..0653108e 100755
--- a/config/dispatcher/dispatcher.ex
+++ b/config/dispatcher/dispatcher.ex
@@ -86,6 +86,10 @@ defmodule Dispatcher do
forward(conn, path, "http://cache/bestuurseenheid-classificatie-codes/")
end
+ match "/bestuurseenheid-contacten/*path", %{layer: :resources, accept: %{json: true}} do
+ forward(conn, path, "http://cache/bestuurseenheid-contacten/")
+ end
+
match "/bestuursorganen/*path", %{layer: :resources, accept: %{json: true}} do
forward(conn, path, "http://cache/bestuursorganen/")
end
diff --git a/config/form-content/bestuurseenheid-contact/form.ttl b/config/form-content/bestuurseenheid-contact/form.ttl
new file mode 100644
index 00000000..087852f2
--- /dev/null
+++ b/config/form-content/bestuurseenheid-contact/form.ttl
@@ -0,0 +1,48 @@
+@prefix form: .
+@prefix sh: .
+@prefix mu: .
+@prefix displayTypes: .
+@prefix schema: .
+@prefix rdf: .
+@prefix nie: .
+@prefix foaf: .
+@prefix ext: .
+@prefix vcard: .
+
+
+ a form:Form, form:TopLevelForm;
+ form:includes ext:emailF;
+ sh:group ext:contactPG;
+ form:initGenerator ext:contactG;
+ form:targetType ext:BestuurseenheidContact;
+ form:targetLabel schema:email;
+ ext:prefix ;
+ mu:uuid "6293bfe1-40a3-4228-8f33-1f74dc45e2b9".
+
+ext:contactPG
+ a form:PropertyGroup;
+ sh:name "Contact";
+ sh:order 1.
+
+ext:emailF
+ a form:Field;
+ form:displayType displayTypes:defaultInput;
+ sh:group ext:contactPG;
+ sh:name "Email";
+ sh:order 2;
+ form:validatedBy
+ [ a form:ValidEmail;
+ form:grouping form:MatchEvery;
+ sh:order 1;
+ sh:resultMessage "Geef een geldig e-mailadres op."@nl;
+ sh:path schema:email
+ ];
+ sh:path schema:email.
+
+ext:contactG a form:Generator;
+ form:prototype [
+ form:shape [
+ a ext:BestuurseenheidContact
+ ]
+ ];
+ form:dataGenerator form:addMuUuid.
\ No newline at end of file
diff --git a/config/resources/external-besluit.lisp b/config/resources/external-besluit.lisp
index d18fb644..7eca3174 100644
--- a/config/resources/external-besluit.lisp
+++ b/config/resources/external-besluit.lisp
@@ -16,10 +16,11 @@
(werkingsgebied :via ,(s-prefix "ext:inProvincie")
:as "provincie")
(bestuurseenheid-classificatie-code :via ,(s-prefix "besluit:classificatie")
- :as "classificatie"))
- :has-many `((contact-punt :via ,(s-prefix "schema:contactPoint")
- :as "contactinfo")
- (bestuursorgaan :via ,(s-prefix "besluit:bestuurt")
+ :as "classificatie")
+ (bestuurseenheid-contact :via ,(s-prefix "ext:contactVoor")
+ :inverse t
+ :as "contact"))
+ :has-many `((bestuursorgaan :via ,(s-prefix "besluit:bestuurt")
:inverse t
:as "bestuursorganen"))
:resource-base (s-url "http://data.lblod.info/id/bestuurseenheden/")
@@ -45,6 +46,13 @@
:features '(include-uri)
:on-path "bestuurseenheid-classificatie-codes")
+(define-resource bestuurseenheid-contact ()
+ :class (s-prefix "ext:BestuurseenheidContact")
+ :properties `((:email :string ,(s-prefix "schema:email")))
+ :resource-base (s-url "http://data.lblod.info/id/BestuurseenheidContact/")
+ :features '(include-uri)
+ :on-path "bestuurseenheid-contacten")
+
(define-resource bestuursorgaan ()
:class (s-prefix "besluit:Bestuursorgaan")
:properties `((:naam :string ,(s-prefix "skos:prefLabel"))