<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://gbourgeat.github.io/ddd-ts-kit/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/architecture/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/architecture/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/architecture/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/actor-and-execution-scope/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/actor-and-execution-scope/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/actor-and-execution-scope/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/aggregates/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/aggregates/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/aggregates/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/anemic-model/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/anemic-model/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/anemic-model/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/audit-trail/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/audit-trail/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/audit-trail/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/authentication-and-authorization/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/authentication-and-authorization/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/authentication-and-authorization/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/authorization-in-practice/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/authorization-in-practice/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/authorization-in-practice/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/background-jobs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/background-jobs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/background-jobs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/bounded-context/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/bounded-context/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/bounded-context/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/clean-code/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/clean-code/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/clean-code/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/context-map-worked-example/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/context-map-worked-example/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/context-map-worked-example/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/context-map/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/context-map/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/context-map/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/cqrs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/cqrs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/cqrs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/delivery-and-idempotency/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/delivery-and-idempotency/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/delivery-and-idempotency/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-and-integration-events/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-and-integration-events/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-and-integration-events/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-and-subdomains/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-and-subdomains/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-and-subdomains/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-building-blocks/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-building-blocks/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-building-blocks/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/entities-and-value-objects/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/entities-and-value-objects/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/entities-and-value-objects/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/event-sourcing/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/event-sourcing/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/event-sourcing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/event-versioning/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/event-versioning/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/event-versioning/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/eventual-consistency/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/eventual-consistency/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/eventual-consistency/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/file-import-export/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/file-import-export/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/file-import-export/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/file-storage/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/file-storage/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/file-storage/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/http-caching/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/http-caching/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/http-caching/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/invariants-permissions-validation/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/invariants-permissions-validation/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/invariants-permissions-validation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/layers-and-dependency-rule/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/layers-and-dependency-rule/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/layers-and-dependency-rule/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/modular-monolith/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/modular-monolith/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/modular-monolith/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/multitenancy/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/multitenancy/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/multitenancy/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/observability/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/observability/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/observability/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/ports-and-composition/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/ports-and-composition/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/ports-and-composition/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/presentation-layer/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/presentation-layer/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/presentation-layer/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/representations-and-forms/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/representations-and-forms/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/representations-and-forms/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/resilience/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/resilience/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/resilience/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/sagas-and-process-managers/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/sagas-and-process-managers/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/sagas-and-process-managers/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/scheduled-jobs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/scheduled-jobs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/scheduled-jobs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/state-machines/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/state-machines/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/state-machines/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/testing-strategy/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/testing-strategy/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/testing-strategy/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/transactional-outbox/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/transactional-outbox/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/transactional-outbox/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/concepts/ubiquitous-language/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/ubiquitous-language/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/ubiquitous-language/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/config/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/config/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/config/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/contributing/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/contributing/code-of-conduct/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/code-of-conduct/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/code-of-conduct/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/contributing/security/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/security/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/security/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/contributing/translation/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/translation/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/translation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/documentation/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/documentation/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/documentation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0001-combine-token-roles-with-relationships-in-one-authorizer/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0001-combine-token-roles-with-relationships-in-one-authorizer/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0001-combine-token-roles-with-relationships-in-one-authorizer/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0002-keep-read-models-with-projections-in-application-projections/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0002-keep-read-models-with-projections-in-application-projections/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0002-keep-read-models-with-projections-in-application-projections/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0003-one-network-is-one-tenant/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0003-one-network-is-one-tenant/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0003-one-network-is-one-tenant/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0004-attendance-records-wait-for-a-tenant-in-the-event-store/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0004-attendance-records-wait-for-a-tenant-in-the-event-store/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0004-attendance-records-wait-for-a-tenant-in-the-event-store/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/context-map/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/context-map/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/context-map/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/glossary/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/glossary/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/glossary/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/analytics/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/analytics/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/analytics/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/identity/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/identity/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/identity/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/notification/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/notification/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/notification/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/scheduling-appointment/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/scheduling-appointment/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/scheduling-appointment/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/scheduling-calendar/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/scheduling-calendar/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/scheduling-calendar/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/contexts/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/contexts/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/contexts/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/discovery/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/discovery/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/discovery/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/needs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/needs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/needs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/plan/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/plan/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/plan/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/slices/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/slices/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/slices/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/commit-plan/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/commit-plan/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/commit-plan/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/context-map/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/context-map/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/context-map/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/demo-transcript/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/demo-transcript/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/demo-transcript/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/integration/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/integration/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/integration/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/tooling-report/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/tooling-report/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/tooling-report/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/architecture/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/architecture/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/architecture/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/actor-and-execution-scope/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/actor-and-execution-scope/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/actor-and-execution-scope/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/aggregates/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/aggregates/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/aggregates/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/anemic-model/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/anemic-model/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/anemic-model/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/audit-trail/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/audit-trail/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/audit-trail/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/authentication-and-authorization/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/authentication-and-authorization/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/authentication-and-authorization/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/authorization-in-practice/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/authorization-in-practice/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/authorization-in-practice/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/background-jobs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/background-jobs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/background-jobs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/bounded-context/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/bounded-context/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/bounded-context/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/clean-code/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/clean-code/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/clean-code/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/context-map-worked-example/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/context-map-worked-example/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/context-map-worked-example/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/context-map/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/context-map/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/context-map/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/cqrs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/cqrs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/cqrs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/delivery-and-idempotency/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/delivery-and-idempotency/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/delivery-and-idempotency/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-and-integration-events/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-and-integration-events/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-and-integration-events/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-and-subdomains/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-and-subdomains/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-and-subdomains/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-building-blocks/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/domain-building-blocks/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/domain-building-blocks/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/entities-and-value-objects/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/entities-and-value-objects/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/entities-and-value-objects/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/event-sourcing/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/event-sourcing/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/event-sourcing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/event-versioning/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/event-versioning/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/event-versioning/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/eventual-consistency/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/eventual-consistency/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/eventual-consistency/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/file-import-export/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/file-import-export/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/file-import-export/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/file-storage/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/file-storage/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/file-storage/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/http-caching/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/http-caching/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/http-caching/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/invariants-permissions-validation/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/invariants-permissions-validation/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/invariants-permissions-validation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/layers-and-dependency-rule/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/layers-and-dependency-rule/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/layers-and-dependency-rule/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/modular-monolith/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/modular-monolith/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/modular-monolith/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/multitenancy/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/multitenancy/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/multitenancy/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/observability/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/observability/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/observability/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/ports-and-composition/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/ports-and-composition/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/ports-and-composition/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/presentation-layer/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/presentation-layer/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/presentation-layer/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/representations-and-forms/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/representations-and-forms/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/representations-and-forms/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/resilience/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/resilience/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/resilience/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/sagas-and-process-managers/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/sagas-and-process-managers/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/sagas-and-process-managers/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/scheduled-jobs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/scheduled-jobs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/scheduled-jobs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/state-machines/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/state-machines/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/state-machines/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/testing-strategy/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/testing-strategy/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/testing-strategy/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/transactional-outbox/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/transactional-outbox/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/transactional-outbox/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/ubiquitous-language/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/concepts/ubiquitous-language/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/concepts/ubiquitous-language/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/config/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/config/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/config/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/code-of-conduct/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/code-of-conduct/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/code-of-conduct/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/security/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/security/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/security/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/translation/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/contributing/translation/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/contributing/translation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/documentation/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/documentation/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/documentation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0001-combine-token-roles-with-relationships-in-one-authorizer/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0001-combine-token-roles-with-relationships-in-one-authorizer/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0001-combine-token-roles-with-relationships-in-one-authorizer/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0002-keep-read-models-with-projections-in-application-projections/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0002-keep-read-models-with-projections-in-application-projections/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0002-keep-read-models-with-projections-in-application-projections/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0003-one-network-is-one-tenant/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0003-one-network-is-one-tenant/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0003-one-network-is-one-tenant/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0004-attendance-records-wait-for-a-tenant-in-the-event-store/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/adr/0004-attendance-records-wait-for-a-tenant-in-the-event-store/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/adr/0004-attendance-records-wait-for-a-tenant-in-the-event-store/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/context-map/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/context-map/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/context-map/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/glossary/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/before-bootstrap/glossary/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/before-bootstrap/glossary/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/analytics/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/analytics/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/analytics/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/identity/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/identity/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/identity/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/notification/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/notification/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/notification/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/scheduling-appointment/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/scheduling-appointment/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/scheduling-appointment/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/scheduling-calendar/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/briefings/scheduling-calendar/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/briefings/scheduling-calendar/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/contexts/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/contexts/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/contexts/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/discovery/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/discovery/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/discovery/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/needs/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/needs/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/needs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/plan/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/plan/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/plan/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/slices/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/architecture/slices/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/architecture/slices/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/commit-plan/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/commit-plan/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/commit-plan/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/context-map/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/context-map/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/context-map/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/demo-transcript/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/demo-transcript/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/demo-transcript/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/integration/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/integration/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/integration/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/tooling-report/</loc><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/example/scheduling/tooling-report/"/><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/example/scheduling/tooling-report/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/bootstrap-with-well-designed-contexts/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/bootstrap-with-well-designed-contexts/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/bootstrap-with-well-designed-contexts/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/choosing-access-control/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/choosing-access-control/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/choosing-access-control/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/coding-agents/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/coding-agents/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/coding-agents/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/commands/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/commands/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/commands/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/commit-discipline/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/commit-discipline/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/commit-discipline/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/first-slice/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/first-slice/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/first-slice/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/methodology/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/methodology/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/methodology/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/parallel-work/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/parallel-work/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/parallel-work/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/team-workflow/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/team-workflow/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/team-workflow/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/token-economy/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/token-economy/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/token-economy/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/guides/when-to-extract-microservices/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/when-to-extract-microservices/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/when-to-extract-microservices/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/aspects/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/aspects/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/aspects/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/audit/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/audit/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/audit/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/auth/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/auth/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/auth/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/cli/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/cli/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/cli/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/di/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/di/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/di/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/drizzle/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/drizzle/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/drizzle/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/eslint-plugin/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/eslint-plugin/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/eslint-plugin/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/events/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/events/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/events/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/http/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/http/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/http/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/kafka/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/kafka/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/kafka/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/kernel/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/kernel/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/kernel/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/knex/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/knex/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/knex/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/nats/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/nats/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/nats/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/openfga/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/openfga/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/openfga/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/pino/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/pino/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/pino/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/prisma/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/prisma/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/prisma/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/rabbitmq/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/rabbitmq/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/rabbitmq/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/rabbitmq/other-brokers/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/rabbitmq/other-brokers/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/rabbitmq/other-brokers/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/redis/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/redis/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/redis/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/s3/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/s3/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/s3/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/scheduling/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/scheduling/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/scheduling/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/sentry/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/sentry/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/sentry/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/testing/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/testing/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/testing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/tracing/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/tracing/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/tracing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/typeorm/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/typeorm/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/typeorm/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/validation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/validation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/validation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/packages/winston/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/winston/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/winston/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/proposals/context-presets/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/proposals/context-presets/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/proposals/context-presets/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/proposals/read-side/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/proposals/read-side/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/proposals/read-side/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/application-command-query-separation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/application-command-query-separation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/application-command-query-separation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/application-handler-shape/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/application-handler-shape/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/application-handler-shape/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/aspects-outside-in/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/aspects-outside-in/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/aspects-outside-in/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-actor-explicit/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-actor-explicit/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-actor-explicit/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-declared/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-declared/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-declared/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-fields-by-schema/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-fields-by-schema/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-fields-by-schema/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-in-application/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-in-application/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-in-application/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-blank-lines/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-blank-lines/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-blank-lines/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-braces/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-braces/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-braces/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-file-size/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-file-size/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-file-size/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-formatted/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-formatted/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-formatted/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-function-ceiling/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-function-ceiling/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-function-ceiling/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-function-size/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-function-size/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-function-size/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-commented-out-code/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-commented-out-code/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-commented-out-code/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-escape-hatch/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-escape-hatch/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-escape-hatch/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-flag-argument/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-flag-argument/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-flag-argument/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-hash-private/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-hash-private/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-hash-private/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-magic-number/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-magic-number/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-magic-number/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-noise-comment/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-noise-comment/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-noise-comment/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-one-export-per-file/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-one-export-per-file/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-one-export-per-file/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-stepdown/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-stepdown/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-stepdown/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-declared-relationship/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-declared-relationship/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-declared-relationship/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-extractable/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-extractable/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-extractable/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-published-language-is-a-contract/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-published-language-is-a-contract/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-published-language-is-a-contract/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-published-language-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-published-language-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-published-language-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/declarations-constructor-injection/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/declarations-constructor-injection/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/declarations-constructor-injection/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/declarations-role-declared/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/declarations-role-declared/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/declarations-role-declared/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-aggregate-encapsulation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-aggregate-encapsulation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-aggregate-encapsulation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-events-dispatched-on-save/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-events-dispatched-on-save/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-events-dispatched-on-save/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-events-transactional-before-commit/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-events-transactional-before-commit/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-events-transactional-before-commit/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-no-generic-error/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-no-generic-error/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-no-generic-error/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-value-object-class/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-value-object-class/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-value-object-class/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-value-object-immutability/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-value-object-immutability/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-value-object-immutability/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-constructor-not-public/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-constructor-not-public/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/errors-constructor-not-public/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-factory-name/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-factory-name/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/errors-factory-name/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-through-factory/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-through-factory/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/errors-through-factory/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-past-tense/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-past-tense/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-past-tense/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-projection-never-appends/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-projection-never-appends/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-projection-never-appends/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-state-in-apply/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-state-in-apply/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-state-in-apply/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-store-behind-repository/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-store-behind-repository/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-store-behind-repository/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-upcaster-required/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-upcaster-required/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-upcaster-required/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-consumer-idempotent/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-consumer-idempotent/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/events-consumer-idempotent/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-name-format/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-name-format/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/events-name-format/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-outbox-required/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-outbox-required/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/events-outbox-required/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/governance-recorded-deviation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/governance-recorded-deviation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/governance-recorded-deviation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/imports-alias-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/imports-alias-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/imports-alias-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/imports-extension/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/imports-extension/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/imports-extension/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/language-declared-vocabulary/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/language-declared-vocabulary/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/language-declared-vocabulary/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-application-inward/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-application-inward/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-application-inward/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-domain-purity/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-domain-purity/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-domain-purity/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-infrastructure-no-presentation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-infrastructure-no-presentation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-infrastructure-no-presentation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-presentation-no-infrastructure/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-presentation-no-infrastructure/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-presentation-no-infrastructure/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/lifecycle-status-through-machine/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/lifecycle-status-through-machine/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/lifecycle-status-through-machine/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/naming-business-name/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/naming-business-name/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/naming-business-name/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-abstract-class/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-abstract-class/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-abstract-class/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-implements-never-extends/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-implements-never-extends/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-implements-never-extends/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-no-concrete-dependency/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-no-concrete-dependency/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-no-concrete-dependency/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-no-token-constant/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-no-token-constant/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-no-token-constant/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-value-import/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-value-import/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-value-import/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-controller-delegates/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-controller-delegates/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-controller-delegates/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-controller-shape/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-controller-shape/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-controller-shape/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-guard-at-the-edge/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-guard-at-the-edge/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-guard-at-the-edge/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-shared-cache-varies/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-shared-cache-varies/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-shared-cache-varies/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/process-sends-commands-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/process-sends-commands-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/process-sends-commands-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-ambient-randomness/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-ambient-randomness/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-ambient-randomness/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-environment/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-environment/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-environment/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-system-clock/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-system-clock/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-system-clock/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/scheduling-job-name/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/scheduling-job-name/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/scheduling-job-name/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/scheduling-job-triggers-use-case/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/scheduling-job-triggers-use-case/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/scheduling-job-triggers-use-case/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/schema-presentation-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/schema-presentation-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/schema-presentation-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/standard-no-parallel-interface/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/standard-no-parallel-interface/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/standard-no-parallel-interface/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/test-no-mocks/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/test-no-mocks/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/test-no-mocks/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/rules/tracing-platform-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/tracing-platform-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/tracing-platform-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/start/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/start/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/start/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/authorization-engines/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/authorization-engines/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/authorization-engines/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/cache-and-coordination/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/cache-and-coordination/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/cache-and-coordination/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/client-sdk/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/client-sdk/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/client-sdk/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/contract-pairs/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/contract-pairs/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/contract-pairs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/dependency-injection/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/dependency-injection/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/dependency-injection/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/file-storage/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/file-storage/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/file-storage/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/http-caches/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/http-caches/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/http-caches/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/http-frameworks/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/http-frameworks/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/http-frameworks/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/identity/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/identity/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/identity/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/import-aliases/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/import-aliases/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/import-aliases/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/message-brokers/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/message-brokers/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/message-brokers/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/observability/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/observability/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/observability/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/persistence/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/persistence/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/persistence/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/quality-baseline/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/quality-baseline/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/quality-baseline/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/representations-and-forms/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/representations-and-forms/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/representations-and-forms/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/static-analysis-and-pipeline/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/static-analysis-and-pipeline/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/static-analysis-and-pipeline/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/test-runners/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/test-runners/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/test-runners/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/fr/tools/validation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/validation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/validation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/bootstrap-with-well-designed-contexts/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/bootstrap-with-well-designed-contexts/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/bootstrap-with-well-designed-contexts/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/choosing-access-control/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/choosing-access-control/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/choosing-access-control/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/coding-agents/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/coding-agents/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/coding-agents/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/commands/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/commands/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/commands/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/commit-discipline/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/commit-discipline/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/commit-discipline/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/first-slice/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/first-slice/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/first-slice/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/methodology/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/methodology/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/methodology/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/parallel-work/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/parallel-work/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/parallel-work/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/team-workflow/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/team-workflow/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/team-workflow/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/token-economy/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/token-economy/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/token-economy/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/guides/when-to-extract-microservices/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/guides/when-to-extract-microservices/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/guides/when-to-extract-microservices/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/aspects/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/aspects/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/aspects/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/audit/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/audit/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/audit/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/auth/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/auth/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/auth/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/cli/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/cli/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/cli/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/di/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/di/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/di/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/drizzle/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/drizzle/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/drizzle/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/eslint-plugin/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/eslint-plugin/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/eslint-plugin/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/events/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/events/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/events/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/http/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/http/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/http/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/kafka/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/kafka/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/kafka/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/kernel/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/kernel/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/kernel/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/knex/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/knex/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/knex/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/nats/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/nats/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/nats/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/openfga/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/openfga/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/openfga/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/pino/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/pino/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/pino/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/prisma/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/prisma/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/prisma/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/rabbitmq/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/rabbitmq/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/rabbitmq/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/rabbitmq/other-brokers/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/rabbitmq/other-brokers/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/rabbitmq/other-brokers/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/redis/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/redis/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/redis/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/s3/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/s3/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/s3/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/scheduling/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/scheduling/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/scheduling/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/sentry/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/sentry/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/sentry/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/testing/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/testing/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/testing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/tracing/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/tracing/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/tracing/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/typeorm/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/typeorm/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/typeorm/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/validation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/validation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/validation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/packages/winston/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/packages/winston/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/packages/winston/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/proposals/context-presets/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/proposals/context-presets/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/proposals/context-presets/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/proposals/read-side/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/proposals/read-side/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/proposals/read-side/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/application-command-query-separation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/application-command-query-separation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/application-command-query-separation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/application-handler-shape/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/application-handler-shape/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/application-handler-shape/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/aspects-outside-in/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/aspects-outside-in/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/aspects-outside-in/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/authz-actor-explicit/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-actor-explicit/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-actor-explicit/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/authz-declared/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-declared/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-declared/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/authz-fields-by-schema/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-fields-by-schema/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-fields-by-schema/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/authz-in-application/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/authz-in-application/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/authz-in-application/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-blank-lines/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-blank-lines/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-blank-lines/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-braces/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-braces/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-braces/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-file-size/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-file-size/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-file-size/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-formatted/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-formatted/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-formatted/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-function-ceiling/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-function-ceiling/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-function-ceiling/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-function-size/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-function-size/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-function-size/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-commented-out-code/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-commented-out-code/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-commented-out-code/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-escape-hatch/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-escape-hatch/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-escape-hatch/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-flag-argument/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-flag-argument/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-flag-argument/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-hash-private/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-hash-private/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-hash-private/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-magic-number/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-magic-number/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-magic-number/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-noise-comment/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-no-noise-comment/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-no-noise-comment/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-one-export-per-file/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-one-export-per-file/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-one-export-per-file/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/clean-stepdown/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/clean-stepdown/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/clean-stepdown/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/context-declared-relationship/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-declared-relationship/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-declared-relationship/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/context-extractable/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-extractable/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-extractable/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/context-published-language-is-a-contract/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-published-language-is-a-contract/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-published-language-is-a-contract/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/context-published-language-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/context-published-language-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/context-published-language-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/declarations-constructor-injection/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/declarations-constructor-injection/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/declarations-constructor-injection/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/declarations-role-declared/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/declarations-role-declared/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/declarations-role-declared/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/domain-aggregate-encapsulation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-aggregate-encapsulation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-aggregate-encapsulation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/domain-events-dispatched-on-save/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-events-dispatched-on-save/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-events-dispatched-on-save/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/domain-events-transactional-before-commit/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-events-transactional-before-commit/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-events-transactional-before-commit/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/domain-no-generic-error/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-no-generic-error/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-no-generic-error/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/domain-value-object-class/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-value-object-class/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-value-object-class/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/domain-value-object-immutability/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/domain-value-object-immutability/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/domain-value-object-immutability/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/errors-constructor-not-public/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-constructor-not-public/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/errors-constructor-not-public/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/errors-factory-name/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-factory-name/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/errors-factory-name/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/errors-through-factory/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/errors-through-factory/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/errors-through-factory/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-past-tense/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-past-tense/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-past-tense/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-projection-never-appends/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-projection-never-appends/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-projection-never-appends/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-state-in-apply/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-state-in-apply/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-state-in-apply/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-store-behind-repository/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-store-behind-repository/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-store-behind-repository/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-upcaster-required/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/event-sourcing-upcaster-required/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/event-sourcing-upcaster-required/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/events-consumer-idempotent/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-consumer-idempotent/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/events-consumer-idempotent/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/events-name-format/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-name-format/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/events-name-format/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/events-outbox-required/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/events-outbox-required/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/events-outbox-required/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/governance-recorded-deviation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/governance-recorded-deviation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/governance-recorded-deviation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/imports-alias-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/imports-alias-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/imports-alias-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/imports-extension/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/imports-extension/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/imports-extension/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/language-declared-vocabulary/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/language-declared-vocabulary/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/language-declared-vocabulary/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/layer-application-inward/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-application-inward/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-application-inward/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/layer-domain-purity/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-domain-purity/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-domain-purity/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/layer-infrastructure-no-presentation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-infrastructure-no-presentation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-infrastructure-no-presentation/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/layer-presentation-no-infrastructure/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/layer-presentation-no-infrastructure/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/layer-presentation-no-infrastructure/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/lifecycle-status-through-machine/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/lifecycle-status-through-machine/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/lifecycle-status-through-machine/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/naming-business-name/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/naming-business-name/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/naming-business-name/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/ports-abstract-class/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-abstract-class/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-abstract-class/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/ports-implements-never-extends/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-implements-never-extends/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-implements-never-extends/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/ports-no-concrete-dependency/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-no-concrete-dependency/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-no-concrete-dependency/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/ports-no-token-constant/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-no-token-constant/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-no-token-constant/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/ports-value-import/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/ports-value-import/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/ports-value-import/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-controller-delegates/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-controller-delegates/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-controller-delegates/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-controller-shape/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-controller-shape/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-controller-shape/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-guard-at-the-edge/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-guard-at-the-edge/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-guard-at-the-edge/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-shared-cache-varies/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/presentation-shared-cache-varies/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/presentation-shared-cache-varies/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/process-sends-commands-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/process-sends-commands-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/process-sends-commands-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-ambient-randomness/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-ambient-randomness/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-ambient-randomness/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-environment/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-environment/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-environment/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-system-clock/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/purity-no-system-clock/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/purity-no-system-clock/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/scheduling-job-name/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/scheduling-job-name/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/scheduling-job-name/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/scheduling-job-triggers-use-case/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/scheduling-job-triggers-use-case/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/scheduling-job-triggers-use-case/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/schema-presentation-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/schema-presentation-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/schema-presentation-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/standard-no-parallel-interface/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/standard-no-parallel-interface/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/standard-no-parallel-interface/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/test-no-mocks/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/test-no-mocks/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/test-no-mocks/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/rules/tracing-platform-only/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/rules/tracing-platform-only/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/rules/tracing-platform-only/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/start/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/start/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/start/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/authorization-engines/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/authorization-engines/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/authorization-engines/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/cache-and-coordination/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/cache-and-coordination/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/cache-and-coordination/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/client-sdk/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/client-sdk/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/client-sdk/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/contract-pairs/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/contract-pairs/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/contract-pairs/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/dependency-injection/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/dependency-injection/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/dependency-injection/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/file-storage/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/file-storage/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/file-storage/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/http-caches/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/http-caches/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/http-caches/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/http-frameworks/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/http-frameworks/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/http-frameworks/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/identity/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/identity/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/identity/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/import-aliases/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/import-aliases/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/import-aliases/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/message-brokers/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/message-brokers/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/message-brokers/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/observability/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/observability/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/observability/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/persistence/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/persistence/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/persistence/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/quality-baseline/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/quality-baseline/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/quality-baseline/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/representations-and-forms/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/representations-and-forms/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/representations-and-forms/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/static-analysis-and-pipeline/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/static-analysis-and-pipeline/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/static-analysis-and-pipeline/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/test-runners/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/test-runners/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/test-runners/"/></url><url><loc>https://gbourgeat.github.io/ddd-ts-kit/tools/validation/</loc><xhtml:link rel="alternate" hreflang="fr" href="https://gbourgeat.github.io/ddd-ts-kit/fr/tools/validation/"/><xhtml:link rel="alternate" hreflang="en" href="https://gbourgeat.github.io/ddd-ts-kit/tools/validation/"/></url></urlset>