Learn R Programming

XML (version 3.99-0.17)

dtdValidElement: Determines whether an XML tag is valid within another.

Description

This tests whether name is a legitimate tag to use as a direct sub-element of the within tag according to the definition of the within element in the specified DTD.

Usage

dtdValidElement(name, within, dtd, pos=NULL)

Value

Returns a logical value. TRUE indicates that a name element can be used inside a within element. FALSE indicates that it cannot.

Arguments

name

The name of the tag which is to be inserted inside the within tag.

within

The name of the parent tag the definition of which we are checking to determine if it contains name.

dtd

The DTD in which the elements name and within are defined.

pos

An optional position at which we might add the name element inside within. If this is specified, we have a stricter test that accounds for sequences in which elements must appear in order. These are comma-separated entries in the element definition.

Author

Duncan Temple Lang

Details

This applies to direct sub-elements or children of the within tag and not tags nested within children of that tag, i.e. descendants.

References

https://www.w3.org/XML/, http://www.jclark.com/xml/, https://www.omegahat.net

See Also

parseDTD, dtdElement, dtdElementValidEntry,

Examples

Run this code
 dtdFile <- system.file("exampleData", "foo.dtd", package="XML")
 foo.dtd <- parseDTD(dtdFile)

  # The following are true.
 dtdValidElement("variable","variables", dtd = foo.dtd)
 dtdValidElement("record","dataset", dtd = foo.dtd)

  # This is false.
 dtdValidElement("variable","dataset", dtd = foo.dtd)

Run the code above in your browser using DataLab