Skip to content

managing @id and/or @base for newly created resources / named graphs #162

@elf-pavlik

Description

@elf-pavlik

Versions of UC5 and UC5.1 in #154 both create a new resource, using HTTP POST and HTTP PUT accordingly.

Current version of UC3 shows how to retrieve a collection with events representations embedded. In this use case, all the events have @id but based UC5 and UC5.1 one can't really tell how do those @id appear in the representation.

In UC5.1 client controls the IRI of newly created resource (using HTTP PUT) and could easily include @id in the payload. In UC5, the server controls the IRI of newly created resource (it can respect HTTP Slug: header but client can't assume it will), so client can't include @id in the payload. Payload in UC5, which client POST to the server currently uses a Blank Node with no @id.

In a case where payload includes only single blank node, possibly server could replace it with a Named Node based on IRI it assigns to the resource. IMO we should also anticipate payloads which will use @graph with multiple named nodes and blank nodes. In that case server could set @base or name the graph itself (given payload includes only one default graph).

While we don't have to address various possible scenarios right away. I think we should at least make all the use cases presenting consistent and reproducible scenario. Which means UC5 and UC5.1 should clearly explain how does each event get its @id.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions