Sync
This commit is contained in:
parent
6f050a029e
commit
776bba907c
3887 changed files with 59894 additions and 7280 deletions
14
Task/XML-Input/Bracmat/xml-input-1.bracmat
Normal file
14
Task/XML-Input/Bracmat/xml-input-1.bracmat
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
( :?names
|
||||
& ( get$("students.xml",X,ML)
|
||||
: ?
|
||||
( ( Student
|
||||
. (? (Name.?name) ?,)
|
||||
| ? (Name.?name) ?
|
||||
)
|
||||
& !names !name:?names
|
||||
& ~
|
||||
)
|
||||
?
|
||||
| !names
|
||||
)
|
||||
)
|
||||
27
Task/XML-Input/Bracmat/xml-input-2.bracmat
Normal file
27
Task/XML-Input/Bracmat/xml-input-2.bracmat
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
( :?names
|
||||
& ( get
|
||||
$ ( "<Students>
|
||||
<Student Name=\"April\" Gender=\"F\" DateOfBirth=\"1989-01-02\" />
|
||||
<Student Name=\"Bob\" Gender=\"M\" DateOfBirth=\"1990-03-04\" />
|
||||
<Student Name=\"Chad\" Gender=\"M\" DateOfBirth=\"1991-05-06\" />
|
||||
<Student Name=\"Dave\" Gender=\"M\" DateOfBirth=\"1992-07-08\">
|
||||
<Pet Type=\"dog\" Name=\"Rover\" />
|
||||
</Student>
|
||||
<Student DateOfBirth=\"1993-09-10\" Gender=\"F\" Name=\"Émily\" />
|
||||
</Students>"
|
||||
, MEM
|
||||
, X
|
||||
, ML
|
||||
)
|
||||
: ?
|
||||
( ( Student
|
||||
. (? (Name.?name) ?,)
|
||||
| ? (Name.?name) ?
|
||||
)
|
||||
& !names !name:?names
|
||||
& ~
|
||||
)
|
||||
?
|
||||
| !names
|
||||
)
|
||||
)
|
||||
36
Task/XML-Input/Cache-ObjectScript/xml-input.cos
Normal file
36
Task/XML-Input/Cache-ObjectScript/xml-input.cos
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
Class XML.Students [ Abstract ]
|
||||
{
|
||||
|
||||
XData XMLData
|
||||
{
|
||||
<Students>
|
||||
<Student Name="April" Gender="F" DateOfBirth="1989-01-02" />
|
||||
<Student Name="Bob" Gender="M" DateOfBirth="1990-03-04" />
|
||||
<Student Name="Chad" Gender="M" DateOfBirth="1991-05-06" />
|
||||
<Student Name="Dave" Gender="M" DateOfBirth="1992-07-08">
|
||||
<Pet Type="dog" Name="Rover" />
|
||||
</Student>
|
||||
<Student DateOfBirth="1993-09-10" Gender="F" Name="Émily" />
|
||||
</Students>
|
||||
}
|
||||
|
||||
ClassMethod Output() As %Status
|
||||
{
|
||||
// get xml stream from the 'XData' block contained in this class and parse
|
||||
Set xdata=##class(%Dictionary.CompiledXData).%OpenId($this_"||XMLData",, .sc)
|
||||
If $$$ISERR(sc) Quit sc
|
||||
Set sc=##class(%XML.TextReader).ParseStream(xdata.Data, .hdlr)
|
||||
If $$$ISERR(sc) Quit sc
|
||||
|
||||
// iterate through document, node by node
|
||||
While hdlr.Read() {
|
||||
If hdlr.Path="/Students/Student", hdlr.MoveToAttributeName("Name") {
|
||||
Write hdlr.Value, !
|
||||
}
|
||||
}
|
||||
|
||||
// finished
|
||||
Quit $$$OK
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -16,7 +16,7 @@ begin
|
|||
//Creating the TXMLDocument instance
|
||||
XMLDoc:= TXMLDocument.Create(nil);
|
||||
|
||||
//Loading the XML string
|
||||
//Loading8 the XML string
|
||||
XMLDoc.LoadFromXML(aXMLInput);
|
||||
|
||||
//Parsing the xml document
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue