diff --git a/config/migrations/2023/20230824160000-related-organizations/20230831104300-participants.sparql b/config/migrations/2023/20230824160000-related-organizations/20230831104300-participants.sparql new file mode 100644 index 0000000..c8730be --- /dev/null +++ b/config/migrations/2023/20230824160000-related-organizations/20230831104300-participants.sparql @@ -0,0 +1,28 @@ +PREFIX skos: +PREFIX org: +PREFIX mu: + +INSERT { + GRAPH ?g { + ?membership + a org:Membership; + mu:uuid ?uuid; + org:organization ?organization; + org:member ?memberOrganization; + org:role . + } +} +WHERE { + VALUES ?g { + + + + } + + GRAPH ?g { + ?memberOrganization org:memberOf ?organization. + } + + BIND(SHA1(CONCAT(STR(?memberOrganization), STR(?organization), "member of")) as ?uuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/lidmaatschap/", ?uuid)) AS ?membership) +} \ No newline at end of file diff --git a/config/migrations/2023/20230824160000-related-organizations/20230831104400-related-members.sparql b/config/migrations/2023/20230824160000-related-organizations/20230831104400-related-members.sparql new file mode 100644 index 0000000..f9cd3a6 --- /dev/null +++ b/config/migrations/2023/20230824160000-related-organizations/20230831104400-related-members.sparql @@ -0,0 +1,35 @@ +PREFIX skos: +PREFIX org: +PREFIX mu: + +DELETE { + GRAPH ?g { + ?organization org:hasSubOrganization ?subOrganization. + } +} +INSERT { + GRAPH ?g { + ?subOrganization org:memberOf ?organization. + + ?membership + a org:Membership; + mu:uuid ?uuid; + org:organization ?organization; + org:member ?subOrganization; + org:role . + } +} +WHERE { + VALUES ?g { + + + + } + + GRAPH ?g { + ?organization org:hasSubOrganization ?subOrganization. + } + + BIND(SHA1(CONCAT(STR(?organization), STR(?subOrganization), "sub organization")) as ?uuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/lidmaatschap/", ?uuid)) AS ?membership) +} \ No newline at end of file diff --git a/config/resources/domain.json b/config/resources/domain.json index 278af59..3b529ca 100644 --- a/config/resources/domain.json +++ b/config/resources/domain.json @@ -445,23 +445,12 @@ "target": "organizations", "cardinality": "many" }, - "sub-organizations": { - "predicate": "org:hasSubOrganization", - "target": "organizations", - "cardinality": "many" - }, "is-associated-with": { "predicate": "org:linkedTo", "target": "organizations", "cardinality": "one", "inverse": true }, - "is-sub-organization-of": { - "predicate": "org:hasSubOrganization", - "target": "organizations", - "cardinality": "one", - "inverse": true - }, "memberships-of-organizations": { "predicate": "org:member", "target": "memberships", @@ -474,11 +463,6 @@ "cardinality": "many", "inverse": true }, - "is-member-of": { - "predicate": "org:memberOf", - "target": "organizations", - "cardinality": "many" - }, "sector": { "predicate": "dc_terms:isPartOf", "target": "sectors",