长话短说:我想知道如何使用XSD中的key/keyref让元素互相引用.它必须有一个示例的形式,使用简单的xsd和XML.
长话:我熟悉ID/IDREF的用法.我用它来连接JAXB的元素.我一再被告知,XSD中的key/keyref构造为元素间引用提供了增强的灵活性.我已经查阅了OReilly XML Schema一书,它似乎教会了关于key/keyref的正确定义以及它与ID/IDREF(但更好)类似的一切,并没有给出一个简单的使用示例.它似乎并不相似,因为您将ID定义为一个元素中的属性,将IDREF定义为另一个元素中的ID.但是key/keyref必须在引用和引用元素(AFAIK)的共同祖先中定义...
我使用XSD文件使用XJC生成JAXB绑定的Java类
我搜索了how-to,教程和示例,但谷歌给了我一些废话.同样适用于搜索SO(也使用谷歌和包含搜索的'+').
为了让每个人的生活更轻松,我准备了一个已经定义的密钥/密钥对的XSD,正如我所理解的那样.
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element name="referenced">
<xs:complexType>
<xs:attribute name="id" type="xs:string" />
</xs:complexType>
</xs:element>
<xs:element name="owner">
<xs:complexType>
<xs:attribute name="id" type="xs:string" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:key name="aKey">
<xs:selector xpath="owner" />
<xs:field xpath="@id" />
</xs:key>
<xs:keyref name="aKeyRef" refer="aKey">
<xs:selector xpath="referenced" />
<xs:field xpath="@id" />
</xs:keyref>
</xs:element>
Run Code Online (Sandbox Code Playgroud)
一个XML如何看起来像一个'owner'元素引用'引用'元素?
编辑:应用Tom W提议的更改,将关键元素的xpath属性更改为"owner".JAXB(XJC)仍然不在乎.
谢谢
我使用SQL Server 2005并有以下问题:
在a上table A,我有一个跟踪任何插入/更新/删除的触发器.跟踪的记录将插入审计表(aAudit)中.当我运行更新时A,我在审计表中看到每个更新的两行,这不是我所期望的.这是我定义的触发器:
ALTER TRIGGER [ATrigger] ON [dbo].[A]
FOR INSERT, UPDATE, DELETE
AS
INSERT INTO [dbo].[aAudit]
([BusinessDate], [DataTypeId], [BookId], [Version], [DelFlag], [AuditDate], [ExtStatus])
SELECT [BusinessDate], [DataTypeId], [BookId], [Version], 'N', getDate(), 0
FROM inserted
INSERT INTO [dbo].[aAudit]
([BusinessDate], [DataTypeId], [BookId], [Version], [DelFlag], [AuditDate], [ExtStatus])
SELECT [BusinessDate], [DataTypeId], [BookId], [Version], 'Y', getDate(), 0
FROM deleted
Run Code Online (Sandbox Code Playgroud)
为什么上面的触发器在审计表中导致一行DelFlag = 'Y'和一行DelFalg = 'N'?
谢谢你看看我的问题.
维克拉姆
我正在寻找一种通过Powershell在Windows资源管理器的"文件夹选项"对话框中配置几个选项的方法.
选项是:
在使用此代码(从此处改编)时,我收到以下错误:
构造函数ArrayAdapter(new AdapterView.OnItemSelectedListener(){},int,String [])未定义
有人可以帮忙纠正这个吗?谢谢
private void setDynamicSpinnerBE() {
beSpinner = (Spinner) findViewById(R.id.spBE);
final String[] itemsSpinner2;
lensSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Integer focalLength = (Integer) parent.getAdapter().getItem(
position);
itemsSpinner2 = getBellowsExtension(focalLength, maxBellows,
precision);
ArrayAdapter<CharSequence> beAdapter = new ArrayAdapter<CharSequence>(
this, android.R.layout.simple_spinner_item,
itemsSpinner2);
beAdapter
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
beSpinner.setAdapter(beAdapter);
}
public void onNothingSelected(AdapterView<?> parent) {
beSpinner.setAdapter(null);
}
}
);
...
}
Run Code Online (Sandbox Code Playgroud) 我想知道,处理内存不足错误的好方法是什么.
void SomeTask()
{
try
{
SomeObj obj = new SomeObj();
}
catch( std::bad_alloc& )
{
// What should be done here?
}
// ... more code ...
}
Run Code Online (Sandbox Code Playgroud)
我觉得默默地返回是错误的,因为程序可能在不确定的状态下运行.那么,这里应该发生什么,我应该让程序崩溃,还是有更好的选择呢?该程序作为服务运行,因此我不能只弹出错误消息.我想如果有足够的内存可以记录一些东西可能是可能的.但是,我只是想知道,在这种情况下你认为我该怎么做?
谢谢.
是否可以使用jQuery数据方法设置一些数据,然后再查询它?像...找到数据foo == true的所有元素?
我正在努力审查我的决赛,我正在讨论我的教授给我的例子问题.任何人都可以向我解释漏斗如何工作的概念.这也是我的教授给我的关于泄漏水桶的评论问题.
漏桶位于主机网络接口.网络中的数据速率为2 Mbyte/s,从应用到数据桶的数据速率为2m5 Mbyte/s
A.)假设主机有250兆字节发送到网络并且它在一个突发中发送数据.为了没有数据丢失,存储桶的最小容量(以字节为单位)应该是多少?
B.)假设桶的容量是100M字节.为了没有数据丢失,主机的最长突发时间是多少?
假设我有一个类F应该是类G(在全局命名空间中)和C(在命名空间中A)的朋友.
A::C,F必须向前宣布.G,没有F必要的前瞻性声明.A::BF可以成为朋友而A::C无需前瞻性声明下面的代码说明了这一点,并使用GCC 4.5,VC++ 10以及至少与另一个编译器进行编译.
class G {
friend class F;
int g;
};
// without this forward declaration, F can't be friend to A::C
class F;
namespace A {
class C {
friend class ::F;
friend class BF;
int c;
};
class BF {
public:
BF() { c.c = 2; }
private:
C c;
};
} // …Run Code Online (Sandbox Code Playgroud) 我有2个下拉列表,我想这样做,当有人从dropdown1中选择例如值2时,dropdown2自动更改为值2.这是否可以使用jquery?
<select id="dropdown1">
<option value="1">Item1</option>
<option value="2">Item2</option>
<option value="3">Item3</option>
</select>
<select id="dropdown2">
<option value="1">Item1</option>
<option value="2">Item2</option>
<option value="3">Item3</option>
</select>
Run Code Online (Sandbox Code Playgroud) c++ ×2
jquery ×2
sql ×2
android ×1
bucket ×1
dynamic ×1
friend ×1
java ×1
javascript ×1
jaxb ×1
memory ×1
mysql ×1
namespaces ×1
ordinals ×1
powershell ×1
reference ×1
registry ×1
schema ×1
select ×1
spinner ×1
sql-server ×1
sql-update ×1
triggers ×1
xml ×1
xsd ×1