19. about = An id =
“e127475b-eb93-48e1-a24f-dde6825b9ed8”
“book:Dune” object
20. r=
ove
/c
ks
oo
ntoll/
b
ve/
te
es
rating
am
azo
n.c
“87 om/b
-41 ook
=
8-7
517 s/isbn
5
- 6” =
about = An id =
“e127475b-eb93-48e1-a24f-dde6825b9ed8”
“book:Dune” object
= am
az
iew on
timoreill
v
/re s”
r=
s .c
om
ok rm
er tho
/bo wo “D /bo
nes and un ok
erb s/au
ojo ve s e” s/t
t”
y/has_re
ryc I lo itle
k H ok
ter “ =
ran /bo
“F om
ad
n.c
azo
am
21. r=
ove
/c
ks
oo
ntoll/
b
ve/
te
es
rating
am
azo
n.c
“87 om/b
-41 ook
=
8-7
517 s/isbn
5
- 6” =
about = An id =
“e127475b-eb93-48e1-a24f-dde6825b9ed8”
“book:Dune” object
= am
az
iew on
timoreill
v
/re s”
r=
s .c
om
ok rm
er tho
/bo wo “D /bo
nes and un ok boolean
erb s/au
ojo ve s e” s/t
t”
y/has_re
ryc I lo itle
k H ok
ter “ = string (& set)
ran /bo
“F om
numeric
ad
n.c
opaque
azo
am
null
23. r=
Traditional: oo
ks
/c
ove
ntoll/
b
ve/
te
es
rating
am
azo
n.c
“87 om/b
-41 ook
=
8-7
517 s/isbn
5
- 6” =
about = id =
“e127475b-eb93-48e1-a24f-dde6825b9ed8”
“book:Dune”
= am
az
iew on
timoreill
v
/re s”
r=
s .c
om
ok rm
er tho
/bo wo “D /bo
nes and un ok
erb s/au
ojo ve s e” s/t
t”
y/has_re
ryc I lo itle
k H ok
ter “ =
ran /bo
“F om
ad
n.c
azo
am
24. r=
FluidDB: ks
/c
ove
ntoll/
b oo
ve/
te
rating
am es
azo
n.c
“87 om/b
=
-41 ook
8-7
517 s/isbn
5
- 6” =
about = An id =
“e127475b-eb93-48e1-a24f-dde6825b9ed8”
“book:Dune” object
= am
az
view on
/re s” .c
r=
timoreill
s om
ok rm
er tho
/bo wo “D /bo
nes and un ok
erb s/au
ojo ve s e” s/t
t”
ryc I lo itle
k H ok
y/has_re
ter “ =
ran /bo
“F om
n.c
ad
azo
am
27. Permissions
• Apply to namespaces, tags and tag-values not objects
• Scoped by actions (e.g. “see”, “create”, “read”)
• Either “open” or “closed” with a list of exceptions
28. FluidDB’s Query Language
• Equality & Inequality: To find objects based on the numeric values or
exact textual values, e.g., tim/rating > 5, or geo/name = "Llandefalle".
• Textual: To find objects based on text matching their tag values, for
example, sally/opinion matches “fantastic”.
• Presence: Use has to request objects that have a given tag. For example,
has sally/opinion.
• Set contents: The contains operator can be used to select objects with a
matching value in a set of strings. The query mary/product-reviews/keywords
contains "kids" would match the object with a tag called /mary/product-
reviews/keywords and value ["cool", "kids", "adventure" ].
• Exclusion: Exclude objects with the except keyword. For example has
nytimes.com/appeared except has james/seen. The except operator
performs a set difference.
• Logic: Query components can be combined with and and or. For example,
has sara/rating and tim/rating > 5.
• Grouping: Parentheses can be used to group query components. For
example, has sara/rating and (tim/rating > 5 or mike/rating > 7).
39. Familiar Models
from django_fluiddb import models
class Foo(models.Model):
bar = models.CharField(‘test/namespace/bar_tag’)
baz = models.IntegerField(‘test/namespace/baz_tag’)