[MarkLogic Dev General] RE: Editor experience (Black, Charlie (Mission Systems))

Christopher Welch Christopher.Welch at marklogic.com
Thu Jan 11 19:19:08 PST 2007


Charlie,

At least a couple of us here at Mark Logic (from various backgrounds)
use Eclipse. Eclipse is a free product and there is a good Mark
Logic/XQuery plugin called xqide. 

I personally do a lot of web development work with my XQuery so I use
the Eclipse Web Tools Platform (WTP) which is bundled on the Eclipse
site.

I'm a .NET guy so my most used development tools are (in order):
Eclipse, CQ (from http://dev.marklogic.com), and Visual Studio.

Here's everything you should need to get started:
http://www.eclipse.org/webtools/ (download the All-in-one package
including Eclipse)
http://xqide.org/eclipse/plugin-page.php

Here's why I like it:
- Very solid editors for HTML, JavaScript, CSS, XQuery, XML, et al.
- Has a very nice project system.
- Highly extensible.

Here's what I don't like about it:
- You can run XQuery with xqide inside of Eclipse but it's buggy so I
use CQ instead
- Highlighting and Syntax checking is good but not perfect
- Eclipse can be difficult to learn beyond the basic setup described
above.

Cheers!
Chris

-----Original Message-----
From: general-bounces at developer.marklogic.com
[mailto:general-bounces at developer.marklogic.com] On Behalf Of Kelly
Stirman
Sent: Thursday, January 11, 2007 5:31 PM
To: general at developer.marklogic.com
Subject: [MarkLogic Dev General] RE: Editor experience (Black,Charlie
(Mission Systems))

Charlie,

I think the most widely used editor among Mark Logic consultants is
IntelliJ. In second place are favorite text editors, such as Emacs, VI,
and TextPad.

Stylus Studio and Oxygen have direct connectors to Mark Logic, so you
can run your XQuery against the server directly. While I don't use this
feature, I do use Stylus. XMetal is another XML IDE that some use.

Kelly

-----Original Message-----
From: general-bounces at developer.marklogic.com
[mailto:general-bounces at developer.marklogic.com] On Behalf Of
general-request at developer.marklogic.com
Sent: Thursday, January 11, 2007 4:53 PM
To: general at developer.marklogic.com
Subject: General Digest, Vol 31, Issue 13

Send General mailing list submissions to
	general at developer.marklogic.com

To subscribe or unsubscribe via the World Wide Web, visit
	http://xqzone.com/mailman/listinfo/general
or, via email, send a message with subject or body 'help' to
	general-request at developer.marklogic.com

You can reach the person managing the list at
	general-owner at developer.marklogic.com

When replying, please edit your Subject line so it is more specific
than "Re: Contents of General digest..."


Today's Topics:

   1. Editor experience  (Black, Charlie (Mission Systems))
   2. RE: max function alternatives UPDATED (Danny Sokolsky)
   3. RE: max function alternatives UPDATED (Gerety, Colin)


----------------------------------------------------------------------

Message: 1
Date: Thu, 11 Jan 2007 12:40:47 -0800
From: "Black, Charlie (Mission Systems)" <charlie.black at ngc.com>
Subject: [MarkLogic Dev General] Editor experience 
To: <general at developer.marklogic.com>
Message-ID:
	
<FA2E56C9556135468D3C680F280C7BF101796C10 at xmbca801.northgrum.com>
Content-Type: text/plain;	charset="us-ascii"

I am about to start writing a lot of XQuery code and was wondering if
there was some preferred editor out there.

I have done some looking around and it looks like oXygen is pretty good.

http://www.oxygenxml.com/native_xml_databases.html

I also tried to get the Marklogic JEdit plug-in going and the XML
Indenter has been merged with the XML plug-in and well things aren't
working right with JEdit.

Any insights, preferences...  I use IntelliJ as my normal code editor.

Charlie


------------------------------

Message: 2
Date: Thu, 11 Jan 2007 13:41:06 -0800
From: "Danny Sokolsky" <dsokolsky at marklogic.com>
Subject: RE: [MarkLogic Dev General] max function alternatives UPDATED
To: "General Mark Logic Developer Discussion"
	<general at developer.marklogic.com>
Message-ID:
	<272E11023E384545990445BE9620527701C1C58B at EX1.marklogic.com>
Content-Type: text/plain; charset="us-ascii"

Hi Patrick,
 
OK, thanks for the clarification.  Here are the things I would try next:
 
1) Upgrade to 3.1-4.  I am not sure that will resolve your current
situation, but it is a good idea anyway.
2) Try to simplify the issue a little to figure out what is going on.
Here is what I would do:
    a) create a fresh database (create a new forest, create a new
database, attach the new forest to the new database)
    b) load a single document that has the structure you want.  For
example, you could run something like this in cq against your new db:
       xdmp:document-insert("/test.xml", <RootElement><InsurancePolicy
index="123">some text</InsurancePolicy></RootElement>)
    c) try running
cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("index
")) against your new db.  It should throw XDMP-ELEMATTRRIDXNOTFOUND:
  d) create the attribute index with type string, parent localname
"InsurancePolicy", localname "Index".  If you created the db with the
default options, it will automatically reindex (will happen quickly
since there is only one doc in the db). 
   e) run the lexicon query again.  It should return "123"
 
I hope this helps.
 
-Danny

	-----Original Message-----
	From: general-bounces at developer.marklogic.com
[mailto:general-bounces at developer.marklogic.com] On Behalf Of Patrick
Force
	Sent: Thursday, January 11, 2007 12:13 PM
	To: general at developer.marklogic.com
	Subject: [MarkLogic Dev General] max function alternatives
UPDATED
	
	
	Sorry for the confusion.  My initial post used generic values as
