xml 相关问题

可扩展标记语言(XML)是一种灵活的结构化文档格式,用于定义人类和机器可读的编码规则。

将SHA1添加到signxml python

我正在使用库signxml 来签署XML 签名以进行SAML 身份验证。我们的实施者合作伙伴之一要求我们以 SHA1 形式发送签名。 XMLSigner 的基本配置...

回答 1 投票 0

有没有办法调试哪个主题正在影响 xml 布局上的给定组件

我去过许多 Stack Overflow 页面,寻找在文本输入布局处于活动状态时更改提示颜色的答案。尽管有自定义主题,但默认值会覆盖我的

回答 1 投票 0

RestSharp 反序列化父节点内的 XML 节点

我正在调用一个 API 服务,该服务包装由 Response 元素包围的所有响应: 我正在调用一个 API 服务,该服务包含由 Response 元素包围的所有响应: <?xml version="1.0" encoding="UTF-8"?> <Response xmlns="http://www.example.com/stuff"> <status upstairs="Normal" downstairs="Normal"/> </Response> 我的状态类别是: class status { public string upstairs { get; set; } public string downstairs { get; set; } } 我正在调用 RestSharp 来获取状态(在 V106 之前,此方法有效): var client = new RestClient("http://www.example.com"); var request = new RestRequest("/api?get=status", Method.Get); var response = client.Execute<status>(request); if (response.Status.Equals(OK)) { var status = response.Data; } 使用当前版本的 RestSharp,我在响应中看到数据存在,但是解串器因错误而失败 "<Response xmlns="http://www.example.com/stuff"> was not expected." 如何指定存在父元素,但忽略它? 通过更改我的模型以包含外部元素来使其工作,如下所示: [XmlRoot("Response", Namespace="http://www.example.com/stuff")] public class ResponseStatus { [XmlElement] public status status { get; set; } } public class status { [XmlAttribute] public string upstairs { get; set; } [XmlAttribute] public string downstairs { get; set; } } 代码现在看起来像这样: var client = new RestClient("http://www.example.com"); var request = new RestRequest("/api?get=status", Method.Get); var response = client.Execute<ResponseStatus>(request); if (response.Status.Equals(OK)) { var status = response.Data.status; }

回答 1 投票 0

警告:此外,后备加载程序无法解析 XML

在Qt中设置Android环境时,弹出以下警告: 警告:此外,后备加载程序无法解析 XML。 我已经有一个良好的设置并运行 Android 环境...

回答 0 投票 0

在 C# 中反序列化时 XML 忽略命名空间

我有一个示例 xml 结构,例如: 我有一个示例 xml 结构,例如: <?xml version="1.0" encoding="iso-8859-1" ?> <!DOCTYPE nzb PUBLIC "-//newzBin//DTD NZB 1.0//EN" "http://www.newzbin.com/DTD/nzb/nzb-1.0.dtd"> <nzb xmlns="http://www.newzbin.com/DTD/2003/nzb"> <file...> </file> <file...> </file> </nzb> 和 .NET 类: [XmlRoot(ElementName = "nzb")] [XmlType("nzb")] public class Nzb { [XmlElement(ElementName = "file")] public FileData[] Files { get; set; } = []; } [XmlRoot(ElementName = "file")] public class FileData { } 我尝试过: XmlSerializer serializer = new XmlSerializer(typeof(Nzb)); Nzb? obj = null; using TextReader reader = new StringReader(File.ReadAllText(file)); obj = (Nzb)serializer.Deserialize(reader); 没有办法摆脱可能不同的命名空间。我从这里尝试了Error Deserializing Xml to Object - xmlns='' was not returned但我的案例仍然没有成功。 我解决了: 添加自定义 XmlTextReader: public class IgnoreNamespaceXmlTextReader(TextReader reader) : XmlTextReader(reader) { public override string NamespaceURI => ""; } 更改反序列化代码: string content = File.ReadAllText(file); // ignore everything before <nzb since I don't care about xml version or stuff content = content.Substring(content.IndexOf("<nzb")); using TextReader reader = new StringReader(content); using IgnoreNamespaceXmlTextReader xmlReader = new(reader); obj = (Nzb)serializer.Deserialize(xmlReader);

回答 1 投票 0

为什么我的布局在物理设备上会崩溃?

