簡體   English   中英

XSL在xml中定義

[英]xsl defining in xml

我在movies.xml中的前幾行如下:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="movies_style.xsl"?>
<movies 
    xmlns="http://www.w3schools.com" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.w3schools.com file:///B:/USC/Academic/DBMS/HWS/no3/movie_sch.xsd">

movie_style.xsl中的前幾行如下:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:fo="http://www.w3.org/1999/XSL/Format">

問題是,如果從movies.xml文件中刪除鏈接的模式文件,並且僅將標記保留為<movies>則正確的樣式表將顯示為輸出,否則瀏覽器中將不顯示任何內容,並且控制台中將顯示錯誤,如下所示:

“不安全嘗試從帶有URL文件:/// B:/ USC / Academic / DBMS / HWS / no3 / movies的框架中加載URL文件:/// B:/USC/Academic/DBMS/HWS/no3/movies_style.xsl .xml。域,協議和端口必須匹配。”

看起來有些命名空間錯誤。 誰能指出到底是什么?

問題似乎是該架構文件不可從Web訪問。 它位於B:驅動器上,使用文件訪問:但是XML和XSL可能使用http:訪問,並且出於安全方面的考慮,瀏覽器(假設您正在使用瀏覽器進行查看)將不會使用文件加載: 嘗試重定位模式文件,以便可以使用HTTP加載它。

將targetnamespace指定為w3schools.org。 那不應該在那里。 那就是問題所在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM