-
Notifications
You must be signed in to change notification settings - Fork 0
/
mappings.yaml
67 lines (63 loc) · 2.02 KB
/
mappings.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
prefixes:
aeros: "https://gitlab.aeros-project.eu/wp4/t4.1/aeros-continuum#"
dcat: "http://www.w3.org/ns/dcat#"
dct: "http://purl.org/dc/terms/"
foaf: "http://xmlns.com/foaf/0.1/"
grel: "http://users.ugent.be/~bjdmeest/function/grel.ttl#"
org: "http://www.w3.org/ns/org#"
prov: "http://www.w3.org/ns/prov#"
rdfs: "http://www.w3.org/2000/01/rdf-schema#"
schema: "https://schema.org/"
mappings:
users:
sources:
- ['http://ldap-collector:63300/ldap.json~jsonpath', '$.users[*]']
s: aeros:$(attributes.uid)
po:
- [a, aeros:User]
- [foaf:givenName, $(attributes.givenName), xsd:string]
- [foaf:familyName, $(attributes.sn), xsd:string]
- [aeros:ldapIdentifier, $(dn), xsd:string]
roles:
sources:
- ['http://ldap-collector:63300/ldap.json~jsonpath', '$.roles[*]']
s: org:$(attributes.cn)
po:
- [a, org:Role]
organizations:
sources:
- ['http://ldap-collector:63300/ldap.json~jsonpath', '$.organizations[*]']
s: org:$(attributes.dc)
po:
- [a, org:Organization]
- [dct:title, $(attributes.o), xsd:string]
membership:
sources:
- ['http://ldap-collector:63300/ldap.json~jsonpath', '$.memberships[*]']
s: org:membership_$(memberUid)_$(role_cn)
po:
- [a, org:Membership]
- p: org:member
o:
- mapping: users
condition:
function: equal
parameters:
- [str1, $(memberUid), s]
- [str2, $(attributes.uid), o]
- p: org:role
o:
- mapping: roles
condition:
function: equal
parameters:
- [str1, $(role_cn), s]
- [str2, $(attributes.cn), o]
- p: org:organization
o:
- mapping: organizations
condition:
function: equal
parameters:
- [str1, $(organization_dn), s]
- [str2, $(dn), o]