Skip to content

Instantly share code, notes, and snippets.

@dwhitney
Created May 1, 2019 13:24
Show Gist options
  • Save dwhitney/2df9978238ee116a2c999bc5e16761f1 to your computer and use it in GitHub Desktop.
Save dwhitney/2df9978238ee116a2c999bc5e16761f1 to your computer and use it in GitHub Desktop.
100ms to parse in SPARQL.js!
PREFIX class: <http://graphado.com/ns/classes/>
PREFIX company: <http://graphado.com/ns/classes/Company#>
PREFIX summary: <http://graphado.com/ns/classes/CompanySummary#>
PREFIX dg: <http://graphado.com/ns/classes/DependentGraph#>
PREFIX cl: <http://graphado.com/ns/classes/CompanyList#>
PREFIX dbp: <http://dbpedia.org/property/>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX sd: <http://www.w3.org/ns/sparql-service-description#>
PREFIX sh: <http://www.w3.org/ns/shacl#>
PREFIX : <http://graphado.com/ns/local#>
CONSTRUCT {
:this a class:IEXDirectory ;
a owl:Class ;
company:main ?main .
?main a class:Company ;
a owl:Class ;
rdfs:label ?label ;
dbp:symbol ?symbol ;
company:balance-sheet-annual ?balanceSheetAnnual ;
company:balance-sheet-annual-latest ?balanceSheetAnnualLatest ;
company:balance-sheet-quarter ?balanceSheetQuarter ;
company:balance-sheet-quarter-latest ?balanceSheetQuarterLatest ;
company:cash-flow-statement-quarter ?cashFlowStatementQuarter ;
company:cash-flow-statement-quarter-latest ?cashFlowStatementLatest ;
company:cash-flow-statement-annual ?cashFlowStatementAnnual ;
company:cash-flow-statement-annual-latest ?cashFlowStatementAnnualLatest ;
company:ceo-compensation ?ceoCompensation ;
company:company ?company ;
company:chart-high ?chartHigh ;
company:chart-low ?chartLow ;
company:chart-volume ?chartVolume ;
company:chart-changeOverTime ?chartChangeOverTime ;
company:chart-open ?chartOpen ;
company:chart-close ?chartClose ;
company:chart-change ?chartChange ;
company:chart-changePercent ?chartChangePercent ;
company:dividends ?dividends ;
company:dividends-latest ?dividendsLatest ;
company:earnings ?earnings ;
company:earnings-latest ?earningsLatest ;
company:estimates ?estimates ;
company:estimates-latest ?estimatesLatest ;
company:income-statement-quarter ?incomeStatementQuarter ;
company:income-statement-quarter-latest ?incomeStatementQuarterLatest ;
company:income-statement-annual ?incomeStatementAnnual ;
company:income-statement-annual-latest ?incomeStatementAnnualLatest ;
company:insider-roster ?insiderRoster ;
company:insider-summary ?insiderSummary ;
company:insider-transactions ?insiderTransactions ;
company:institutional-ownership ?institutionalOwnership ;
company:logo ?logo ;
company:news ?news ;
company:peers ?peers ;
company:quote ?quote ;
company:recommendation-trends ?recommendationTrends ;
company:stats ?stats .
?balanceSheetAnnual a sd:Service .
?balanceSheetAnnualLatest a sd:Service .
?balanceSheetQuarter a sd:Service .
?balanceSheetQuarterLatest a sd:Service .
?cashFlowStatementAnnual a sd:Service .
?cashFlowStatementAnnualLatest a sd:Service .
?cashFlowStatementQuarter a sd:Service .
?cashFlowStatementLatest a sd:Service .
?ceoCompensation a sd:Service .
?chartChange a sd:Service .
?chartChangeOverTime a sd:Service .
?chartChangePercent a sd:Service .
?chartClose a sd:Service .
?chartHigh a sd:Service .
?chartLow a sd:Service .
?chartOpen a sd:Service .
?chartVolume a sd:Service .
?company a sd:Service .
?dividends a sd:Service .
?dividendsLatest a sd:Service .
?earnings a sd:Service .
?earningsLatest a sd:Service .
?estimates a sd:Service .
?estimatesLatest a sd:Service .
?incomeStatementAnnual a sd:Service .
?incomeStatementAnnualLatest a sd:Service .
?incomeStatementQuarter a sd:Service .
?incomeStatementQuarterLatest a sd:Service .
?insiderRoster a sd:Service .
?insiderSummary a sd:Service .
?insiderTransactions a sd:Service .
?institutionalOwnership a sd:Service .
?logo a sd:Service .
?news a sd:Service .
?peers a sd:Service .
?quote a sd:Service .
?recommendationTrends a sd:Service .
?stats a sd:Service .
} WHERE {
?list summary:main ?main .
?main rdfs:label ?label .
?main dbp:symbol ?symbol .
BIND("https://s3.amazonaws.com/blahblahblah/iex/beta/" as ?prefix)
BIND(CONCAT(?symbol, ".ttl") as ?postfix)
BIND(IRI(CONCAT(?prefix, CONCAT("balance-sheet/annual/", ?postfix))) as ?balanceSheetAnnual)
BIND(IRI(CONCAT(?prefix, CONCAT("balance-sheet/annual/latest/", ?postfix))) as ?balanceSheetAnnualLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("balance-sheet/quarter/", ?postfix))) as ?balanceSheetQuarter)
BIND(IRI(CONCAT(?prefix, CONCAT("balance-sheet/quarter/latest/", ?postfix))) as ?balanceSheetQuarterLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("cash-flow-statement/annual/", ?postfix))) as ?cashFlowStatementAnnual)
BIND(IRI(CONCAT(?prefix, CONCAT("cash-flow-statement/annual/latest/", ?postfix))) as ?cashFlowStatementAnnualLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("cash-flow-statement/quarter/", ?postfix))) as ?cashFlowStatementQuarter)
BIND(IRI(CONCAT(?prefix, CONCAT("cash-flow-statement/quarter/latest/", ?postfix))) as ?cashFlowStatementLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("ceo-compensation/", ?postfix))) as ?ceoCompensation)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/change/", ?postfix))) as ?chartChange)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/changeOverTime/", ?postfix))) as ?chartChangeOverTime)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/changePercent/", ?postfix))) as ?chartChangePercent)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/close/", ?postfix))) as ?chartClose)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/high/", ?postfix))) as ?chartHigh)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/low/", ?postfix))) as ?chartLow)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/open/", ?postfix))) as ?chartOpen)
BIND(IRI(CONCAT(?prefix, CONCAT("chart/volume/", ?postfix))) as ?chartVolume)
BIND(IRI(CONCAT(?prefix, CONCAT("company/", ?postfix))) as ?company)
BIND(IRI(CONCAT(?prefix, CONCAT("dividends/", ?postfix))) as ?dividends)
BIND(IRI(CONCAT(?prefix, CONCAT("dividends/latest/", ?postfix))) as ?dividendsLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("earnings/", ?postfix))) as ?earnings)
BIND(IRI(CONCAT(?prefix, CONCAT("earnings/latest/", ?postfix))) as ?earningsLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("estimates/", ?postfix))) as ?estimates)
BIND(IRI(CONCAT(?prefix, CONCAT("estimates/latest/", ?postfix))) as ?estimatesLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("income-statement/annual/", ?postfix))) as ?incomeStatementAnnual)
BIND(IRI(CONCAT(?prefix, CONCAT("income-statement/annual/latest/", ?postfix))) as ?incomeStatementAnnualLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("income-statement/quarter/", ?postfix))) as ?incomeStatementQuarter)
BIND(IRI(CONCAT(?prefix, CONCAT("income-statement/quarter/latest/", ?postfix))) as ?incomeStatementQuarterLatest)
BIND(IRI(CONCAT(?prefix, CONCAT("insider-roster/", ?postfix))) as ?insiderRoster)
BIND(IRI(CONCAT(?prefix, CONCAT("insider-summary/", ?postfix))) as ?insiderSummary)
BIND(IRI(CONCAT(?prefix, CONCAT("insider-transactions/", ?postfix))) as ?insiderTransactions)
BIND(IRI(CONCAT(?prefix, CONCAT("institutional-ownership/", ?postfix))) as ?institutionalOwnership)
BIND(IRI(CONCAT(?prefix, CONCAT("logo/", ?postfix))) as ?logo)
BIND(IRI(CONCAT(?prefix, CONCAT("news/", ?postfix))) as ?news)
BIND(IRI(CONCAT(?prefix, CONCAT("peers/", ?postfix))) as ?peers)
BIND(IRI(CONCAT(?prefix, CONCAT("quote/", ?postfix))) as ?quote)
BIND(IRI(CONCAT(?prefix, CONCAT("recommendation-trends/", ?postfix))) as ?recommendationTrends)
BIND(IRI(CONCAT(?prefix, CONCAT("stats/", ?postfix))) as ?stats)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment