Femur.Markup.Abstractions
0.0.31
dotnet add package Femur.Markup.Abstractions --version 0.0.31
NuGet\Install-Package Femur.Markup.Abstractions -Version 0.0.31
<PackageReference Include="Femur.Markup.Abstractions" Version="0.0.31" />
<PackageVersion Include="Femur.Markup.Abstractions" Version="0.0.31" />
<PackageReference Include="Femur.Markup.Abstractions" />
paket add Femur.Markup.Abstractions --version 0.0.31
#r "nuget: Femur.Markup.Abstractions, 0.0.31"
#:package Femur.Markup.Abstractions@0.0.31
#addin nuget:?package=Femur.Markup.Abstractions&version=0.0.31
#tool nuget:?package=Femur.Markup.Abstractions&version=0.0.31
Femur.Parsers.Markup.Abstractions
Shared abstractions for markup-based parsers (HTML, XML, CHTML).
Overview
This package provides common abstractions and interfaces for markup parsers. It defines the node hierarchy and types used by HTML-like and XML-like parsers in the Femur parser family.
Key Classes
MarkupNodeType
Enumeration of node types common to markup-based formats:
- Document: Root node containing the entire document
- Element: Opening/closing tag pairs (e.g.,
<div>...</div>) - Text: Text content between tags
- Attribute: Attributes on elements (e.g.,
class="value") - Comment: HTML/XML comments
- CDATA: Character data sections (XML)
- ProcessingInstruction: XML processing instructions
- DocumentType: DOCTYPE declarations
Node Hierarchy
The following abstract node types provide the base structure:
- ContainerNode: Nodes that can have children (documents, elements)
- LeafNode: Nodes that cannot have children (text, comments, CDATA)
- ElementNode: Represents markup elements with:
- Tag name
- Attributes collection
- Child nodes
- Self-closing semantics
Node Attributes
Each node provides:
- NodeType: Type of the node
- SourceLocation: Start position and length in source
- Parent: Reference to parent node (for tree navigation)
- Children: Collection of child nodes (for container nodes)
Usage
This package is used by:
Femur.Parsers.HtmlParser- HTML parsingFemur.Parsers.XmlParser- XML parsingFemur.Parsers.ChtmlParser- Component HTML parsing
Features
- ✅ Consistent node hierarchy for markup formats
- ✅ Type-safe node collections
- ✅ Full source location tracking
- ✅ Support for various markup constructs
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Femur.Parsing (>= 0.0.31)
- System.Memory (>= 4.6.3)
-
net10.0
- Femur.Parsing (>= 0.0.31)
-
net8.0
- Femur.Parsing (>= 0.0.31)
-
net9.0
- Femur.Parsing (>= 0.0.31)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Femur.Markup.Abstractions:
| Package | Downloads |
|---|---|
|
Femur.Xml.Abstractions
Package Description |
|
|
Femur.Xml.Parser
Package Description |
|
|
Femur.Html.Parser
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.