parseDTD {XML} | R Documentation |
Represents the contents of a DTD as a user-level object containing the element and entity definitions.
parseDTD(extId, asText=FALSE, name="", isURL=FALSE, error = xmlErrorCumulator())
extId |
The name of the file containing the DTD to be processed. |
asText |
logical indicating whether the value of `extId' is the name of a file or the DTD content itself. Use this when the DTD is read as a character vector, before being parsed and handed to the parser as content only. |
name |
Optional name to provide to the parsing mechanism. |
isURL |
A logical value indicating whether the input source is to be considred a URL or a regular file or string containing the XML. |
error |
an R function that is called when an error is
encountered. This can report it and continue or terminate by raising
an error in R. See the error parameter for link{xmlTreeParse} . |
Parses and converts the contents of the DTD in the specified file into a user-level object containing all the information about the DTD.
A list with two entries, one for the entities and the other for the elements defined within the DTD.
entities |
a named list of the entities defined in the DTD.
Each entry is indexed by the name of the corresponding entity.
Each is an object of class XMLEntity
or alternatively XMLExternalEntity if the entity refers
to an external definition.
The fields of these types of objects are
|
elements |
a named list of the elements defined in the DTD, with the name of each element being
the identifier of the element being defined.
Each entry is an object of class XMLElementDef
which has 4 fields.
|
Errors in the DTD are stored as warnings for programmatic access.
Needs libxml (currently version 1.8.7) from
Duncan Temple Lang <duncan@wald.ucdavis.edu>
xmlTreeParse
,
WritingXML.html in the distribution.
dtdFile <- system.file("exampleData", "foo.dtd",package="XML") parseDTD(dtdFile) txt <- readLines(dtdFile) txt <- paste(txt, collapse="\n") d <- parseDTD(txt, asText=TRUE) ## Not run: url <- "http://www.omegahat.org/XML/DTDs/DatasetByRecord.dtd" d <- parseDTD(url, asText=FALSE) ## End(Not run)