Nest Seimas org-units and parliamentary groups under the organization#7
Merged
Conversation
Move Seimas structural units and parliamentary groups from top-level flat
containers to nested paths under the Seimas organization document, mirroring
org:unitOf composition:
org-units/{id}/ -> organizations/lietuvos-respublikos-seimas/org-units/{id}/
parliamentary-groups/{id}/ -> organizations/lietuvos-respublikos-seimas/groups/{id}/
URI-SCHEME.md principle #2 is refined accordingly: standalone entities fold
flat by type; constituent parts (org:unitOf / org:hasSubOrganization) nest
under their whole. Membership is not composition, so persons/ and parties/
stay top-level. The pattern generalizes to any future org with internal
structure.
The Seimas organization document becomes a container that is also the entity
(like the taxonomy scheme containers), moving from ETL output into app/
scaffolding; units reference it via org:unitOf only.
- mappings: org-units.rq (nested paths, drop the now-scaffolded Seimas block),
persons.rq (membership cross-links)
- app/: new organizations/lietuvos-respublikos-seimas.ttl + org-units.ttl +
groups.ttl; remove old top-level org-units.ttl + parliamentary-groups.ttl
- shapes/seimas.ttl: org:organization pattern accepts the nested paths
- regenerate datasets/current/seimas/{org-units,persons}.trig + EXAMPLES.md
- URI-SCHEME.md, README.md
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Record the precondition behind the Seimas nesting so admin-units/streets aren't later "tidied" into a broken deep hierarchy: nest a part under its whole in the URI only when every instance has the same well-known parent, so the bare key + a constant prefix yields the URI with no lookup. Admin units fail this (parent not encoded in the AR code — municipality 12 is in county 2, 13 in county 10, settlement 23643 in eldership 1867) and so would break bare-key minting and churn under reforms. Also note that class subsumption belongs in rdf:type/rdfs:subClassOf, not the path. Part-of and is-a hierarchies stay in the RDF and the 1:N views; admin-units/ and streets/ stay flat. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Move Seimas structural units and parliamentary groups from top-level flat containers to nested paths under the Seimas organization document, mirroring
org:unitOfcomposition:org-units/{padalinio_id}/organizations/lietuvos-respublikos-seimas/org-units/{padalinio_id}/parliamentary-groups/{grupes_id}/organizations/lietuvos-respublikos-seimas/groups/{grupes_id}/Why
Every entity type getting its own top-level container crowds the namespace. Nesting an organization's constituent parts under its document URI expresses the
org:unitOfcomposition in the path itself, and scales to future orgs with internal structure (ministries, courts).URI-SCHEME.mdprinciple #2 is refined accordingly: standalone entities fold flat by type; constituent parts nest under their whole. Membership is not composition, sopersons/andparties/stay top-level — a person is a member of the Seimas, not a part of it.How
app/scaffolding; units reference it viaorg:unitOfonly.org-units.rq(nested paths, drop the now-scaffolded Seimas block),persons.rq(membership cross-links)organizations/lietuvos-respublikos-seimas.ttl+org-units.ttl+groups.ttl; remove old top-levelorg-units.ttl+parliamentary-groups.ttlorg:organizationpattern accepts the nested pathsdatasets/current/seimas/{org-units,persons}.trig+EXAMPLES.mdVerification
🤖 Generated with Claude Code