小编Ale*_*äll的帖子

验证XSD架构?

我正在编写一个XML模式(XSD)来描述我们的合作伙伴应该向我们发送数据的格式.

而且我很难找到可以验证我编写的XSD架构文件的工具.

到目前为止,我发现的最好的方法是首先编写一个示例输入XML文件,然后尝试使用XSD 验证.但这并不是一种最佳操作策略.

那么,我该如何验证XML模式呢?

xml validation xsd

33
推荐指数
3
解决办法
4万
查看次数

开发成本与维护成本

我试图向我们的销售部门解释开发与维护成本的比例,目前我的主要感觉是我们花费了大约60%的时间进行维护.

我们团队中有些人倾向于销售我们必须建立的定制解决方案,如果销售人员不了解开发的总成本,那么他们将无法以实际价格出售.

另一个"问题"是我们正在扩展我们的服务,并且需要重构一些底层基础设施,以缩短上市时间和其他测量点.

为了建立一个可靠的论点,你对我应该参考什么有什么好的建议吗?为了让他们对问题有一个很好的理解,我应该提出哪些要点?

也许在某些地方我可以指出一些很棒的文字.

maintenance

33
推荐指数
3
解决办法
4万
查看次数

在xml架构中同时具有属性和限制

我正在尝试编写一个xml架构来验证这段xml:

<date isodate="2007-03-14">14 march 2007</date>
Run Code Online (Sandbox Code Playgroud)

属性isodate应将其类型设置为xs:date,内容最长应为50个字符.

我想知道是否可以在一个块中编写xml架构定义,可能是这样的:

<xs:element name="date" minOccurs="0" maxOccurs="1">  
  <xs:complexType>  
    <xs:simpleContent>  
      <xs:restriction base="xs:string">  
        <xs:minLength value="0"/>  
        <xs:maxLength value="50"/>  
      </xs:restriction>  
      <xs:attribute name="isodate" type="xs:date" use="required"/>  
    </xs:simpleContent>  
  </xs:complexType>  
</xs:element>
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用,我无法弄清楚原因.我找到的唯一解决方法是将限制部分分解为单独的类型,并链接如下:

<xs:simpleType name="reviewDate">  
    <xs:restriction base="xs:string">  
        <xs:minLength value="0"/>  
        <xs:maxLength value="50"/>  
    </xs:restriction>  
</xs:simpleType>

<xs:element name="date" minOccurs="0" maxOccurs="1">  
    <xs:complexType>  
        <xs:simpleContent>  
            <xs:extension base="reviewDate">  
                <xs:attribute name="isodate" type="xs:date" use="required"/>  
            </xs:extension>  
        </xs:simpleContent>  
    </xs:complexType>  
</xs:element>
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在一个块中编写定义,以便模式更具可读性,并且不会在模式的其他部分引用类型.

xsd

23
推荐指数
1
解决办法
1万
查看次数

cmake链接libboost_python-py32.so而不是libboost_python.so

我正在尝试为我编写的库构建python绑定,并且我很难让cmake明白它应该使用boost-python库来实现python 3.

这是我的cmake文件:

cmake_minimum_required(VERSION 2.8)

FIND_PACKAGE(Boost COMPONENTS
                system
                thread
                python REQUIRED)
find_package(PythonLibs REQUIRED)

INCLUDE_DIRECTORIES(${PYTHON_LIBRARIES})
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})

ADD_LIBRARY(
  pschulze SHARED
  src/candidate_relation.cpp
  src/schulze.cpp
  src/calculate.cpp
  src/candidate.cpp
  src/ranking.cpp
  src/userinput.cpp
  python.cpp)

TARGET_LINK_LIBRARIES(pschulze ${Boost_LIBRARIES} ${PYTHON_LIBRARIES})

ADD_EXECUTABLE(
  schulze
  src/candidate_relation.cpp
  src/schulze.cpp
  src/calculate.cpp
  src/candidate.cpp
  src/ranking.cpp
  src/userinput.cpp
  src/json-spirit/json_spirit_reader.cpp
  src/json-spirit/json_spirit_value.cpp
  main.cpp)

TARGET_LINK_LIBRARIES(schulze ${Boost_LIBRARIES} ${PYTHON_LIBRARIES})

