use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class DocumentCreater method createWithoutNamespace.
/**
* Create simple test document containing all supported node kinds, but ignoring their namespace
* prefixes.
*
* @param wtx {@link XdmNodeWriteTrx} to write to
* @throws SirixException if anything went wrong
*/
public static void createWithoutNamespace(final XdmNodeWriteTrx wtx) throws SirixException {
assertNotNull(wtx);
wtx.moveToDocumentRoot();
wtx.insertElementAsFirstChild(new QNm("a"));
wtx.insertAttribute(new QNm("i"), "j");
wtx.moveToParent();
wtx.insertTextAsFirstChild("oops1");
wtx.insertElementAsRightSibling(new QNm("b"));
wtx.insertTextAsFirstChild("foo");
wtx.insertElementAsRightSibling(new QNm("c"));
wtx.moveToParent();
wtx.insertTextAsRightSibling("oops2");
wtx.insertElementAsRightSibling(new QNm("b"));
wtx.insertAttribute(new QNm("x"), "y");
wtx.moveToParent();
wtx.insertElementAsFirstChild(new QNm("c"));
wtx.insertTextAsRightSibling("bar");
wtx.moveToParent();
wtx.insertTextAsRightSibling("oops3");
wtx.moveToDocumentRoot();
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class DocumentCreater method createRevisioned.
/**
* Create revisioned document.
*
* @throws SirixException if shredding fails
* @throws XMLStreamException if StAX reader couldn't be created
* @throws IOException if reading XML string fails
*/
public static void createRevisioned(final Database database) throws SirixException, IOException, XMLStreamException {
try (final XdmNodeWriteTrx firstWtx = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build()).beginNodeWriteTrx()) {
final XMLShredder shredder = new XMLShredder.Builder(firstWtx, XMLShredder.createStringReader(REVXML), Insert.ASFIRSTCHILD).commitAfterwards().build();
shredder.call();
}
try (final XdmNodeWriteTrx secondWtx = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build()).beginNodeWriteTrx()) {
secondWtx.moveToFirstChild();
secondWtx.moveToFirstChild();
secondWtx.moveToFirstChild();
secondWtx.setValue("A Contrived Test Document");
secondWtx.moveToParent();
secondWtx.moveToRightSibling();
secondWtx.moveToRightSibling();
secondWtx.moveToFirstChild();
secondWtx.moveToRightSibling();
final long key = secondWtx.getNodeKey();
secondWtx.insertAttribute(new QNm("role"), "bold");
secondWtx.moveTo(key);
secondWtx.moveToRightSibling();
secondWtx.setValue("changed in it.");
secondWtx.moveToParent();
secondWtx.insertElementAsRightSibling(new QNm("para"));
secondWtx.insertTextAsFirstChild("This is a new para 2b.");
secondWtx.moveToParent();
secondWtx.moveToRightSibling();
secondWtx.moveToRightSibling();
secondWtx.moveToFirstChild();
secondWtx.setValue("This is a different para 4.");
secondWtx.moveToParent();
secondWtx.insertElementAsRightSibling(new QNm("para"));
secondWtx.insertTextAsFirstChild("This is a new para 4b.");
secondWtx.moveToParent();
secondWtx.moveToRightSibling();
secondWtx.moveToRightSibling();
secondWtx.remove();
secondWtx.remove();
secondWtx.commit();
secondWtx.moveToDocumentRoot();
secondWtx.moveToFirstChild();
secondWtx.moveToFirstChild();
secondWtx.remove();
secondWtx.commit();
}
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class DocumentCreater method createVersioned.
/**
* Create simple revision test in current database.
*
* @param wtx {@link XdmNodeWriteTrx} to write to
* @throws SirixException if anything went wrong
*/
public static void createVersioned(final XdmNodeWriteTrx wtx) throws SirixException {
assertNotNull(wtx);
create(wtx);
wtx.commit();
for (int i = 0; i <= 1; i++) {
wtx.moveToDocumentRoot();
wtx.moveToFirstChild();
wtx.insertElementAsFirstChild(new QNm("ns", "p", "a"));
wtx.insertTextAsFirstChild("OOPS4!");
wtx.commit();
}
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class DocumentCreater method create.
/**
* Create simple test document containing all supported node kinds except comment- and processing
* instructions.
*
* @param wtx {@link XdmNodeWriteTrx} to write to
* @throws SirixException if anything weird happens
*/
public static void create(final XdmNodeWriteTrx wtx) throws SirixException {
assertNotNull(wtx);
assertTrue(wtx.moveToDocumentRoot().hasMoved());
wtx.insertElementAsFirstChild(new QNm("ns", "p", "a"));
wtx.insertNamespace(new QNm("ns", "p", ""));
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertAttribute(new QNm("i"), "j");
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertTextAsFirstChild("oops1");
wtx.insertElementAsRightSibling(new QNm("b"));
wtx.insertTextAsFirstChild("foo");
wtx.insertElementAsRightSibling(new QNm("c"));
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertTextAsRightSibling("oops2");
wtx.insertElementAsRightSibling(new QNm("b"));
wtx.insertAttribute(new QNm("ns", "p", "x"), "y");
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertElementAsFirstChild(new QNm("c"));
wtx.insertTextAsRightSibling("bar");
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertTextAsRightSibling("oops3");
wtx.moveToDocumentRoot();
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class DocumentCreater method createCommentPI.
/**
* Create simple test document containing all supported node kinds.
*
* @param wtx {@link XdmNodeWriteTrx} to write to
* @throws SirixException if anything weird happens
*/
public static void createCommentPI(final XdmNodeWriteTrx wtx) throws SirixException {
assertNotNull(wtx);
assertTrue(wtx.moveToDocumentRoot().hasMoved());
wtx.insertElementAsFirstChild(new QNm("ns", "p", "a"));
wtx.insertNamespace(new QNm("ns", "p", "xmlns"));
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertAttribute(new QNm("i"), "j");
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertCommentAsFirstChild("foo");
wtx.insertTextAsRightSibling("oops1");
wtx.insertElementAsRightSibling(new QNm("b"));
wtx.insertTextAsFirstChild("foo");
wtx.insertElementAsRightSibling(new QNm("c"));
assertTrue(wtx.moveToParent().hasMoved());
assertEquals(2l, wtx.getDescendantCount());
wtx.insertPIAsRightSibling("bar", "baz=\"foo\"");
wtx.insertTextAsRightSibling("oops2");
wtx.insertElementAsRightSibling(new QNm("b"));
wtx.insertAttribute(new QNm("ns", "p", "x"), "y");
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertElementAsFirstChild(new QNm("c"));
wtx.insertTextAsRightSibling("bar");
assertTrue(wtx.moveToParent().hasMoved());
wtx.insertTextAsRightSibling("oops3");
wtx.moveToDocumentRoot();
}
Aggregations