<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://exportlayer.com</loc>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://exportlayer.com/sections/analysis-ready-schema-design</loc>
<lastmod>2026-10-13T11:30:57.132Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://exportlayer.com/sections/data-contracts</loc>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://exportlayer.com/sections/incremental-and-cdc-delivery</loc>
<lastmod>2026-10-21T11:30:44.514Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://exportlayer.com/authors/tobias-wrenfeld</loc>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.4</priority>
</url>
<url>
<loc>https://exportlayer.com/authors/amara-osei-bonsu</loc>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.4</priority>
</url>
<url>
<loc>https://exportlayer.com/authors/priya-subramaniam</loc>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.4</priority>
</url>
<url>
<loc>https://exportlayer.com/authors/soren-nakagawa</loc>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.4</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/row-level-filtering-contracts-for-multi-tenant-agent-queries</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/d79d9f44-2f79-437d-b6e6-4f6572c36c9a.jpeg</image:loc>
</image:image>
<lastmod>2026-11-06T13:21:30.516Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/vendor-capability-checklist-for-embedded-integration-that-keeps-agent-queries-in</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/f71e55ad-a667-4761-a6b8-49f3242d7926.jpeg</image:loc>
</image:image>
<lastmod>2026-11-03T13:16:51.830Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/machine-readable-data-dictionaries-for-ai-agent-discovery</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/29a00f78-df3d-4077-a61b-8b0c6b05c002.jpeg</image:loc>
</image:image>
<lastmod>2026-10-30T11:31:40.664Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/scoped-export-contracts-as-the-access-boundary-for-warehouse-grounded-ai-agents</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/09453367-ff3b-4e07-bb03-0156e1bd0bd5.jpeg</image:loc>
</image:image>
<lastmod>2026-10-29T12:41:06.277Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/granting-ai-agents-query-rights-through-permissioned-data-contracts-instead-of-d</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/25c7943a-ab85-4c20-907c-906eddab1c96.jpeg</image:loc>
</image:image>
<lastmod>2026-10-26T12:31:14.753Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/data-contract-testing-for-agent-consumed-export-pipelines</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/20f77637-2aba-4c55-bc17-896044a2afee.jpeg</image:loc>
</image:image>
<lastmod>2026-10-24T12:10:27.413Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/idempotent-upsert-patterns-for-warehouse-destinations</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/ff734154-c2e3-4792-9a25-09584cdc3727.jpeg</image:loc>
</image:image>
<lastmod>2026-10-21T11:30:44.514Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/backfill-strategies-for-adding-new-columns-to-live-export-pipelines</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/fed78a39-1a9f-4c43-8e53-0a728d4ce0f9.jpeg</image:loc>
</image:image>
<lastmod>2026-10-20T11:46:41.747Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/soft-delete-propagation-across-customer-warehouse-targets</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/fc41529d-65f3-4a49-a940-039aa4152abc.jpeg</image:loc>
</image:image>
<lastmod>2026-10-19T11:50:45.506Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/watermark-based-incremental-sync-for-saas-application-databases</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/ebc65a2c-8892-4362-b9b7-3a11208e2efe.jpeg</image:loc>
</image:image>
<lastmod>2026-10-14T12:11:36.542Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/denormalization-depth-decisions-for-analyst-facing-tables</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/65904774-1c65-4e9c-a86f-4716bedab107.jpeg</image:loc>
</image:image>
<lastmod>2026-10-13T11:30:57.132Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/surrogate-vs-natural-keys-in-customer-facing-exports</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/4cebaeea-5930-4102-b113-8e8306d01f28.jpeg</image:loc>
</image:image>
<lastmod>2026-10-12T12:55:38.649Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/modeling-saas-event-streams-as-analysis-ready-fact-tables</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/d68f1083-c2b1-412e-bb82-7c2855df83e9.jpeg</image:loc>
</image:image>
<lastmod>2026-10-10T12:25:32.864Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/null-handling-conventions-for-customer-facing-exports</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/9f6fa00c-4a5f-41b3-9863-217ce7212fc5.jpeg</image:loc>
</image:image>
<lastmod>2026-10-08T12:40:48.027Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/semantic-type-annotation-in-exported-schemas</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/9cc6019b-af93-45b3-ad65-cadc69a5ba25.jpeg</image:loc>
</image:image>
<lastmod>2026-10-07T11:55:56.358Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/boolean-and-enum-encoding-across-warehouse-targets</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/a6a54d80-cb5f-4330-be74-aadef1724fb0.jpeg</image:loc>
</image:image>
<lastmod>2026-10-01T11:40:47.877Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/foreign-key-declaration-in-exported-schemas-without-enforcement</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/87d9f851-2606-487e-b1cb-fcd8be024f4f.jpeg</image:loc>
</image:image>
<lastmod>2026-09-30T17:36:05.007Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/schema-versioning-and-breaking-change-management-for-exported-tables</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/22c7bdc6-c278-47dd-8b0a-37fc7d3968e8.jpeg</image:loc>
</image:image>
<lastmod>2026-09-30T16:41:22.911Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/column-naming-conventions-for-multi-warehouse-exports</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/47568d45-9541-41dd-808c-ffee4f745273.jpeg</image:loc>
</image:image>
<lastmod>2026-09-25T11:39:27.559Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/temporal-column-standards-for-analysis-ready-exports</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/503dafcb-c7a9-4b22-88c4-5ddfdfeb63c5.jpeg</image:loc>
</image:image>
<lastmod>2026-09-24T17:51:21.633Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://exportlayer.com/posts/logical-replication-cdc-from-postgres-to-cloud-warehouses</loc>
<image:image>
<image:loc>https://mcxtywzsmeezbwapdahq.supabase.co/storage/v1/object/public/canvas-images/6b40f108-be2b-4f40-9852-f7602d117e17/canvas/1ff3fa54-b580-4221-b431-09be76977e5b/generated/bc3615f7-a688-437f-a83a-6dd7556b65ba.jpeg</image:loc>
</image:image>
<lastmod>2026-09-23T19:54:19.849Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
</urlset>
