Skip to content

Instantly share code, notes, and snippets.

@boutros
Last active July 10, 2018 09:52
Show Gist options
  • Save boutros/040d2fbb0ba87d00a7f71401daa2d8e6 to your computer and use it in GitHub Desktop.
Save boutros/040d2fbb0ba87d00a7f71401daa2d8e6 to your computer and use it in GitHub Desktop.
tjenestekatalog insert update
===============================================
ADD SERVICE:
--------------------
_:b1 a :Service ;
:name "Petter til tjeneste!" ;
:description "Bestill en Petter i dag!" ;
:partner _:b2, _:b3 .
_:b2 a :Partner ;
:name "Norsk strutseservice AS" ;
:audience "Struts" .
_:b3 a :Partner ;
:name "Kaffegrutkompaniet" .
=> lag URI av blanke noder:
<http://tjenester.deichman.no/service/uuid1> a :Service ;
:name "Petter til tjeneste!" ;
:description "Bestill en Petter i dag!" ;
:partner <https://tjenester.deichman.no/parnter/uuid2>,<https://tjenester.deichman.no/parnter/uuid3> .
<https://tjenester.deichman.no/parnter/uuid2> a :Partner ;
:name "Norsk strutseservice AS" ;
:audience "Struts" .
<https://tjenester.deichman.no/parnter/uuid3> a :Partner ;
:name "Kaffegrutkompaniet" .
hashmap<BlankNode><URI>
ADD SERVICE FIXED IDs:
--------------------
PREFIX : <https://tjenester.deichman.no/ontology/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
WITH <https://tjenester.deichman.no>
INSERT {
<https://tjenester.deichman.no/service/s123> a :Service ;
:created ?now ;
:updated ?now ;
:name "Petter til tjeneste!" ;
:description "Bestill en Petter i dag!" ;
:partner <https://tjenester.deichman.no/partner/p1>,
<https://tjenester.deichman.no/partner/p2> .
<https://tjenester.deichman.no/partner/p1> a :Partner ;
:name "Norsk strutseservice AS" ;
:audience "Struts" .
<https://tjenester.deichman.no/partner/p2> a :Partner ;
:name "Kaffegrutkompaniet" .
} WHERE {
BIND(NOW() as ?now)
}
UPDATE SERVICE:
--------------------
PREFIX : <https://tjenester.deichman.no/ontology/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
WITH <https://tjenester.deichman.no>
DELETE {
<https://tjenester.deichman.no/service/s123> ?p ?o .
?o ?p2 ?o3 .
} INSERT {
<https://tjenester.deichman.no/service/s123> a :Service ;
:created ?created ;
:updated ?now ;
:name "Hugo til tjeneste!" ;
:description "Bestill en Hugo eller to i dag!" ;
:partner <https://tjenester.deichman.no/partner/p1>,
<https://tjenester.deichman.no/partner/p2> .
<https://tjenester.deichman.no/partner/p1> a :Partner ;
:name "Norsk strutseservice AS" ;
:audience "Struts" .
<https://tjenester.deichman.no/partner/p2> a :Partner ;
:name "Kaffegrutkompaniet" .
} WHERE {
<https://tjenester.deichman.no/service/s123> ?p ?o ;
:created ?created ;
:updated "2018-07-10T08:17:17.662+00:00"^^xsd:dateTime .
OPTIONAL {
<https://tjenester.deichman.no/service/s123> ?p ?o .
?o ?p2 ?o3
VALUES ?p { :partner :localResponsible :contentElement }
}
}
DELETE SERVICE:
----------------------
PREFIX : <https://tjenester.deichman.no/ontology/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
WITH <https://tjenester.deichman.no>
DELETE {
<https://tjenester.deichman.no/service/s123> ?p ?o .
?o ?p2 ?o3 .
}
WHERE {
{ <https://tjenester.deichman.no/service/s123> ?p ?o . }
UNION
{ <https://tjenester.deichman.no/service/s123> ?p ?o .
?o ?p2 ?o3
VALUES ?p { :partner }
}
}
DESCRIBE service
--------------------
PREFIX : <https://tjenester.deichman.no/ontology/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DESCRIBE <https://tjenester.deichman.no/service/s123> <https://tjenester.deichman.no/partner/p2> <https://tjenester.deichman.no/partner/p1>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment