X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Fsparql.xml;h=9daac588298ac4f40d8b2a749692f8b9ea6d4536;hb=6ef7b5922db33bb0294caf39a18359a97ea9cac8;hp=285945837738ee749c68abf5bdb702a4a7744da2;hpb=0e7a5eeb3ab16f7a94d2ae3a331c6dd8421f8424;p=mp-sparql-moved-to-github.git diff --git a/doc/sparql.xml b/doc/sparql.xml index 2859458..9daac58 100644 --- a/doc/sparql.xml +++ b/doc/sparql.xml @@ -47,7 +47,7 @@ <form/> - SPARQL Query formulation selection. SHould start with one of the + SPARQL Query formulation selection. Should start with one of the query forms: SELECT or CONSTRUCT. @@ -70,13 +70,24 @@ Section used to declare RPN use attribute strings (indexes) and map them to BIBFRAME graph patterns. Items in this section are expanded during RPN query processing and - placeholders (%s, %d) are substituted with query terms. + placeholders (%s, %d, + %t) are substituted with query terms. To map a given CQL index (e.g the default keyword index) into multiple entity properties, SPARQL constructs like `OPTIONAL` or `UNION` could be used. + <present type="attribute"/> + + + Section used to declare retrieval for a given element-set + (SRU schema). The CDATA is SPARQL where %u holds + the URI of the record. This can be used to construct the resulting + record. + + + <modifier/> @@ -101,13 +112,12 @@ EXAMPLE Configuration for database "Default" that allows searching works. Only - the field (use attribute) "bf.wtitle" is supported. + the field (use attribute) "bf.wtitle" is supported. - rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/
SELECT ?work ?wtitle
?work a bf:Work @@ -129,7 +139,6 @@ the same filter section as the "Default" db above. - rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/
SELECT ?work @@ -167,16 +176,16 @@ This returns one row for each work. Titles, authors, and subjects are all optional. If they repeat, the repeated values are concatenated into - a single field, separated by semicolons. This is done by the GROUP_DIGEST - function that is specific to the Virtuoso back end. + a single field, separated by semicolons. This is done by the GROUP_DIGEST + function that is specific to the Virtuoso back end. - This example supports use attributes 4 (title), 1003 (author), 21 (subject), - and 1016 (keyword) which matches any literal in a triplet that refers to the - work, so it works for the titleValue in the workTitle, as well as the label - in the subject, and what ever else there may be. Like the preceding example, - the matching is by a simple substring, case sensitive. A more realistic term - matching could be done with regular expressions, at the cost of some readability + This example supports use attributes 4 (title), 1003 (author), 21 (subject), + and 1016 (keyword) which matches any literal in a triplet that refers to the + work, so it works for the titleValue in the workTitle, as well as the label + in the subject, and what ever else there may be. Like the preceding example, + the matching is by a simple substring, case sensitive. A more realistic term + matching could be done with regular expressions, at the cost of some readability portability, and performance. @@ -186,12 +195,11 @@ Configuration for database "works". This uses CONSTRUCT to produce rdf. - rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/ - CONSTRUCT { - ?work bf:title ?wtitle . + CONSTRUCT { + ?work bf:title ?wtitle . ?work bf:instanceTitle ?title . - ?work bf:author ?creator . + ?work bf:author ?creator . ?work bf:subject ?subjectlabel } ?work a bf:Work @@ -215,11 +223,10 @@ Configuration for database "instance". Like "work" above this uses SELECT to return row-based data, this time from the instances. This is not deduplicated, - so if an instance has two titles, we get two rows, and if it also has - two formats, we get four rows. The DISTINCT in the SELECT + so if an instance has two titles, we get two rows, and if it also has + two formats, we get four rows. The DISTINCT in the SELECT - rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/
SELECT DISTINCT ?instance ?title ?format
?instance a bf:Instance @@ -232,9 +239,9 @@
- +
- + SEE ALSO