WOLFRAM

Enable JavaScript to interact with content and submit forms on Wolfram websites. Learn how
Wolfram Language & System Documentation Center

SPARQLPropertyPath[start, {p1,p2,}, end]

is a pattern object that represents a path in a RDF graph that starts at subject start, visits edges with predicates pi and ends at object end.

Details and Options
Details and Options Details and Options
Examples  
Basic Examples  
Scope  
See Also
Related Guides
Cite this Page

SPARQLPropertyPath[start, {p1,p2,}, end]

is a pattern object that represents a path in a RDF graph that starts at subject start, visits edges with predicates pi and ends at object end.

Details and Options

  • Each pi can be a predicate URL or a pattern.
  • The arguments start and end can be a URL or a SPARQLVariable and end can also be a literal like a number or string.
  • SPARQLPropertyPath[start,{p1,p2,},end] matches a path {RDFTriple [a,f1,b],RDFTriple [b,f2,c],,RDFTriple [y,f2,z]} if MatchQ [{f1,f2,},{p1,p2,}] returns True and start is either a SPARQLVariable or a and end is either a SPARQLVariable or z.
  • The pi can be any combination of the following forms:
  • URL [] a predicate path
    SPARQLInverseProperty [] an inverse path
    Sequence [] a sequence path
    Alternatives [] (|) an alternative path
    RepeatedNull [] (...) a zero or more path
    Repeated [] (..) a one or more path
    Repeated [,{0,1}] a zero or one path
    Except [] a negated property set (only for predicates, inverse predicates and alternatives thereof)

Examples

open all close all

Basic Examples  (1)

Wolfram Language code: Needs["GraphStore`"]

Specify family relations:

Wolfram Language code: ex[s_] := URL["http://example.org/" <> s];
Wolfram Language code: familyGraph = RDFStore[{ RDFTriple[ex["scarlett"], ex["hasFather"], ex["john"]], RDFTriple[ex["scarlett"], ex["hasMother"], ex["lily"]], RDFTriple[ex["scarlett"], ex["hasHobby"], ex["swimming"]], RDFTriple[ex["john"], ex["hasFather"], ex["james"]], RDFTriple[ex["john"], ex["hasMother"], ex["nora"]], RDFTriple[ex["john"], ex["hasHobby"], ex["volleyball"]], RDFTriple[ex["lily"], ex["hasFather"], ex["alex"]], RDFTriple[ex["lily"], ex["hasMother"], ex["stella"]] }];

Find the grandparents of Scarlett:

Wolfram Language code: familyGraph//SPARQLSelect[ SPARQLPropertyPath[ex["scarlett"], {ex["hasFather"] | ex["hasMother"], ex["hasFather"] | ex["hasMother"]}, SPARQLVariable["grandParent"]] ]

The same query using triple patterns and UNIONs:

Wolfram Language code: familyGraph//SPARQLSelect[{ RDFTriple[ex["scarlett"], ex["hasFather"], SPARQLVariable["parent"]] | RDFTriple[ex["scarlett"], ex["hasMother"], SPARQLVariable["parent"]], RDFTriple[SPARQLVariable["parent"], ex["hasFather"], SPARQLVariable["grandParent"]] | RDFTriple[SPARQLVariable["parent"], ex["hasMother"], SPARQLVariable["grandParent"]] } -> "grandParent"]

Scope  (1)

Wolfram Language code: Needs["GraphStore`"]

Specify relationships between people and how the used properties are related:

Wolfram Language code: rdfs[s_] := URL["http://www.w3.org/2000/01/rdf-schema#"]; ex[s_] := URL["http://example.org/" <> s];
Wolfram Language code: friendsGraph = RDFStore[{ (* vocabulary *) RDFTriple[ex["hasGoodFriend"], rdfs["subPropertyOf"], ex["hasFriend"]], (* data *) RDFTriple[ex["bob"], ex["hasFriend"], ex["alice"]], RDFTriple[ex["bob"], ex["hasGoodFriend"], ex["frank"]], RDFTriple[ex["alice"], ex["hasFriend"], ex["carl"]] }];

Find all friends and good friends of Bob:

Wolfram Language code: friendsGraph//SPARQLSelect[{ RDFTriple[ex["bob"], SPARQLVariable["friendProp"] , SPARQLVariable["friend"]], SPARQLPropertyPath[SPARQLVariable["friendProp"], {rdfs["subPropertyOf"]...}, ex["hasFriend"]] }]
Wolfram Research (2019), SPARQLPropertyPath, Wolfram Language function, https://reference.wolfram.com/language/GraphStore/ref/SPARQLPropertyPath.html.

Text

Wolfram Research (2019), SPARQLPropertyPath, Wolfram Language function, https://reference.wolfram.com/language/GraphStore/ref/SPARQLPropertyPath.html.

CMS

Wolfram Language. 2019. "SPARQLPropertyPath." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/GraphStore/ref/SPARQLPropertyPath.html.

APA

Wolfram Language. (2019). SPARQLPropertyPath. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/GraphStore/ref/SPARQLPropertyPath.html

BibTeX

@misc{reference.wolfram_2026_sparqlpropertypath, author="Wolfram Research", title="{SPARQLPropertyPath}", year="2019", howpublished="\url{https://reference.wolfram.com/language/GraphStore/ref/SPARQLPropertyPath.html}", note=[Accessed: 21-August-2026]}

BibLaTeX

@online{reference.wolfram_2026_sparqlpropertypath, organization={Wolfram Research}, title={SPARQLPropertyPath}, year={2019}, url={https://reference.wolfram.com/language/GraphStore/ref/SPARQLPropertyPath.html}, note=[Accessed: 21-August-2026]}

Top [フレーム]

AltStyle によって変換されたページ (->オリジナル) /