reference points and I accidentally used the real element/attribute
names when I displayed the query.  My actual attribute index and XQuery
as I've set it: 

	element QName: InsurancePolicy
	attribute QName: index

	
cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("index
"))

	Sorry for the confusion.  With that in mind, should we upgrade
to 3.1-4?  It's seeming more and more like this might be a
support/upgrade issue in the attribute index setting.  Thanks again.

	Patrick

	Hi Patrick,

	
	 

	In looking again at what you are trying to do, I think perhaps
you have
	set up the index on the wrong element/attribute conbination.  I
may not
	have this correct, but based on what it says below, here is what
I see.

	
	 

	Below, you say you have an index on the following:
	  element QName: RootElement
	  attribute QName: index  

	
	 

	But the query you are trying to perform is this:

	
	 

	
cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("id"))
	
	

	        
	

	This query requires the range index on:
	  element QName: InsurancePolicy
	  attribute QName: id

	
	 

	So I guess the thing to verify is exactly what index do you have
	created, and exactly what query are you trying to perform. 

	
	 

	-Danny

	
	
	 

-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://xqzone.marklogic.com/pipermail/general/attachments/20070111/a40a0
835/attachment-0001.html

------------------------------

Message: 3
Date: Thu, 11 Jan 2007 14:52:33 -0700
From: "Gerety, Colin" <Colin.Gerety at flatironssolutions.com>
Subject: RE: [MarkLogic Dev General] max function alternatives UPDATED
To: "General Mark Logic Developer Discussion"
	<general at developer.marklogic.com>
Message-ID:
	
<02D8CD1CD02EA9428129126813213C5B014ECA4C at pyramid.flatironssolutions.com
>
	
Content-Type: text/plain; charset="us-ascii"

  I wrestled with this error a couple of weeks ago.  In my case it
turned out to be namespace problems.  That is, I was not asking for what
I thought I was.  Look at the call:

 

cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("index
"))

 

   xs:QName operates in the context of the current element namespace.
Suppose that namespace is bound as myns:.  That means that
xs:QName("InsurancePolicy") is acting as though you called
xs:QName("myns:InsurancePolicy").  The real problem is likely to be the
attribute name.  xs:QName("index") acts like xs:QName("myns:index"), but
attributes are generally in a null namespace.

 

Colin Gerety

Flatirons Solutions

  

 

________________________________

From: general-bounces at developer.marklogic.com
[mailto:general-bounces at developer.marklogic.com] On Behalf Of Danny
Sokolsky
Sent: Thursday, January 11, 2007 2:41 PM
To: General Mark Logic Developer Discussion
Subject: RE: [MarkLogic Dev General] max function alternatives UPDATED

 

Hi Patrick,

 

OK, thanks for the clarification.  Here are the things I would try next:

 

1) Upgrade to 3.1-4.  I am not sure that will resolve your current
situation, but it is a good idea anyway.

2) Try to simplify the issue a little to figure out what is going on.
Here is what I would do:

    a) create a fresh database (create a new forest, create a new
database, attach the new forest to the new database)

    b) load a single document that has the structure you want.  For
example, you could run something like this in cq against your new db:

       xdmp:document-insert("/test.xml", <RootElement><InsurancePolicy
index="123">some text</InsurancePolicy></RootElement>)

    c) try running
cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("index
")) against your new db.  It should throw XDMP-ELEMATTRRIDXNOTFOUND:

  d) create the attribute index with type string, parent localname
"InsurancePolicy", localname "Index".  If you created the db with the
default options, it will automatically reindex (will happen quickly
since there is only one doc in the db). 

   e) run the lexicon query again.  It should return "123"

 

I hope this helps.

 

-Danny

	-----Original Message-----
	From: general-bounces at developer.marklogic.com
[mailto:general-bounces at developer.marklogic.com] On Behalf Of Patrick
Force
	Sent: Thursday, January 11, 2007 12:13 PM
	To: general at developer.marklogic.com
	Subject: [MarkLogic Dev General] max function alternatives
UPDATED

	Sorry for the confusion.  My initial post used generic values as
reference points and I accidentally used the real element/attribute
names when I displayed the query.  My actual attribute index and XQuery
as I've set it: 

	 

	element QName: InsurancePolicy

	attribute QName: index

	 

	
cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("index
"))

	 

	Sorry for the confusion.  With that in mind, should we upgrade
to 3.1-4?  It's seeming more and more like this might be a
support/upgrade issue in the attribute index setting.  Thanks again.

	 

	Patrick

	 

	Hi Patrick,

	
	 

	In looking again at what you are trying to do, I think perhaps
you have

	set up the index on the wrong element/attribute conbination.  I
may not

	have this correct, but based on what it says below, here is what
I see.

	
	 

	Below, you say you have an index on the following:

	  element QName: RootElement

	  attribute QName: index  

	
	 

	But the query you are trying to perform is this:

	
	 

	
cts:element-attribute-values(xs:QName("InsurancePolicy"),xs:QName("id"))

	 

	        

	This query requires the range index on:

	  element QName: InsurancePolicy

	  attribute QName: id

	
	 

	So I guess the thing to verify is exactly what index do you have

	created, and exactly what query are you trying to perform. 

	
	 

	-Danny

	
	
	 

-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://xqzone.marklogic.com/pipermail/general/attachments/20070111/b2d93
2ea/attachment.html

------------------------------

_______________________________________________
General mailing list
General at developer.marklogic.com
http://xqzone.com/mailman/listinfo/general


End of General Digest, Vol 31, Issue 13
***************************************
_______________________________________________
General mailing list
General at developer.marklogic.com
http://xqzone.com/mailman/listinfo/general



More information about the General mailing list