losd is (currently) a very simple python package for querying the LOSD (linked open social data) dataset
Project description
losd
a very simple python package for SPARQL querying the LOSD (linked open social data) dataset.
install with
$ pip install losd
or
$ python setup.py losd
For greater control of customization, hacking and debugging, clone the repository and install with pip using -e:
$ git clone https://github.com/ttm/losd.git
$ pip3 install -e <path_to_repo>
usage
Queries have the heading:
PREFIX po: <http://purl.org/socialparticipation/po/>
Examples of usage:
import losd as l
pl = l.plainQueryValues
q = l.query
# get all snapshots:
query = '''
SELECT ?s WHERE {
?s a po:Snapshot
}
'''
res = pl(q(query))
##########
# from here on, check to assure that the uris correspond to
# the snapshot (types) intended
# get all friendship relations in a facebook snapshot:
uri = res[99]
query = '''
SELECT ?a1 ?a2 WHERE {
?f a po:Friendship . ?f po:snapshot <%s> .
?f po:member ?a1, ?a2 .
FILTER(?a1 != ?a2)
}
''' % (uri,)
res2 = pl(q(query))
# get all retweet interactions in a Twitter snapshot:
uri = res[-1]
query = '''
SELECT ?a1 ?a2 WHERE {
?m1 po:retweetOf ?m2 . ?m1 po:author ?a1 . ?m2 po:author ?a2 .
?m1 po:snapshot <%s>
}
''' % (uri,)
res3 = pl(q(query))
# get all interactions in a email snapshot:
uri = res[48]
query = '''
SELECT ?from ?to WHERE {
?message1 po:snapshot <%s> . ?message2 po:replyTo ?message1 .
?message1 po:author ?from . ?message2 po:author ?to .
}
''' % (uri,)
res4 = pl(q(query))
# get all interactions in a IRC snapshot, with texts:
uri = res[102]
query = '''
SELECT ?a1 ?a2 ?t WHERE {
?m a po:IRCMessage . ?m po:author ?a1 . ?m po:directedTo ?a2 .
?m po:cleanText ?t . ?m po:snapshot <%s>
}
''' % (uri,)
res5 = pl(q(query))
# get all interactions in the AA snapshot:
query = '''
SELECT ?a1 ?a2 WHERE {
?s po:author ?a1 . ?s po:checkParticipant ?a2 .
}
'''
res6 = pl(q(query))
# get all friendshipts in the Participa.BR snapshot:
uri = res[104]
query = '''
SELECT ?a1 ?a2 WHERE {
?f a po:Friendship . ?f po:snapshot <%s> .
?f po:member ?a1, ?a2 .
FILTER(?a1 != ?a2)
}
''' % (uri,)
res7 = pl(q(query))
# get all interactions in the Participa.BR snapshot:
uri = res[104]
query = '''
SELECT ?a1 ?a2 WHERE {
?a po:snapshot <%s> . ?a a po:Article .
?a po:author ?a1 . ?c po:article ?a . ?c po:author ?a2 .
}
''' % (uri,)
res8 = pl(q(query))
# get all interaction in the Cidade Democrática snapshot:
uri = res[45]
query = '''
SELECT ?a1 ?a2 WHERE {
?t po:snapshot <%s> . ?t a po:Topic . ?t po:author ?a1 .
?c a po:Comment . ?c po:topic ?t . ?c po:author ?a2 .
}
''' % (uri,)
res9 = pl(q(query))
interaction = [
res3,
res4,
res5,
res6,
res8,
res9
]
friendship = [
res2,
res7,
]
fr = []
for relations in friendship:
fr.append(l.mkRelationNetwork(relations))
inte = []
for interactions in interaction:
inte.append(l.mkInteractionNetwork(interactions))
# finished. Play with the networks in fr and inte
# maybe use networkx and pylab to plat them
# :::
deployment to pypi
This package іs delivered by running: $ python3 setup.py sdist $ twine upload dist/
Maybe use "python setup.py sdist upload -r pypi" ?
Further information
Further information should be found in the LOSD article repository:
Better usage
Please consider registration into Data.World to use LOSd in accordance with their policy and facilitating assistance by their staff. Take a look at their own python package.
Contact
Any issues, questions or ideas should be sent to:
renato (dot) fabbri [AT] gmail {DOT} com
:::
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file losd-0.2b0.tar.gz
.
File metadata
- Download URL: losd-0.2b0.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd43ea8a6ac56ea5b5bd6cfe2ba276e428440f4cd13281fbbc0fb52b027507a9 |
|
MD5 | 79566691c2ff787de374ea205017176e |
|
BLAKE2b-256 | 761e0798b319a37d22eff22ef9636956d4a3913cfc51481cc019eb5f0be3c6d3 |