No, they weren't in doc properties. I actually only learned about putting
the triples into the doc-props from you, Geert, after I started this
thread, but that was such a great idea. It solved all my problems with my
triples. I liked the idea of having my triples in my docs (since I am at
this point only using them as joins from one doc to another) but hated
having them just hanging out in the doc. Thank you for that.

Robert

On Mon, Nov 23, 2015 at 1:48 AM Geert Josten <[email protected]>
wrote:

> Maybe because they were in document properties? You search doc properties
> with cts:search(xdmp:document-properties(), …)
>
> Kind regards,
> Geert
>
> From: <[email protected]> on behalf of "Robert Del
> Toro Jr." <[email protected]>
> Reply-To: MarkLogic Developer Discussion <[email protected]>
> Date: Monday, November 23, 2015 at 12:00 AM
>
> To: MarkLogic Developer Discussion <[email protected]>
> Subject: Re: [MarkLogic Dev General] Managed vs Unmanaged Triples
>
> I finally found my hidden triples. I had to use:
>
> xdmp:collection-delete('
> http://marklogic.com/collections/dls/latest-version')'.
>
> I guess when I was playing with dls I lost some triples in there. I don't
> really understand it though because both:
>
> dls:document-purge('http://marklogic.com/collections/dls/latest-version',
> fn:false(), fn:false()) &
> cts:search(fn:doc(), dls:documents-query())
>
> returned nothing and yet the triples were still in the 'latest-version'
> collection.
>
> Robert
>
> On Thu, Nov 19, 2015 at 6:02 PM Robert Del Toro Jr. <
> [email protected]> wrote:
>
>> I actually tried 'xdmp:collection-delete(sem:default-graph-iri())'
>> yesterday and my triples are still there.
>>
>> Robert
>>
>> On Thu, Nov 19, 2015 at 12:07 AM Geert Josten <[email protected]>
>> wrote:
>>
>>> There are other ways to find your triple data. Managed triples are
>>> always stored as XML documents with sem:triples as root element. So you
>>> could use that. They are also by default stored in a particular collection
>>> called http://marklogic.com/semantics#default-graph. You could just do
>>> an xdmp:collection-delete on that..
>>>
>>> Kind regards,
>>> Geert
>>>
>>> From: <[email protected]> on behalf of "Robert
>>> Del Toro Jr." <[email protected]>
>>> Reply-To: MarkLogic Developer Discussion <
>>> [email protected]>
>>> Date: Thursday, November 19, 2015 at 7:47 AM
>>>
>>> To: MarkLogic Developer Discussion <[email protected]>
>>> Subject: Re: [MarkLogic Dev General] Managed vs Unmanaged Triples
>>>
>>> Thank you for your help, it's starting to make much more sense now. I
>>> never thought of putting the triples in the document properties. That
>>> worked well and now I don't have to remove therm when serving the document.
>>> However, I ran into a new problem. I did a SPARQL query and found my
>>> triples, which most were the ones I embedded in my document, but there was
>>> also a few others that I guess somehow ended up in the database. (This is
>>> all fairly new for me and I probably put them there at some point.) I'm
>>> assuming they are managed triples, I don't even know how to check. I tried
>>> to just delete them using:
>>>
>>> for $triple in $triples
>>> return (sem:database-nodes($triple) ! xdmp:node-delete(.))
>>>
>>> I verified that $triples did hold all the triples that I wanted deleted,
>>> but nothing happens when I run this. When I broke it down, I found that
>>> 'sem:database-nodes($triple)' returns null even though $triple seems to be
>>> a valid triple. Someone online suggested using sem:database-nodes($triple,
>>> 'all') but that did not change anything. My triples are just hung up in
>>> limbo somewhere. The MarkLogic docs are not much help, I really feel like
>>> I'm missing docs because I can't seem to make sense of it.
>>>
>>> Robert
>>>
>>> On Wed, Nov 18, 2015, 10:22 AM Geert Josten <[email protected]>
>>> wrote:
>>>
>>>> Managed means they are stored/updated in MarkLogic automatically for
>>>> you. Unmanaged means you have to handle that yourself. If you just insert
>>>> RDF data, you end up with managed triples automatically. Same if you use
>>>> SPARQL update. So that is just more practical in that sense. In other
>>>> words, it makes most sense if you use MarkLogic as a plain triple store, or
>>>> have no reason to embed triples in documents.
>>>>
>>>> To use documents and triples separately, just load the triples and the
>>>> documents separately, and maybe just have extra triples that have subject
>>>> or object value matching document uris to make links between the two 
>>>> worlds.
>>>>
>>>> Regarding ’triples’, that wrapper has no real meaning for MarkLogic,
>>>> but it can be useful to bundle triples. It is used in managed triples
>>>> documents as well, and can also be useful to put annotations on. You could
>>>> for instance add a start-date and a end-date property on triples, and use
>>>> that to get temporal triples.
>>>>
>>>> My best advice is to put triples in document properties. That means
>>>> serializing them to XML first, but that is just a minor detail for
>>>> MarkLogic. Even if you use DLS, you can still do direct updates on both
>>>> documents, and properties. DLS is just a library to help you with
>>>> versioning, it is not enforced rigidly. Though you probably want to provide
>>>> some abstraction to make sure people do their updates correctly..
>>>>
>>>> Hope that helps!
>>>>
>>>> Kind regards,
>>>> Geert
>>>>
>>>> From: <[email protected]> on behalf of "Robert
>>>> Del Toro Jr." <[email protected]>
>>>> Reply-To: MarkLogic Developer Discussion <
>>>> [email protected]>
>>>> Date: Wednesday, November 18, 2015 at 1:32 PM
>>>> To: MarkLogic Developer Discussion <[email protected]>
>>>> Subject: Re: [MarkLogic Dev General] Managed vs Unmanaged Triples
>>>>
>>>> "If you are only interested in running SPARQL, nor want to annotate
>>>> triples, using managed triples makes most sense."
>>>>
>>>> Why does it make the most sense? What is the advantage of doing it this
>>>> way?
>>>>
>>>> "If you are using document data as well, then you could still consider
>>>> not embedding them in the docs."
>>>>
>>>> How do I include document data without embedding the triple in a
>>>> document?
>>>>
>>>> "A second option could be to store the triples in document properties,
>>>> instead of the body.
>>>>
>>>> Consider using a triples property that has an array-node with triple
>>>> objects."
>>>>
>>>> I did notice before I went to bed last night that the example of
>>>> embedded triples in an xml doc on the MarkLogic documents was displayed
>>>> inside a 'triples' object.
>>>>
>>>> I guess I haven't really found a strong advantage to using managed
>>>> triples, which it seems like there should be (why do they call them managed
>>>> anyway?), but I'm still not sure that I like that I have to strip my
>>>> triples out of my document every time so the end user does not see them or
>>>> that I have to update the document just to update the triple (I wanted to
>>>> use Document Library Services to store changes to documents, but I did not
>>>> want to store a new version every time a triple was added, edited, or
>>>> deleted so the embedded triples seem like it will take more code to do
>>>> that).
>>>>
>>>> On Wed, Nov 18, 2015, 3:35 AM Geert Josten <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Robert,
>>>>>
>>>>> If you are only interested in running SPARQL, nor want to annotate
>>>>> triples, using managed triples makes most sense. If you are using document
>>>>> data as well, then you could still consider not embedding them in the 
>>>>> docs.
>>>>> A second option could be to store the triples in document properties,
>>>>> instead of the body.
>>>>>
>>>>> I don’t think there are performance implications. The triple index
>>>>> will be equally fast, and I have not heard that ingest speed of the 
>>>>> triples
>>>>> will be different because of this. I think it mostly comes down to what
>>>>> helps your application best, which solution to select.
>>>>>
>>>>> Regarding node-replace, that sounds like you are working with triple
>>>>> data embedded in json. Consider using a triples property that has an
>>>>> array-node with triple objects..
>>>>>
>>>>> Kind regards,
>>>>> Geert
>>>>>
>>>>> From: <[email protected]> on behalf of "Robert
>>>>> Del Toro Jr." <[email protected]>
>>>>> Reply-To: MarkLogic Developer Discussion <
>>>>> [email protected]>
>>>>> Date: Wednesday, November 18, 2015 at 7:21 AM
>>>>> To: "[email protected]" <[email protected]
>>>>> >
>>>>> Subject: [MarkLogic Dev General] Managed vs Unmanaged Triples
>>>>>
>>>>> Could someone please explain the pros and cons of using managed vs
>>>>> unmanaged triples? I understand that with managed triples, I can update or
>>>>> delete the triple without having to update the document, and with 
>>>>> unmanaged
>>>>> triples I can include extra information that I could then search with,
>>>>> however, when trying to use triples stored in my documents I seem to run
>>>>> into complications. For instance, when I try to read my document from an
>>>>> API, my triples come with it. So in order to ensure that the user does not
>>>>> have access to the triples, I have to use a transform with every request 
>>>>> to
>>>>> remove the triples. Also, when trying to update a document with more than
>>>>> one embedded triple using '*xdmp:node-replace*', I get the error 
>>>>> '*XDMP-CHILDDUPNAME:
>>>>> Object nodes cannot have two children with the same name*'. I'm
>>>>> assuming because I have multiple nodes with the name 'triple'. Since using
>>>>> managed triples removes the ability to add meta-data to the triples, what
>>>>> are the advantages? (Speed?)
>>>>>
>>>>> Robert
>>>>> _______________________________________________
>>>>> General mailing list
>>>>> [email protected]
>>>>> Manage your subscription at:
>>>>> http://developer.marklogic.com/mailman/listinfo/general
>>>>>
>>>> _______________________________________________
>>>> General mailing list
>>>> [email protected]
>>>> Manage your subscription at:
>>>> http://developer.marklogic.com/mailman/listinfo/general
>>>>
>>> _______________________________________________
>>> General mailing list
>>> [email protected]
>>> Manage your subscription at:
>>> http://developer.marklogic.com/mailman/listinfo/general
>>>
>> _______________________________________________
> General mailing list
> [email protected]
> Manage your subscription at:
> http://developer.marklogic.com/mailman/listinfo/general
>
_______________________________________________
General mailing list
[email protected]
Manage your subscription at: 
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to