Cod*_*odo 1 xml xsd xquery basex
我试图用来BaseX运行一个XQuery没有成功.我尝试过键入以下命令:
doc("Bookstore.xml")//Bookstore
//Bookstore
XQUERY[//Bookstore]
Run Code Online (Sandbox Code Playgroud)
我收到这些错误消息:
Stopped at C:/tools/libxml/file, 1/32:
Unknown command: doc("Bookstore.xml")//Bookstore. Try HELP.
Stopped at C:/tools/libxml/file, 1/12:
Unknown command: //Bookstore. Try HELP.
Stopped at C:/tools/libxml/file, 1/20:
Unknown command: XQUERY[//Bookstore]. Try HELP.
Run Code Online (Sandbox Code Playgroud)
每当我试图击中Execute Query.我怎样才能让它真正起作用?我正在观看斯坦福教程,但那些显示在那里的命令无法正常工作BaseX.
下面你可以看到file我正在尝试查询教育目的.
<?xml version="1.0" ?>
<!--Bookstore with no DTD-->
<Bookstore>
<Book ISBN="ISBN-0-13-713526-2" Price="85" Edition="3rd">
<Title>A First Course in Database Systems</Title>
<Authors>
<Author>
<First_Name>Jeffrey</First_Name>
<Last_Name>Ullman</Last_Name>
</Author>
<Author>
<First_Name>Jennifer</First_Name>
<Last_Name>Widom</Last_Name>
</Author>
</Authors>
</Book>
<Book ISBN="ISBN-0-13-815504-6" Price="100">
<Remark>
Buy this book bundled with "A First Course" - a great deal!
</Remark>
<Title>Database Systems: The Complete Book</Title>
<Authors>
<Author>
<First_Name>Hector</First_Name>
<Last_Name>Garcia-Molina</Last_Name>
</Author>
<Author>
<First_Name>Jeffrey</First_Name>
<Last_Name>Ullman</Last_Name>
</Author>
<Author>
<First_Name>Jennifer</First_Name>
<Last_Name>Widom</Last_Name>
</Author>
</Authors>
</Book>
</Bookstore>
Run Code Online (Sandbox Code Playgroud)
编辑

如果您正在运行BaseX命令,例如在BaseX命令行客户端或GUI命令输入行中,则必须使用该命令为查询添加前缀XQUERY.BaseX命令由空格与其参数分隔,因此在您的情况下,运行任何一个
XQUERY //Bookstore
XQUERY doc('Bookstore.xml')//Bookstore
Run Code Online (Sandbox Code Playgroud)
取决于文档(数据库)是否已打开.
如果您正在使用BaseX GUI,您也可以直接将查询放入查询窗口,然后您根本不需要XQUERY命令前缀,而是直接其中一个(如上所述)
//Bookstore
//doc('Bookstore.xml')//Bookstore
Run Code Online (Sandbox Code Playgroud)

无论如何:你可能想要使用/Bookstore:至少如果我正确猜测你想要查询根元素,而不是<Bookstore/>整个文档中的所有元素.