Re: "Microsoft Access" for RDF?

I think you're particular concerned about the ordering of triples where ?s
and ?p are the same?

?s ?p ?o1 , ?o2, ?o3, ?o4 .

right?

Sometimes people don't care,  sometimes they do.

One scenario is we are drawing a page about the creative works of Issac
Asimov,  the Kinks,  or Jeff Bridges and want to see titles that everybody
recognizes at the top of the list.  In some of these cases there is a
subjective element in that there is no global total ordering or even a
partial ordering (see Arrow's Theorem),  but it's fair to say more people
know the song "Lola" than "Ducks on the Wall".

With RDF* you can put on edge weights which will support cases like that.

Another approach is to further specify the data model so you get behavior
like hashtables in PHP -- PHP hashtables support random access look up but
if you iterate over them things come out in the order you put them in.

Another case is where there really is a total ordering.  For instance,  the
authors of a scientific paper might get excited if you list them in the
wrong order.  One weird old trick for this is RDF containers,  which are
specified in the XMP dialect of Dublin Core


where you write something like

[
   dcterms:creator ("Ralph Alpher","Hans Bethe","George Gamow") .
]

In their version you are using text and not some authority record but if
you just want to annotate the average business document it works.

So yeah,  I agree that ordering is a big issue in RDF;  you are coming from
it as a requirement for the editor,  I see it as important if we want to
use RDF technology as a "universal solvent" for dealing with all the JSON,
 XML and equivalently expressive documents and messages which support
ordered collection.  It's definitely a tooling issue but it does involve
looking at hard issues in the underlying data model.



On Thu, Feb 19, 2015 at 10:32 AM, Michael Brunnbauer <brunni@netestate.de>
wrote:

>
> Hello Paul,
>
> let me put this into two simple statements:
>
> 1) There is no canonical ordering of triples
>
> 2) A good triple editor should reflect this by letting the user determine
> the order
>
> Regards,
>
> Michael Brunnbauer
>
> On Thu, Feb 19, 2015 at 03:50:33PM +0100, Michael Brunnbauer wrote:
> >
> > Hello Paul,
> >
> > I am not so sure if this is good enough. If you add something to the end
> of a
> > list in a UI, you normally expect it to stay there. If you accept that it
> > will be put in its proper position later, you may - as user - still have
> > trouble figuring out where that position is (even with the heuristics
> you gave).
> >
> > The problem repeats with the triple object if the properties have been
> ordered.
> > As user, you might feel even more compelled to introduce a deviant
> ordering on
> > this level.
> >
> > Regards,
> >
> > Michael Brunnbauer
> >
> > On Thu, Feb 19, 2015 at 09:07:37AM -0500, Paul Houle wrote:
> > > There are quite a few simple heuristics that will give "good enough"
> > > results,  consider for instance:
> > >
> > > (1) order predicates by alphabetical order (by rdfs:label or by
> localname
> > > or the whole URL)
> > > (2) order predicates by some numerical property given by a custom
> predicate
> > > in the schema
> > > (3) order predicates by the type of the domain alphabetically, and then
> > > order by the name of the predicates
> > > (4) work out the partial ordering of types by inheritance so "Person"
> winds
> > > up at the top and "Actor" shows up below that
> > >
> > > Freebase does something like (4) and that is "good enough".
> > >
> > > On Thu, Feb 19, 2015 at 8:01 AM, Kingsley Idehen <
> kidehen@openlinksw.com>
> > > wrote:
> > >
> > > > On 2/19/15 4:52 AM, Michael Brunnbauer wrote:
> > > >
> > > >> Hello Paul,
> > > >>
> > > >> an interesting aspect of such a system is the ordering of triples -
> even
> > > >> if you restrict editing to one subject. Either the order is
> predefined
> > > >> and the
> > > >> user will have to search for his new triple after doing an insert
> or the
> > > >> user
> > > >> determines the position of his new triple.
> > > >>
> > > >> In the latter case, the app developer will want to use something
> like
> > > >> reification - at least internally. This is the point when the app
> > > >> developer
> > > >> and the Semantic Web expert start to disagree ;-)
> > > >>
> > > >
> > > > Not really, in regards to "Semantic Web expert starting to disagree"
> per
> > > > se. You can order by Predicate or use Reification.
> > > >
> > > > When designing our RDF Editor, we took the route of breaking things
> down
> > > > as follows:
> > > >
> > > > Book (Named Graph Collection e.g. in a Quad Store or service that
> > > > understands LDP Containers etc..)  --> (contains) --> Pages (Named
> Graphs)
> > > > -- Paragraphs (RDF Sentence/Statement Collections).
> > > >
> > > > The Sentence/Statement Collections are the key item, you are honing
> into,
> > > > and yes, it boils down to:
> > > >
> > > > 1. Grouping sentences/statements by predicate per named graph to
> create a
> > > > paragraph
> > > > 2. Grouping sentences by way of reification where each sentence is
> > > > identified and described per named graph.
> > > >
> > > > Rather that pit one approach against the other, we simply adopted
> both, as
> > > > options.
> > > >
> > > > Anyway, you raise a very important point that's generally overlooked.
> > > > Ignoring this fundamental point is a shortcut to hell for any editor
> that's
> > > > to be used in a multi-user setup, as you clearly understand :)
> > > >
> > > >
> > > > Kingsley
> > > >
> > > >
> > > >> Maybe they can compromise on a system with a separate named graph
> per
> > > >> triple
> > > >> (BTW what is the status of blank nodes shared between named
> graphs?).
> > > >>
> > > >> Regards,
> > > >>
> > > >> Michael Brunnbauer
> > > >>
> > > >> On Wed, Feb 18, 2015 at 03:08:33PM -0500, Paul Houle wrote:
> > > >>
> > > >>> I am looking at some cases where I have databases that are similar
> to
> > > >>> Dbpedia and Freebase in character,  sometimes that big (ok,  those
> > > >>> particular databases),   sometimes smaller.  Right now there are
> no blank
> > > >>> nodes,  perhaps there are things like the "compound value types"
> from
> > > >>> Freebase which are sorta like blank nodes but they have names,
> > > >>>
> > > >>> Sometimes I want to manually edit a few records.  Perhaps I want to
> > > >>> delete
> > > >>> a triple or add a few triples (possibly introducing a new subject.)
> > > >>>
> > > >>> It seems to me there could be some kind of system which points at a
> > > >>> SPARQL
> > > >>> protocol endpoint (so I can keep my data in my favorite triple
> store) and
> > > >>> given an RDFS or OWL schema,  automatically generates the forms so
> I can
> > > >>> easily edit the data.
> > > >>>
> > > >>> Is there something out there?
> > > >>>
> > > >>> --
> > > >>> Paul Houle
> > > >>> Expert on Freebase, DBpedia, Hadoop and RDF
> > > >>> (607) 539 6254    paul.houle on Skype   ontology2@gmail.com
> > > >>> http://legalentityidentifier.info/lei/lookup
> > > >>>
> > > >>
> > > >
> > > > --
> > > > Regards,
> > > >
> > > > Kingsley Idehen
> > > > Founder & CEO
> > > > OpenLink Software
> > > > Company Web: http://www.openlinksw.com
> > > > Personal Weblog 1: http://kidehen.blogspot.com
> > > > Personal Weblog 2: http://www.openlinksw.com/blog/~kidehen
> > > > Twitter Profile: https://twitter.com/kidehen
> > > > Google+ Profile: https://plus.google.com/+KingsleyIdehen/about
> > > > LinkedIn Profile: http://www.linkedin.com/in/kidehen
> > > > Personal WebID:
> http://kingsley.idehen.net/dataspace/person/kidehen#this
> > > >
> > > >
> > > >
> > >
> > >
> > > --
> > > Paul Houle
> > > Expert on Freebase, DBpedia, Hadoop and RDF
> > > (607) 539 6254    paul.houle on Skype   ontology2@gmail.com
> > > http://legalentityidentifier.info/lei/lookup
> >
> > --
> > ++  Michael Brunnbauer
> > ++  netEstate GmbH
> > ++  Geisenhausener Straße 11a
> > ++  81379 München
> > ++  Tel +49 89 32 19 77 80
> > ++  Fax +49 89 32 19 77 89
> > ++  E-Mail brunni@netestate.de
> > ++  http://www.netestate.de/
> > ++
> > ++  Sitz: München, HRB Nr.142452 (Handelsregister B München)
> > ++  USt-IdNr. DE221033342
> > ++  Geschäftsführer: Michael Brunnbauer, Franz Brunnbauer
> > ++  Prokurist: Dipl. Kfm. (Univ.) Markus Hendel
>
>
>
> --
> ++  Michael Brunnbauer
> ++  netEstate GmbH
> ++  Geisenhausener Straße 11a
> ++  81379 München
> ++  Tel +49 89 32 19 77 80
> ++  Fax +49 89 32 19 77 89
> ++  E-Mail brunni@netestate.de
> ++  http://www.netestate.de/
> ++
> ++  Sitz: München, HRB Nr.142452 (Handelsregister B München)
> ++  USt-IdNr. DE221033342
> ++  Geschäftsführer: Michael Brunnbauer, Franz Brunnbauer
> ++  Prokurist: Dipl. Kfm. (Univ.) Markus Hendel
>



-- 
Paul Houle
Expert on Freebase, DBpedia, Hadoop and RDF
(607) 539 6254    paul.houle on Skype   ontology2@gmail.com
http://legalentityidentifier.info/lei/lookup

Received on Thursday, 19 February 2015 17:28:13 UTC