- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Mon, 23 Jan 2023 19:39:58 -0500
- To: public-rdf-star-wg@w3.org
For some of these examples it is unclear what is going on. For example, is Sherman Klump a string or an object? Similarly for 135025560000; Jan10, 2011; and friends. Without this information it is unclear what edge annotations are being used. peter On 1/23/23 19:19, Thomas Lörtsch wrote: > Hi, > > I collected some use cases for edge annotations by googling for "property graph example", checking some popular books on graph databases and consulting RDF-star implementors' documentations. It wasn’t a very systematic effort but I swear I didn’t pick favorites. > I did put a little effort in formatting, so with a monospaced font it should be fairly readable. When the example has 2 columns and 3 rows then the left column are subject, predicate and object of a statement and the right column are the attributes - you’ll get the idea. > > Best, > Thomas > > > > > EXAMPLES: > > > Dave Bechberger, Josh Perryman - Graph Databases in Action, Manning Publications, 2020 > Figure 2.18 Adding a role property to the acted_in edge creates a mutiple uniqueness edge to express the fact that Eddie Murphy acted in multiple roles in the movie Nutty Professor. > > person Eddie Murphy > acted_in role: Sherman Klump, Buddy Love > movie Nutty Professor > > > > Ian Robinson, Jim Webber, Emil Eifrim - Graph Databases New opportunities for Connected Data, O’Reilly, 2015 > Figure 5-16. Timestamp properties on relationships > > id:1 Location: Parcel Center > CONNECTED_TO cost: 3, start_date: 13502556000000, end_date: 13508604000000 > id:1, name:… Location: Delivery Base > > > > Neo4j Developer, Why Graph Databases? > https://neo4j.com/developer/graph-database/ > > Person name: Dan, born: May 29 1970, twitter: "@dan" > drives since: Jan 10, 2011 > Car brand: "Volvo", model: "V70" > > > > Neo4j Blog, RDF Triple Stores vs. Labeled Property Graphs: What’s the Difference? > https://neo4j.com/blog/rdf-triple-store-vs-labeled-property-graph-difference/ > > 2042819 name: NYC > CONNECTION distanceKm: 4100, costUSD: 300 > 2042820 name: SFO > > > > Oracle, Graph Developer's Guide for Property Graph, 1.1.1 What Are Property Graphs? > https://docs.oracle.com/en/database/oracle/property-graph/22.2/spgdg/what-are-property-graphs.html > > 1 name: Alice, age: 31 > knows type: friends > 2 name: Bob, age: 27 > > > > Oxford Semantics, What is a labeled property graph? > https://www.oxfordsemantic.tech/fundamentals/what-is-a-labeled-property-graph > > ID: "12345", Label: "Person" > name: "Alice", dateOfBirth: "1975-10-22", height: 1.70 > ID "24680", Label: "Married" > date: "2004-09-19" > ID: "67890", Label: "Person" > name: "Bob", dateOfBirth: "1976-01-07", height: 1.75 > > > > TerminusDB Community Blog post, Graph Fundamentals — Part 2: Labelled Property Graphs > https://medium.com/terminusdb/graph-fundamentals-part-2-labelled-property-graphs-ba9a8edb5dfe > > NODE name: "Andy", title: "Developer" > EDGE rid:"MANAGES", from: 2011-12-12 > NODE name: "Bob", title: "Manager" > > > > OpenCredo, Blog post, Making Sense of Data with RDF* vs. LPG > https://opencredo.com/blogs/making-sense-of-data-with-rdf-vs-lpg/ > > Elon Musk > FOUNDED startDate: "2002-03-14", source: "https://en.wikipedia.org/wiki/SpaceX" > SpaceX > > > > Cambridge Semantics, AnzoGraphDB 2.5, Creating and Querying Labeled Property Graphs (RDF*) > https://docs.cambridgesemantics.com/anzograph/v2.5/userdoc/lpgs.htm?Highlight=Labeled%20Property%20Graphs%20RDF* > > @prefix tickit: <http://anzograph.com/tickit/> . > > tickit:person3 > rdf:type tickit:person ; > tickit:card "4984932249480735"^^xsd:long ; > tickit:birthday "1963-07-02"^^xsd:date ; > […] . > << tickit:person3 tickit:like "sports" >> tickit:weight 8 . > << tickit:person3 tickit:like "rock" >> tickit:weight 9 . > […] > << tickit:person3 tickit:friend tickit:person8563 >> tickit:startDate "1990-01-04"^^xsd:date . > << tickit:person3 tickit:friend tickit:person38436 >> tickit:startDate "2000-04-27"^^xsd:date . > << tickit:person3 tickit:friend tickit:person11979 >> tickit:startDate "2004-11-09"^^xsd:date . > << tickit:person3 tickit:friend tickit:person11979 >> tickit:endDate "2012-07-17"^^xsd:date . > tickit:person3 tickit:friend tickit:person8639, > […] > tickit:person11979, > […] > tickit:person38436 > […] . > > [In this example something went wrong with asserting quoted triples: > person11979 should not be listed as friend anymore and > it’s unclear why person8563 isn’t listed. > Maybe a mishap, or mabye the friendship ended but we don’t know the date.] > > > > Renzo Angles, 2018, The Property Graph Database Model > http://ceur-ws.org/Vol-2100/paper26.pdf > > Entry title, numpages, keyword > hasAuthor order > Author fname, lname > > InProceedings (inherits from Entry) > booktitle pages > Proceedings title, year, month > > Article (inherits from Entry) > publishedIn pages > Journal title, year, vol, num > > > > Stardog, Query Stardog/Edge Properties (beta) > https://docs.stardog.com/query-stardog/edge-properties > > << :Pete a :Engineer >> :since 2010 . > << :Pete :worksAt :Stardog >> :source :HR . > > :Pete a { :since 2010 ; until 2018} :Engineer ; > :worksAt { :source :HR } :Stardog > > > > Stardog, Blog, Property Graphs meet Stardog > https://www.stardog.com/blog/property-graphs-meet-stardog/ > > << :Alice :worksFor :ACME >> :role :CEO ; > :since 2010 ; > :probability 0.8 ; > :source <http://example.com/news> . > > :Alice :worksFor {:role :CEO ; > :since 2010 ; > :probability 0.8 ; > :source <http://example.com/news>} :ACME ; > :birthDate {:probability 0.2} "1972-01-01"^^xsd:date ; > :nationality {:source <http://example.org/Alice>} :USA . > > > > GraphDB 9.2 Documentation, RDF* and SPARQL* > https://graphdb.ontotext.com/documentation/9.2/free/devhub/rdf-sparql-star.html#id1 > (the current 10.1 docs use the same examples, just with explicit namespaces) > > :man :hasSpouse :woman . > <<:man :hasSpouse :woman>> :startDate "2020-02-11"^^xsd:date . > > <<:man :hasSpouse :woman>> ex:certainty 0.9 . > > Object relation qualifiers: > <<:man :hasSpouse :woman>> :startDate "2020-02-11"^^xsd:date > > Data value qualifiers: > <<:painting :height 32.1>> > :unit :cm; > :measurementTechnique :laserScanning; > :measuredOn "2020-02-11"^^xsd:date. > > Statement sources/references: > <<:man :hasSpouse :woman>> > :source :TheNationalEnquirer; > :webpage <http://nationalenquirer.com/news/2020-02-12>; > :retrieved "2020-02-13"^^xsd:dateTime. > > > > Apache Jena, Documentation Support of RDF-star > https://jena.apache.org/documentation/rdf-star/ > > SELECT ?name { <<:john foaf:name ?name >> dct:source <http://example/directory> } > > B.t.w., the page also says: > "Translating back to RDF-star relies on the consistency constraint > that there is only one reification for each unique quoted triple term." > That's another way to illustrate how misguided the type-based approach of RDF-star is. > > > > TopQuadrant, RDF-Star – Why, how and when should you use it? > https://www.topquadrant.com/resources/rdf-star-why-how-and-when-should-you-use-it > > example:Irene rdfs:label “Irene” ; > rdf:type example:Person ; > example:worksFor example:TopQuadrant . > <urn:triple:%3Chttp%3A%2F%2Fexample.org%2Freification%23Irene%3E:%3Chttp%3A%2F%2Fexample.org%2Freification%23worksFor%3E:%3Chttp%3A%2F%2Fexample.org%2Freification%23TopQuadrant%3E> > example:startDate “2001-12-01″^^xsd:date . > > > > rdf4j, Doumentation, RDF-Star and SPARQL-Star > https://rdf4j.org/documentation/programming/rdfstar/ > > <<ex:bob foaf:age 23>> ex:certainty 0.9 . > >
Received on Tuesday, 24 January 2023 00:40:12 UTC