And to answer your question about how to convert a binary document to text via
XQuery, you can do something like this:
xquery version "1.0-ml";
(:
/test.xqy is loaded as a binary document :
this will reinsert it as a text document
:)
xdmp:document-insert("/test.xqy",
text{ xdmp:quote(doc("/test.xqy") )})
-Danny
From: [email protected]
[mailto:[email protected]] On Behalf Of Lee, David
Sent: Friday, June 11, 2010 7:09 AM
To: General Mark Logic Developer Discussion
Subject: Re: [MarkLogic Dev General] Mac Webdav Client setting xqy filesasbinary
Forgot to answer your other question.
xmlsh & the marklogic extension run equally well on windows, linux, and mac
'out of the box'.
Nothing special is needed.
I develop 100% on windows, but run about 50/50 on linux & windows. Mac I test
on occasionally.
The design goal of xmlsh (and by extensions, the extensions) is 100%
compatibility across OS's ...
From: [email protected]
[mailto:[email protected]] On Behalf Of Mike Brevoort
Sent: Friday, June 11, 2010 9:43 AM
To: General Mark Logic Developer Discussion
Subject: Re: [MarkLogic Dev General] Mac Webdav Client setting xqy filesasbinary
Thanks David, That looks really cool.
I was just looking at the code (that I've seen you are actively working on-
checkins the last several minutes :) )and it seems like it wouldn't be too
hard to create a a sync option for rsync like behavior (simpler obviously). If
given a source (filesystem) and destination (marklogic DB directory) and depth
(how far to recurse), we should be able to grab a list of all of the files on
the server, their content-length and last updated dateTime. Then we could
compare on the source filesystem for new/deleted and by size and date updated
to decide which files to get and put.
What do you think of that approach? I or someone on my team might be willing to
take a crack at this.
Also, what's required for others to run xmlsh on windows?
Thanks!
Mike
On Fri, Jun 11, 2010 at 6:19 AM, Lee, David
<[email protected]<mailto:[email protected]>> wrote:
You might want to consider the MarkLogic extension to xmlsh
http://www.xmlsh.org/ModuleMarkLogic
This includes a "put" command which works similary to rsync (not quite as good
as it doesnt handle minimal updates yet ... TBD)
http://www.xmlsh.org/MarkLogicPut
But I use it for scripting updates to modules. It uses XDBC (XCC) not WebDav.
You can set the file type explicitly (-t for text).
Or it uses the server default logic.
Its not as powerful as recordloader but its easier to use.
Example: I use this command to recursively copy my source .xquery file tree to
the modules DB
ml:put -r -baseuri /App/ -maxfiles 10 -maxthreads 3 *
From:
[email protected]<mailto:[email protected]>
[mailto:[email protected]<mailto:[email protected]>]
On Behalf Of Mike Brevoort
Sent: Friday, June 11, 2010 12:20 AM
To: [email protected]<mailto:[email protected]>
Subject: [MarkLogic Dev General] Mac Webdav Client setting xqy files asbinary
Hi,
So I know that webdav clients always seem to have quirks and I've heard hearsay
that the Mac webdav client has some problems when interfacing with MarkLogic,
but....
I have a modules database mounted via webdav on a mac. When I copy in an xquey
file (test.xqy) via the native webdav client the content type of the file is
being set to "binary" but if I use Cyberduck to move the file, it's being set
to "text". When the type is set to binary, it fails to execute
<h1>500 Internal Server Error</h1>
<dl>
<dt> [1.0-ml]</dt>
<dd>XDMP-TEXTNODE: /ctd/article.xqy -- Server unable to build program
from non-text document</dd>
<dt>in /poc/article.xqy, on line 13 [1.0-ml]</dt>
<dd>XDMP-UNDFUN: (err:XPST0017) Undefined function
comoms-article:getFields()</dd>
<dt>in /poc/article.xqy, on line 15 [1.0-ml]</dt>
<dd>XDMP-UNDFUN: (err:XPST0017) Undefined function
comoms-article:get()</dd>
<dt>in /poc/article.xqy, on line 19 [1.0-ml]</dt>
<dd>XDMP-UNDFUN: (err:XPST0017) Undefined function
comoms-article:post()</dd>
</dl>
So two questions, anything I can do to affect how the Mac client/MarkLogic deal
with document types? Or if not, how can I convert the document type via xquery?
I'd really like to have the modules database mountable so that I can use tools
like rsync to move files (vs a client like Cyberduck).
Thanks!
Mike
_______________________________________________
General mailing list
[email protected]<mailto:[email protected]>
http://developer.marklogic.com/mailman/listinfo/general
--
Mike Brevoort / Enterprise Web Practice Manager / Avalon Consulting LLC /
303-834-7509 / twitter:mbrevoort
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general