Structure

Lay out the document hierarchy that will hold your data

Documents come in two kinds: containers, which hold child documents, and items. Northwind's domain gives us the container layout directly — one container per entity type:

https://localhost:4443/
├── categories/
├── customers/
├── employees/
├── orders/
├── products/
├── regions/
├── shippers/
├── suppliers/
└── territories/

In the browser

Create each container from the root document using the document creation form — see the Create documents guide.

From the command line

A container is just a document whose description says it is one. categories.ttl:

@prefix dh:     <https://www.w3.org/ns/ldt/document-hierarchy#> .
@prefix dct:    <http://purl.org/dc/terms/> .

<> a dh:Container ;
    dct:title "Categories" .

PUT it to the container URL, the same way the root document was updated:

cat categories.ttl | turtle --base="${base}categories/" | put.sh \
    -f "$cert_pem_file" \
    -p "$cert_password" \
    -t "application/n-triples" \
    "${base}categories/"

Repeat for the remaining eight containers — or skip ahead to App as a repository to see how the demo derives the document URL from the filename and replays a whole folder in one command.

What you now see

The root document now lists the containers as its children, and each container URL resolves to an (empty) listing page. The URL space of your app is its information architecture.

Next: Model