我正在学习 android studio,参加 Udemy 课程。 课程本身一切都很好,我也相处得很好。唯一的问题是,我的笔记本电脑很弱,比如 8GB 的内存很弱。所以运行模拟器

回答 2 投票 0

Android studio 镜像到物理设备

我模拟器一切正常,当我在物理设备上启动程序时,一切突然翻转[这是来自模拟器,这是来自物理设备](https://i.sstatic.net/AUK9Yb8J....

回答 1 投票 0

有没有办法删除android中按钮的默认样式?

我在 android studio xml 文件中有按钮,当我更改它时它不会改变形状和颜色 我不想创造自己的风格 看起来怎么样 这是我的代码: 我在 android studio xml 文件中有按钮,当我更改它时,它的形状和颜色没有改变 我不想创造自己的风格 看起来怎么样 这是我的代码: <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".fragments.PlantsListFragment"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="10dp" android:background="#1F1F27"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/spaces" android:textColor="@color/white" android:textSize="20sp" android:layout_centerInParent="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/rounded_square" android:backgroundTint="#1C2F33" /> </RelativeLayout> </FrameLayout> 如果需要的话,这里还有我的 rounded_square.xml 文件: <?xml version="1.0" encoding="utf-8"?> <shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#1C2F33" /> <corners android:radius="30dp" /> </shape> 我希望这个按钮的颜色为“#1C2F33”并且我希望它有圆角 不要使用Button,而是使用AppCompatButton,然后对其应用可绘制的背景形状。您也不需要背景色调,因为颜色已经在可绘制形状中指定。 <androidx.appcompat.widget.AppCompatButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/rounded_square" /> 还有更多背景信息。 您不是删除样式,而是替换它。 默认情况下,Android 中的每个控件都继承自其应用程序(您在清单中指定的 launchTheme)或活动的主题(也在清单中指定)传递的主题。 控件可以有自己的样式,您只需创建一个样式然后将其应用到您的控件即可。该主题将自动替换从其父上下文(活动/应用程序)传递下来的主题。 如果您使用 Material 主题,请记住仅使用 AppCompat 控件。 AppCompat 允许更轻松的自定义,而不是基本控件(例如按钮)。

回答 1 投票 0

如何修复找不到命名空间的预设架构:http://www.sitemaps.org/schemas/sitemap/0.9

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"> ==架构错误:找不到命名空间的预设架构:http://www.sitemaps.org/schemas/sitemap/0.9。 问题在于验证器缺少预配置的站点地图架构。 虽然 URL 类似于有效链接,但验证器无法自动从该 URL 检索命名空间的“定义”,即使它托管一个。 因此,这些命名空间需要提前配置。尽管 sitemaps.org 的 Sitemaps 模式被广泛使用,但它尚未在 W3 验证器中设置。 这并不一定表明您的文件有任何问题! 在大多数情况下,建议使用专门为测试站点地图而设计的验证器,以确保它们定义了正确的 sitemaps.org 架构。

xml
回答 1 投票 0

删除所有 XML 父级,并保留具有特定子级的 XML 父级(正则表达式)

我很想删除每个不包含特定值的父级,例如 l_njdocklod12 下面使用的 XML 示例: <...

回答 2 投票 0

使用java在android studio中动画从下到上淡入淡出

请告诉我我应该做什么才能做到这一点,以便淡入发生在“bendView”本身的底部到它自己的顶部,而不是整个视图立即淡入,这就是现在的情况。 .

回答 1 投票 0

不支持(“无法序列化枚举新类型变体`Example::Data`”)

我在尝试使用 Rust 中的 serde 序列化任何嵌套的 Enum-struct/newtype-variant 时收到此“无法序列化 Newtype Variant”错误。单位变体似乎工作正常。 那个...

回答 1 投票 0

Notepad++:当上一行找到第一个字符串时,如何替换下一行中的字符串?

我正在使用 Notepad++ 编辑 XML 文件,并且我正在尝试弄清楚如何对文件中的多个记录进行编辑。问题是,我想从以下行中删除特定字符串

回答 1 投票 0

在 gsoap 中生成 SOAP-ENV:Header 的子元素时出现问题

我想创建这样的东西: 我想创建这样的东西: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:c14n="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml1="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" xmlns:wsc="http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:chan="http://schemas.microsoft.com/ws/2005/02/duplex" xmlns:wsa5="http://www.w3.org/2005/08/addressing" xmlns:pt="http://www.onvif.org/ver10/pacs" xmlns:ns1="http://www.onvif.org/ver20/analytics/humanface" xmlns:ns2="http://www.onvif.org/ver20/analytics/humanbody" xmlns:xmime="http://tempuri.org/xmime.xsd" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsrfbf="http://docs.oasis-open.org/wsrf/bf-2" xmlns:wstop="http://docs.oasis-open.org/wsn/t-1" xmlns:wsrfr="http://docs.oasis-open.org/wsrf/r-2" xmlns:tac="http://www.onvif.org/ver10/accesscontrol/wsdl" xmlns:tds="http://www.onvif.org/ver10/device/wsdl" xmlns:tev="http://www.onvif.org/ver10/events/wsdl" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2" xmlns:timg="http://www.onvif.org/ver20/imaging/wsdl" xmlns:tmd="http://www.onvif.org/ver10/deviceIO/wsdl" xmlns:tptz="http://www.onvif.org/ver20/ptz/wsdl" xmlns:trp="http://www.onvif.org/ver10/replay/wsdl" xmlns:trt="http://www.onvif.org/ver10/media/wsdl" xmlns:tse="http://www.onvif.org/ver10/search/wsdl"> <SOAP-ENV:Header> <dom0:SubscriptionId wsa5:IsReferenceParameter="true" xmlns:dom0="http://trololo/111/event">1715065920077</dom0:SubscriptionId> <dom1:SubscriptionId wsa5:IsReferenceParameter="true" xmlns:dom0="http://trololo/222/event">1715065920078</dom0:SubscriptionId> <wsa5:MessageID>urn:uuid:654721e3-4c2e-45ec-a1f3-f581309c6428</wsa5:MessageID> <wsa5:To SOAP-ENV:mustUnderstand="true">http://127.0.0.1:8088/mockEventsBinding/1715065920077</wsa5:To> <wsa5:Action SOAP-ENV:mustUnderstand="true">http://docs.oasis-open.org/wsn/bw-2/SubscriptionManager/RenewRequest</wsa5:Action> </SOAP-ENV:Header> <SOAP-ENV:Body> <wsnt:Renew> <wsnt:TerminationTime>PT30S</wsnt:TerminationTime> </wsnt:Renew> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 所以我需要在标头中添加几个子项(dom0:SubscriptionId、dom1:SubscriptionId) gsoap生成了这样一个结构: struct SOAP_CMAC SOAP_ENV__Header { public: /** MustUnderstand */ struct _wsse__Security *wsse__Security; /** XML DOM element node graph */ struct soap_dom_element *__any; /** Optional element 'wsa5:MessageID' of XML schema type 'wsa5:MessageID' */ char *wsa5__MessageID; /** Optional element 'wsa5:RelatesTo' of XML schema type 'wsa5:RelatesTo' */ struct wsa5__RelatesToType *wsa5__RelatesTo; /** Optional element 'wsa5:From' of XML schema type 'wsa5:From' */ struct wsa5__EndpointReferenceType *wsa5__From; /** MustUnderstand */ struct wsa5__EndpointReferenceType *wsa5__ReplyTo; /** MustUnderstand */ struct wsa5__EndpointReferenceType *wsa5__FaultTo; /** MustUnderstand */ char *wsa5__To; /** MustUnderstand */ char *wsa5__Action; /** Optional element 'chan:ChannelInstance' of XML schema type 'chan:ChannelInstanceType' */ struct chan__ChannelInstanceType *chan__ChannelInstance; public: /** Return unique type id SOAP_TYPE_SOAP_ENV__Header */ long soap_type() const { return SOAP_TYPE_SOAP_ENV__Header; } /** Constructor with member initializations */ SOAP_ENV__Header() : wsse__Security(), __any(), wsa5__MessageID(), wsa5__RelatesTo(), wsa5__From(), wsa5__ReplyTo(), wsa5__FaultTo(), wsa5__To(), wsa5__Action(), chan__ChannelInstance() { } /** Friend allocator */ friend SOAP_FMAC1 SOAP_ENV__Header * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Header(struct soap*, int, const char*, const char*, size_t*); }; 我需要使用 struct soap_dom_element *__any; 添加我的孩子。 然而这是不可能的。我只能添加带有子节点的单个节点,例如: <SOAP-ENV:Header><parent><child1/><child2/></parent></SOAP-ENV:Header> 但无法添加没有父项的子项。 (虽然onvif协议要求) 所以我尝试将 elts 设置为 __any,结果我只序列化了第一个子元素。看起来像 gsoap 错误。 创建结构的方式: auto first = soap_elt_new(m_event_proxy.Get(), nullptr, "test1"); first->next = soap_elt_new(m_event_proxy.Get(), nullptr, "test2"); first->next->next = soap_elt_new(m_event_proxy.Get(), nullptr, "test3"); m_event_proxy.Get()->header->__any = first; 其中 m_event_proxy 是 SoapInitializer<PullPointSubscriptionBindingProxy> ; 好吧,诀窍是像这样创建一个父空节点并设置它的类型: m_parameter = soap_elt_new(m_soap, nullptr, nullptr); m_parameter->type = SOAP_TYPE__XML; 然后我们应该将节点添加为子节点: auto parameter1 = soap_elt_new(m_soap, nullptr, "test1"); soap_add_elt(m_parameter, parameter1); auto parameter2 = soap_elt_new(m_soap, nullptr, "test2"); soap_add_elt(m_parameter, parameter2); 宾果游戏

回答 1 投票 0

XSLT3 将 json 输出设置为不带键的字符串数组

我是xslt新手, 我有一个包含这些元素的 xml 第 1 行 &...

回答 1 投票 0

在 Android 启动屏幕上包含文本

我正在使用此网站上的这种流行方法来制作启动画面: 启动画面的正确方式。 我想显示翻译后的文本“正在加载”到不同的语言。这个问题很早就被问到了...

回答 2 投票 0

将KML导入MySQL

我有这个 KML 文件要插入 MySQL 表中: 我有这个 KML 文件要插入 MySQL 表中: <?xml version="1.0" encoding="utf-8" ?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document id="root_doc"> <Schema name="secc_cpv_e_20111101_01_r_ine" id="secc_cpv_e_20111101_01_r_ine"> <SimpleField name="Name" type="string"></SimpleField> </Schema> <Folder> <name>secc_cpv_e_20111101_01_r_ine</name> <Placemark> <name>5200101001</name> <Style> <LineStyle> <color>ff0000ff</color> </LineStyle> <PolyStyle> <fill>0</fill> </PolyStyle> </Style> <MultiGeometry> <Polygon> <outerBoundaryIs> <LinearRing> <coordinates>-2.93698273596522,35.2979346176443,0 -2.93697084790041,35.2979326186938,0 -2.93695877204193,35.297933090301,0 -2.93694953435202,35.2979385903615,0 -2.93694137509274,35.2979447898008,0 -2.93692885164904,35.297946595687,0 -2.93691871628878,35.2979409773216,0 -2.93691413103252,35.2979323321398,0 -2.93690399979109,35.2979270789636,0 -2.93689431492369,35.2979220514443,0 -2.93688289797324,35.2979224151838,0 -2.93687516563971,35.2979298005764,0 </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </MultiGeometry> </Placemark> </Folder> </Document> </kml> 当我启动PHP将KML插入MySQL时,只获取坐标的开头,不捕获所有数据;在坐标字段中记录 NULL: <?php $dom = new DOMDocument(); $dom->loadXML(file_get_contents('demo.kml')); foreach ($dom->getElementsByTagName('Folder') as $warehouse) { $warehouseName = $warehouse->getElementsByTagName('name')[0]->nodeValue; foreach ($warehouse->getElementsByTagName('Placemark') as $placemark) { $polygons = $placemark->getElementsByTagName('Polygon'); if ($polygons->length > 0) { $coordinates = $polygons[0]->getElementsByTagName('coordinates'); if ($coordinates->length > 0) { $zoneName = $placemark->getElementsByTagName('name')[0]->nodeValue; // $zoneDesc = $placemark->getElementsByTagName('description')[0]->nodeValue; $coordinates = explode("\n", $coordinates[0]->nodeValue); $coordinatesMysql = array(); foreach ($coordinates as $coordinate) { $coordinate = trim($coordinate); if (!empty($coordinate)) { list($lon, $lat, $elevation) = explode(",", trim($coordinate)); $coordinatesMysql[] = "$lat $lon"; } } echo 'insert into demozonas (name,polygon) values ' ."('$zoneName',ST_PolygonFromText('Polygon((" .implode(', ', $coordinatesMysql) ."))'));\n"; } } } } ?> 插入命令的结果是: insert into demozonas (name,polygon) values ('5200101001',ST_PolygonFromText('Polygon((35.2979346176443 -2.93698273596522))'));` 我尝试了另一个 KML 示例并有效,但我看不到我的 KML 文件中的错误在哪里,有人可以帮助我吗? 坐标值似乎是用空格而不是换行符分隔的。 Xpath可以简化代码,并且可以标准化坐标值。 $document = new DOMDocument(); $document->loadXML(getKMLString()); $xpath = new DOMXpath($document); // register prefix for namespace $xpath->registerNamespace('kml', 'http://www.opengis.net/kml/2.2'); $records = []; // iterate placemarks with polygon descendants foreach ($xpath->evaluate('//kml:Folder/kml:Placemark[count(.//kml:Polygon) > 0]') as $placemark) { // fetch the first polygon inside $placemark foreach ($xpath->evaluate('(//kml:Polygon)[1]', $placemark) as $polygon) { // fetch coordinates as string with all whitespaces normalized to single space characters $coordinates = parseCoordinates($xpath->evaluate('normalize-space(.//kml:coordinates)', $polygon)); $records[] = [ // fetch $placemakr name as string 'name' => trim($xpath->evaluate('string(kml:name)', $placemark)), // compile $coordinates array to Polygon((...)) 'polygon' => coordinatesToPolygon($coordinates), 'coordinates' => $coordinates, ]; } } var_dump($records); // parse coordinates into a nested array function parseCoordinates(string $coordinates) { return array_map( function($coordinate) { [$latitude, $longitude] = explode(',', $coordinate); return [$latitude, $longitude]; }, explode(' ', $coordinates) ); } function coordinatesToPolygon(array $coordinates) { return 'Polygon(('.implode( ', ', array_map(fn ($coordinate) => implode(' ', $coordinate), $coordinates) ).'))'; } function getKMLString() { return <<<'XML' <?xml version="1.0" encoding="utf-8" ?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document id="root_doc"> <Schema name="secc_cpv_e_20111101_01_r_ine" id="secc_cpv_e_20111101_01_r_ine"> <SimpleField name="Name" type="string"></SimpleField> </Schema> <Folder> <name>secc_cpv_e_20111101_01_r_ine</name> <Placemark> <name>5200101001</name> <Style> <LineStyle> <color>ff0000ff</color> </LineStyle> <PolyStyle> <fill>0</fill> </PolyStyle> </Style> <MultiGeometry> <Polygon> <outerBoundaryIs> <LinearRing> <coordinates>-2.93698273596522,35.2979346176443,0 -2.93697084790041,35.2979326186938,0 -2.93695877204193,35.297933090301,0 -2.93694953435202,35.2979385903615,0 -2.93694137509274,35.2979447898008,0 -2.93692885164904,35.297946595687,0 -2.93691871628878,35.2979409773216,0 -2.93691413103252,35.2979323321398,0 -2.93690399979109,35.2979270789636,0 -2.93689431492369,35.2979220514443,0 -2.93688289797324,35.2979224151838,0 -2.93687516563971,35.2979298005764,0 </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </MultiGeometry> </Placemark> </Folder> </Document> </kml> XML; } 输出: array(1) { [0]=> array(3) { ["name"]=> string(10) "5200101001" ["polygon"]=> string(439) "Polygon((-2.93698273596522 35.2979346176443, -2.93697084790041 35.2979326186938, -2.93695877204193 35.297933090301, -2.93694953435202 35.2979385903615, -2.93694137509274 35.2979447898008, -2.93692885164904 35.297946595687, -2.93691871628878 35.2979409773216, -2.93691413103252 35.2979323321398, -2.93690399979109 35.2979270789636, -2.93689431492369 35.2979220514443, -2.93688289797324 35.2979224151838, -2.93687516563971 35.2979298005764))" ["coordinates"]=> array(12) { [0]=> array(2) { [0]=> string(17) "-2.93698273596522" [1]=> string(16) "35.2979346176443" } [1]=> array(2) { [0]=> string(17) "-2.93697084790041" [1]=> string(16) "35.2979326186938" } [2]=> array(2) { [0]=> string(17) "-2.93695877204193" [1]=> string(15) "35.297933090301" } [3]=> array(2) { [0]=> string(17) "-2.93694953435202" [1]=> string(16) "35.2979385903615" } [4]=> array(2) { [0]=> string(17) "-2.93694137509274" [1]=> string(16) "35.2979447898008" } [5]=> array(2) { [0]=> string(17) "-2.93692885164904" [1]=> string(15) "35.297946595687" } [6]=> array(2) { [0]=> string(17) "-2.93691871628878" [1]=> string(16) "35.2979409773216" } [7]=> array(2) { [0]=> string(17) "-2.93691413103252" [1]=> string(16) "35.2979323321398" } [8]=> array(2) { [0]=> string(17) "-2.93690399979109" [1]=> string(16) "35.2979270789636" } [9]=> array(2) { [0]=> string(17) "-2.93689431492369" [1]=> string(16) "35.2979220514443" } [10]=> array(2) { [0]=> string(17) "-2.93688289797324" [1]=> string(16) "35.2979224151838" } [11]=> array(2) { [0]=> string(17) "-2.93687516563971" [1]=> string(16) "35.2979298005764" } } } }

回答 1 投票 0

如何对具有两个不同字典 xml 路径的 XML 文件进行 XSL 转换并将其转换为一个词典

XML 文件,其中包含两个字典的路径和徽标的路径。该词典包含 10 个单词,每个单词一个英语单词,一个瑞典语单词。 XML 文件,其中包含两个词典的路径和徽标的路径。这些词典包含 10 个单词,每个英语单词和一个瑞典语单词。 <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="lexikon.xsl"?> <lexicon> <wordlist1>xml_english.xml</wordlist1> <wordlist2>xml_swedish.xml</wordlist2> <editor>Simon Bale</editor> <logo>logo.svg</logo> </lexicon> XML 英语词典 <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet href="xml_style.css"?> <wordlist> <language>English</language> <author>David Cahill</author> <words> <word>night</word> <word>day</word> <word>water</word> <word>car</word> <word>sun</word> <word>sky</word> <word>city</word> <word>house</word> <word>cat</word> <word>rain</word> </words> </wordlist> XSL 文件 <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/TR/xhtml1/strict" > <xsl:output method="xml" indent="yes" encoding="iso-8859-1" /> <xsl:template match="/"> <html> <head> <title>Lexicon</title> <link rel="stylesheet" type="text/css" href="xhtml_style.css"/> </head> <body> <image src="logo.svg" alt="Logo"/> <h1><xsl:value-of select="/wordlist/language"/> </h1> <h2><xsl:value-of select="/wordlist/author"/> </h2> <ul> <!--en lista--> <xsl:for-each select="/wordlist/words/word"> <li> <xsl:value-of select="."/> </li> </xsl:for-each> </ul> </body> </html> </xsl:template> </xsl:stylesheet> 我想将包含徽标和字典路径的 XML 文件转换为词典。但我陷入困境,不确定我做得是否正确。 <!-- transform.xsl --> <!-- Define variables to hold the documents --> <xsl:variable name="doc1" select="document('xml_english.xml')"/> <xsl:variable name="doc2" select="document('xml_swedish.xml')"/> <!-- Main template to process the merged documents --> <xsl:template match="/"> <output> <!-- Process content from doc1 --> <xsl:apply-templates select="$doc1/root/*"/> <!-- Process content from doc2 --> <xsl:apply-templates select="$doc2/root/*"/> </output> </xsl:template> <!-- Template to process nodes from doc1 --> <xsl:template match="data"> <!-- Customize processing as needed --> <processedData1> <xsl:value-of select="."/> </processedData1> </xsl:template> <!-- Template to process nodes from doc2 --> <xsl:template match="data"> <!-- Customize processing as needed --> <processedData2> <xsl:value-of select="."/> </processedData2> </xsl:template>

回答 1 投票 0

WCF 对于一个非常简单的应用程序返回 400 错误

我创建了一个非常简单的 WCF 应用程序,除了返回您输入的输入值之外什么也不做。 当在本地 IIS 中托管此应用程序时,我得到了响应,没有任何问题。 然而,当

回答 1 投票 0

使用 Jackson 反序列化 XML 列表时出现 MismatchedInputException

我在反序列化某些包含对象列表的 XMl 时遇到问题。 为了重现它,我首先将给定对象序列化为 XML,然后尝试反序列化结果,但失败了。 这是我的样本...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.