ADD_DEFINITIONS(-std=gnu++0x -Os)

add_subdirectory (tests)

set(CMAKE_BUILD_TYPE Debug)
Run Code Online (Sandbox Code Playgroud)

这是我得到的链接器错误:

Linking CXX executable schulze
CMakeFiles/schulze.dir/src/schulze.cpp.o: In function `arg_to_python':
/usr/include/boost/python/converter/builtin_converters.hpp:122: undefined reference to `PyInt_FromLong'
/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../lib/libboost_python.so: undefined reference to `PyString_Size'
Run Code Online (Sandbox Code Playgroud)

c++ python boost cmake

8
推荐指数
1
解决办法
2299
查看次数

在WiX中使用防火墙扩展

我正在尝试编写一个使用防火墙扩展到WiX的WiX脚本,它似乎没有找到扩展dll(我认为).

我看到的错误是这样的:

File元素包含未处理的扩展元素'fire:FirewallException'.
请确保已提供"http://schemas.microsoft.com/wix/FirewallExtension"命名空间中元素的扩展名.

我的WiX源的相关部分是这样的:

<?xml version="1.0" encoding="windows-1252"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
     xmlns:fire="http://schemas.microsoft.com/wix/FirewallExtension">
 <Component Id="Firewall" Guid="7278f07d-de6f-497f-9267-d5feb5216a5c" Directory="NotUsed">
  <File KeyPath="yes" Source="C:\Program Files\Java\jdk1.6.0_32\bin\java.exe">
   <fire:FirewallException Id="FWX1" Name="My Program" Port="80" Protocol="tcp"/>

如果我尝试使用regsrv32注册WixFirewallExtension.dll文件,我会收到此错误:

已加载模块C:\ Program Files(x86)\ Windows Installer XML v3.5\bin\WixFirewallExtension.dll,但未找到入口点DllRegisterServer.

确保C:\ Program Files(x86)\ Windows Installer XML v3.5\bin\WixFirewallExtension.dll是有效的DLL或OCX文件,然后再试一次

dll文件在我的路径中,但这可能无关紧要?我是否需要做任何其他事情才能让WiX开始使用它?

windows wix wix-extension

7
推荐指数
1
解决办法
5937
查看次数

连接到oracle数据库时显式选择jdbc驱动程序

我正在研究一些有时需要连接到oracle 8.1.7数据库的软件,有时需要连接到oracle 10g数据库才能执行一些查询.

连接到8.1.7数据库时,我需要使用ojdbc14.jar驱动程序和10g数据库的ojdbc6.jar驱动程序.

当这两个驱动程序都在类路径中时,似乎自动驱动程序选择不够智能,无法选择正确的驱动程序,有什么方法可以指定我的代码中哪一个是首选的?

我目前没有使用任何连接池或类似的抽象,但如果需要引入类似的东西也不会有问题.

java jdbc oracle10g oracle8i

5
推荐指数
1
解决办法
1127
查看次数

当 webpack 加载 wasm 模块内存时,如何访问它

我正在努力追随

如何在 WebAssembly 中从 Rust 返回字符串(或类似的字符串)?

它允许访问 wasm 模块内的字符串数据。

我曾经wasm-pack build构建过 RUST 模块,我可以访问导出的方法,但不能直接访问内存。

webpack 生成的 JavScript 有一个方法可以让我读取字符串

function getStringFromWasm(ptr, len) {
    return cachedTextDecoder.decode(getUint8Memory().subarray(ptr, ptr + len));
}
Run Code Online (Sandbox Code Playgroud)

但如果我将这个生成的 .js 文件破解为

export function getStringFromWasm(ptr, len)
Run Code Online (Sandbox Code Playgroud)

我可以访问 RUST 代码返回的字符串。

如何配置 webpack 代码生成器以提供类似的访问权限,或者以其他方式公开模块的exports.memory

Webpack 似乎没有给我模块本身的处理。.wasm我找不到加载webpack 生成的文件的方法WebAssembly.instantiateStreaming(),因为它似乎依赖于其他生成的文件。

webpack webpack-dev-server wasm-bindgen

5
推荐指数
0
解决办法
353
查看次数