- add package
- receive uploaded xar(s)
- store upload(s) in "temp" folder
- for each new package:
- extract package metadata
- validate package metadata
xquery version "3.1"; | |
(: For a given Principal Officer position, calculate the age of the official at the time of | |
: appointment; sort the results by age. For officials missing birth or appointment dates, | |
: return the age as 0 to identify these as outliers with incomplete information. | |
:) | |
array { | |
let $principal-id := "assistant-secretary-legislative-affairs" | |
let $principal-doc := doc("/db/apps/pocom/positions-principals/" || $principal-id || ".xml") |
xquery version "3.1"; | |
(: Generate a TSV of Travels of President and Secretary of State. | |
: Assumes https://github.com/HistoryAtState/travels has been installed. | |
:) | |
(:~ | |
: A function for constructing a TSV (tab-separated value) file | |
: | |
: @param A sequence of column headings |
xquery version "3.1"; | |
(: Standard namespaces from https://www.w3.org/TR/xpath-functions-31/#namespace-prefixes :) | |
declare namespace array="http://www.w3.org/2005/xpath-functions/array"; | |
declare namespace err="http://www.w3.org/2005/xqt-errors"; | |
declare namespace fn="http://www.w3.org/2005/xpath-functions"; | |
declare namespace map="http://www.w3.org/2005/xpath-functions/map"; | |
declare namespace math="http://www.w3.org/2005/xpath-functions/math"; | |
declare namespace output="http://www.w3.org/2010/xslt-xquery-serialization"; | |
declare namespace xs="http://www.w3.org/2001/XMLSchema"; |
xquery version "3.0"; | |
(: discovered via https://twitter.com/_james_fuller/status/1087706435176288257, updated with HTTP URL for data.xq :) | |
(: the power of algebraic data types in xquery | |
This example shows how we can composite up data models | |
which 'carry' their own operations along with them. | |
:) |
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" | |
"http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
<plist version="1.0"> | |
<array> | |
<dict> | |
<key>ApplicationIdentifier</key> | |
<string>ro.sync.exml.DiffDirs</string> | |
<key>ApplicationName</key> | |
<string>Diff Directories</string> |
xquery version "3.1"; | |
(:~ | |
Calculate Levenshtein Distance, using XQuery | |
@author Guillaume Mella | |
@see http://apps.jmmc.fr/~mellag/xquery/levenshtein/2018/01/19/xquery-levenshtein-distance/ | |
:) | |
declare function local:levenshtein-distance($string1 as xs:string?, $string2 as xs:string?) | |
as xs:integer |
xquery version "3.1"; | |
declare namespace output="http://www.w3.org/2010/xslt-xquery-serialization"; | |
declare option output:method "adaptive"; | |
declare option output:indent "yes"; | |
map { "reference": xs:anyURI("https://www.w3.org/TR/xslt-xquery-serialization-31/#adaptive-output") } |
xquery version "3.1"; | |
(: | |
Various Date String Parser | |
- Parses various flavors of date strings, returns as xs:dateTime or xs:date | |
- Key functions: dates:parseDateTime() and dates:parseDate() | |
- Adapted by Joe Wicentowski from | |
https://github.com/marklogic-community/commons/blob/master/dates/date-parser.xqy | |
- Adapted to standard XQuery (instead of the MarkLogic 0.9-ml flavor) | |
- TODO: test against https://github.com/marklogic-community/commons/blob/master/dates/date-parser-tests.xqy |
xquery version "3.1"; | |
(: Generate a TSV of Travels of President and Secretary of State. | |
: Assumes https://github.com/HistoryAtState/travels has been installed. | |
:) | |
(:~ | |
: A function for constructing a TSV (tab-separated value) file | |
: | |
: @param A sequence of column headings |